here are some of the commands to run the project locally
the application flow is explained in this blog post
- node >= 8.11.3
- yarn >= 1.7.0
- on a mac
brew install yarn --without-node
- on a mac
- PostgreSQL >=9.6
- create a clean a-count database
- postgresapp on a mac
- postico to visualize
- Redis >= 3.2.0
- on a mac
brew install redis
→redis-server
to start
- on a mac
- SMTP server
- like mailcatcher
on a macbrew install ruby
→ restart terminal →gem install mailcatcher
→mailcatcher
to start - or MailDev
- like mailcatcher
- server – Koa 2 for having a cleaner use of
async/await
in comparison to express.js - database querying
- Sequelize 4 for the main parts
- Squel for handling SQL queries creation when the sequelize API can't get it (mostly
COUNT
&SUM
queries)
- views – Vue 2
- router – Vue router
- application state – Vuex
- server – Koa 2
{
"react-router": "4.3.1",
"react-router-config": "1.0.0-beta.4"
}
- views – React 16
- router
- React router 4
- react-router-config 1 for the universal support
- application state
- redux 4
- redux thunk for a better handling of asynchronous actions
- react redux for a better integration with React
- server – Koa 2
- build tools & testing
yarn install
yarn build && yarn start
yarn dev
add some debug (with node debuglog):
NODE_DEBUG=api,api:db,server yarn dev
available:
- api
- api:redis
- api:db
- api:db:query
- api:mailing
- server
For the API:
yarn workspace acount-api dev
For the Vue web-app:
yarn workspace acount-nuxt dev
For the React web-app:
yarn workspace acount-react dev
all workspace implements test
yarn workspace acount-api test
yarn workspace acount-nuxt test
yarn workspace acount-react test
running a single test
yarn test shared/ui/field.spec.js