Node + Stripe
This is a template for you to use on your own projects for processing one-time Stripe charges. Follow the directions below to get started.
Looking for a simple example? Node Stripe Example
The back-end API includes:
- User auth
- Stripe integration
- Testing via Mocha and Chai as well as Istanbul for code coverage
Quick Start
- Fork/Clone
- Install dependencies -
npm install
- Rename the .env_sample file to .env and update
- Create two local Postgres databases -
node_stripe_charge
andnode_stripe_charge_test
- Migrate -
knex migrate:latest --env development
- Seed -
knex seed:run --env development
- Run the development server -
gulp
- Server should be listening on http://localhost:3000
Development Workflow
- Create feature branch
- Develop/test locally
- Create PR, which triggers Travis CI
- After tests pass, merge the PR
- Tests run again on Travis CI
Tests
Without code coverage:
$ npm test
With code coverage:
$ npm run coverage
Changelog
- 04/15/2018 - updated dependencies, added bootstrap 4, increased test coverage
- 11/14/2016 - refactored all code, updated to es6, moved to postgres from mongo, added tests
- 02/09/2016 - refactored passport, tests, error handlers, client-side javascript (view commit)
- 04/23/2015 - major refactor
- 03/11/2015 - updated to Express 4.x
JSON API Documentation
Admin required for all routes!
Users
- GET
/api/v1/users
- get all users - GET
/api/v1/users/:id
- get user - POST
/api/v1/users
- create user - PUT
/api/v1/users/:id
- update user - DELETE
/api/v1/users/:id
- delete user
Products
- GET
/products
- get all products - GET
/products/:id
- get products - POST
/products
- create products - PUT
/products/:id
- update products - DELETE
/products/:id
- delete products