LokIM is NodeJS & React based Instant Messanger.
- NodeJS 10.13 or newer
- Clone a repository with
git clone <repository URL>
- Run
npm ci
inside root directory of repository - Run
gulp prepare
- Fill
/src/server/config.json
or set appropiate environmental variables. - Run
gulp start
- Clone a repository with
git clone <repository URL>
- Run
npm ci
inside root directory of repository - Run
gulp prepareDev
- Fill
/src/server/config.json
or set appropiate environmental variables. - Run
gulp start
DB_USERNAME
MongoDB UsernameDB_PASSWORD
MongoDB PasswordDB_HOSTNAME
MongoDB Hostname
- For unit and integration tests on backend run
gulp serverTest
- For unit and integration tests on frontend run
gulp frontEndTest
- In order to collect server test coverage, run
gulp serverTestCoverage
- In order to collect frontend test coverage, run
gulp frontEndTestCoverage
- For E2E tests run
gulp start
and thengulp testCypress
- Run
gulp eslint
to lint the whole project. - Run
gulp eslintAutoFix
to automatically fix trivial linting errors.
- Run
gulp generateDocs
to generate endpoints documentation inside the project.
- Database
- MongoDB
- Backend
- Express
- Winston
- Mongoose
- Passport
- Dev tools
- Mocha
- Chai
- Node HTTP Mocks
- Sinon
- Frontend
- React
- Redux
- Redux Sagas
- Dev tools
- Jest
- Enzyme
- Sinon
- Dev tools
- Eslint
- Cypress
- Gulp
- Microsoft Windows (tested on 7, 10)
- Linux (tested on Manjaro 18.0.4, Arch 5.0.7, Debian Stretch)
- MacOS (tested on 10.14.3)