Node Stripe Membership SaaS
This project using a boilerplate express app for creating a membership/subscription site with Stripe, mongodb and pug. Inspired by sahat/hackathon-starter and RailsApps/rails-stripe-membership-saas. It also handles stripe webhooks.
Check out the demo!
Running Locally
Make sure you have Node.js and the Heroku CLI installed.
$ git clone git@github.com:heroku/node-js-getting-started.git # or clone your own fork
$ cd node-js-getting-started
$ npm install
$ npm start
System Requirements
- mongodb
- nodejs
Your app should now be running on localhost:3000.
Getting Started
First update /server/config/secrets.js
with the following credentials:
- Stripe API keys and plan info
- Mailgun for sending forgot/reset password confirmations.
- session secret (you can use a long random string)
- google analytics id
Install dependencies with npm install
.
Start the server with node server
.
Note: Stripe webhooks can be recieved at https://your-url.com/stripe/events
.
https://stripe.com/docs/subscriptions/quickstart https://stripe.com/docs/testing
create .env file for storing information
install dotenv package: npm install dotenv --save
Deploying to Heroku
$ heroku create
$ git push heroku master
$ heroku open
or
Documentation
For more information about using Node.js on Heroku, see these Dev Center articles:
- Getting Started with Node.js on Heroku
- Heroku Node.js Support
- Node.js on Heroku
- Best Practices for Node.js Development
- Using WebSockets on Heroku with Node.js
Heroku Deployment
heroku create your-awesome-saas-product
heroku addons:add mlab
heroku config:set SESSION_SECRET='your_secret';
heroku config:set STRIPE_TEST_KEY='sk_test_example'
heroku config:set STRIPE_TEST_PUB_KEY='pk_test_example'
heroku config:set MAILGUN_USER='example.org'
heroku config:set MAILGUN_PASSWORD='key-secret'
heroku config:set GOOGLE_ANALYTICS='UA-XXXXXX-1'
heroku config:set MONGODB_URI='mongodb://heroku_pl3qcvnq'
Want add a heroku deploy button? Pull requests welcome :]