Core Server of Integralclick

Introduction

In this readme will belong all the project introduction for contribution, installation and purposes of this project.

API Docs

Go to the API Documentation by Postman

Installation

Just fork/clone this project in your local machine and then run: bash $ npm i

By defaul there's a config folder with some yaml files which indicates if you are running on production or development mode, neverworthless there's a out of the box feature with DotEnv that you can use for production more securely or even better if you use the own server's environment variables. You only have to create a new .env in the root of the project and then use the example.env as template your new environment variables.

... |- config |- default.yml |- production.yml |- development.yml ... |- example.env ...

Development

For running development mode you will have a benefit, with the following comand that it will hear your changes in realtime with the one command as well will build the documentation at the same time:

```bash $ npm run start:dev

or

$ yarn start:dev # for yarn ```

Build

If you make changes in the project it is required to run build command for building it. If you would like to automatically build then just use Development Mode since it would not just build the code, but will also hear in real-time the changes you make.

For building run: ```bash npm run build

or

yarn build # for yarn ```

Production

Then if you want to run into production you can simply run:

```bash $ npm run start:prod

or

$ yarn start:prod # if you want to use yarn instead of npm of course. ```

Please note that Production would not build the project just run dist/main.js for For build click here

Build Documentation

Documentation is one of the more important steps we have to do in this project so please remember to document every annotation, function, class or whatever inside this project to maintain our team notificated and well informed. For building the documentation you can use as default method the development mode since it will generate the documentation in the first command however everytime make sure you manually build it with:

```bash npm run build:doc

or

yarn build:doc # for yarn ```

Contribution

This project is under licence PROPIETARY and you will need to be allowed to modify / improve this work with belong of our company, code conduct instruction will be provided in short future as well as the proper code documentation, api documentation and all the necesary tools to work with us.

Feature list

Update 2019/07/8 at v0.2-alpha

  • Module Auth Created, SignIn & SignUp User with JWT implementation.
  • JWT with Passport Strategy implemented
  • Decorator for User JWT Payload uncoding.
  • DTO & Interfaces for custom response format
  • Interceptor loggin for getting output from requests
  • Pipes Module created for ObjectID format validation, Validation.
  • Schema and DB Model for Users
  • Use of useGlobalPipes in bootstrap
  • Bug Fixes.

TODO's

  • Environment Variables for Production / Development Mode.
  • Documentation with Compodoc
  • Authentication strategy with JWT and Local
  • Database setup
  • Consent Registry Schema for RGPD
  • Email Integration for Double Opt-In on Registration and Password Recovery.
  • Continuous Integration Testing
  • Architecture for Modules / Common Utils / Custom Libraries / ETC.
  • Links to the API Documentation

Changelog

Please check out the tag section.

result-matching ""

    No results matching ""