Your minimal yet powerful open source solution to crowd fund your ideas. Open crowd fund is an alternative to all the enterprise crowdfunding platforms and applications. You can do it yourself. Take control over your project fundings, stay flexible by creating the content yourself, and minimize the fees by cutting out the middlemen. Everything you need is to host it yourself.
Powered by Gatsby
git clone [email protected]:rwieruch/open-crowd-fund.git
cd open-crowd-fund
npm install
gatsby develop
The client-side project is this project. You just need to provide your configurational information for it and fill in your own content to crowd fund your idea (read Customize). In addition, you need to provide the following things in this project:
There are two external services that are used: a firebase database and a stripe payment server.
First, Firebase is needed to store the funding information (e.g. who funded you with how much fundings). Firebase is an external service and doesn't need to be hosted by yourself.
Second, the payment server is not included in this repository. There is another GitHub repository where you could simply clone partly the payment server. On the other hand, you could follow the provided tutorial to build your own minimal payment server from scratch. Here you get all the instructions on how to setup your payment server.
{
"rules": {
".read": true,
".write": true
}
}
That's it for Firebase! You are now able to track your fundings and display your progress in the application.
Furthermore, you will need a Stripe payment server where you can receive your fundings. The payment server is not included in this repository. Please use the following tutorial to setup a small payment server with Stripe. As alternative, feel free to use the payment server from this repository. It is located in the backend folder. But make sure to read the tutorial once to understand what's happening in the payment flow.
Create a Stripe Account (free)
Client-side Application: add your public Stripe API keys in .env.development and .env.production
Client-side Application: add your payment server URL in .env.development and .env.production
start your payment server on the command line
modify funding configuration in src/configuration.js
modify funding content in src/Content.js
optional: use an own favion in static/favicon (e.g. use https://realfavicongenerator.net/)
optional: add, remove or modify meta tags in src/layouts/index.js
optional: add, remove or modify global style in src/layouts/index.js
optional: add, remove or modify assets, such as images, in static/
optional: add, remove or modify gatsby plugins in gatsby-config.js
You can contribute to the project. Contributing in three steps:
git clone https://github.com/rwieruch/react-express-stripe
cd backend
npm install
node index.js
Follow further installation instructions for the payment server to provide the necessary configuration (e.g. Stripe API keys).
git clone [email protected]:rwieruch/open-crowd-fund.git
cd open-crowd-fund
npm install
gatsby develop
Follow further installation instructions from this README to provide the necessary configuration.
npm run format