React Node starterkit
Fullstack web application starter kit written in react and node.js with the following features:
- Authentication: register, login
- Authorization: scheme using user, group and permission
- Scalable by using a micro services based architecture, a.k.a message queues
- Relational database: postgres, mysql, sqlite, mssql etc, ...
- Logging
Technologies:
- React: a facebook library to build user interfaces.
- Material ui: a CSS framework and a set of react components that implement google's material design.
- Express: fast, unopinionated, minimalist web framework for Node.js.
- Socket.io: real-time bidirectional event-based communication.
- Sequelize: Object Relationship Management (ORM) supporting majors relational SQL database.
- PostgreSQL: the world's most advanced open source
- RabbitMq: messaging system.
- Passport: authentication framework with more than 140 authentication strategies: username/password, facebook , google, github etc ...
- Winston: a multi-transport async logging library.
- Bower: a package manager for the web.
- Gulp: automate and enhance your workflow.
- Grunt: the javascript task runner.
- Webpack: module bundler for the browser
- Mocha: test framework.
- Sinon: test spies, stubs and mocks.
- Travis: Test and deploy.
- Drone.io : Continuous integration
- Semaphore : Continuous integration
- CodeClimate: Automated code review
- Coveralls:
#Workflow
To install all the dependencies:
# npm install
To test the backend:
# npm test
It will not only test the code, but also check the source code with jshint and generate a code coverage report located at coverage/lcov-report/index.html
To run the webserver:
# npm start