README.md

July 27, 2016 ยท View on GitHub

Notes management application built with React and Redux.

Try the demo at do.1ven.me. Username - test, Password - 123456.

preview

Stack:

PackageDescription
reactAwesome JavaScript library for building ui
reduxPredictable state container for JavaScript apps
react-routerRouting library for React
redux-sagaAn alternative side effect model for Redux apps
normalizrNormalizes nested JSON according to a schema
reselectSelector library for Redux
redux-devtoolsDevTools for Redux library
babelCompiler for writing next generation JavaScript
webpackModule bundler

Installation:

  1. This application requires postgresql database. To install it, go to this link.
  2. After, you need install all dependencies using this command:
npm install
  1. Next, you should create config .env.develop and .env.production files:
DATABASE_URL='Place here postgres connection string like `postgres://user:password@localhost:5432/database_name`'
JWT_SECRET='Place here jwt secret string. Can be used any long string'
NODE_ENV='Should be `development` or `production` according to environment'
PORT=3000

If you want to run tests, also you need to define .env.test file.

  1. Before running application, you should run postgresql database. In most cases it should be:
postgres -D /usr/local/var/postgres
  1. Next, you can run application:

In development mode:

npm run development

In production mode:

npm run production

Npm commands:

CommandDescription
npm installInstall project dependencies and build client js file
npm run developmentRun server with webpack in development mode
npm run productionRun server in production mode
npm run bundleBuild client javascript file for production
npm run deployDeploy app to heroku
npm run testsRun client and server tests
npm run tests-clientRun client tests
npm run tests-serverRun server tests

Todo

  • Implement drag and drop for Boards, Lists and Cards.