A progressive Node.js framework for building efficient and scalable server-side applications.
Description
Online Quiz-API - backend starter package
- July 25, 2021
Used Tech's
- Nest JS
- MongoDb
- JWT
- Bcrypt
- Class Validators
- Swagger Api Docs
- Faker
- EsLint
- Prettier etc
Installation
Linux:
$ sudo apt install redis-server
Windows:
$ https://github.com/microsoftarchive/redis/releases
Package:
$ yarn install
or
$ npm i
Before Running the app #1
# run seeder
$ yarn seeder:dev
or
$ npm run seeder:dev
# production mode
$ yarn seeder:prod
or
$ npm run seeder:prod
Before Running the app #2 (To Generate Fake Data)
# run faker
$ yarn faker:dev
or
$ npm run faker:dev
# production mode
$ yarn faker:prod
or
$ npm run faker:prod
Running the app
# development mode
$ yarn start:dev
or
$ npm run start:dev
# production mode
$ yarn start:prod
or
$ npm run start:prod
Users
# test setter
user: mma.rifat66@gmail.com
password: 123456
isRemembered: 1 or 0
# test taker
user: alamin@gmail.com
password: 123456
isRemembered: 1 or 0
API Features
=> Auth
- Authentication using JWT
- Registration of for only test takers
=> User Module (Test Setter Guard)
- Paginated User List
- New User Create (Both setter and taker)
- User Update
- User Delete (soft)
- Get User By ID
=> Role Module
- Get All Roles
- Get Role By ID
=> Category Module (Test Setter Guard)
- Get All Catgories
- New Category Create
- Update Category
- Delete Category (soft)
- Get Category By ID
=> Question Module (Test Setter Guard)
- Get Random Question By Limit
- Get Random Question By Limit By Category ID
- New Question Create
- Update Question
- Delete Question (soft)
- Get Question By ID
=> Quiz Test Module (Test Setter Guard)
- Get Paginated Tests List
- New Quiz-Test Create
- Update Quiz-Test
- Delete Quiz-Test (soft)
- Get Quiz-Test By ID
=> User Quiz Test Module (Both Test Taker and Setter Guard)
- Attend Quiz-Test one time for each test by user ID
- Get Test Result by Test ID and User ID
API Documentations
Please Refer to the any of the following url after running the app using previous instruction.
Test (Not Implemented)
# unit tests
$ npm run test
# e2e tests
$ npm run test:e2e
# test coverage
$ npm run test:cov
Support
Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please read more here.
Stay in touch
- Author - Kamil Myśliwiec
- Website - https://nestjs.com
- Twitter - @nestframework
License
Nest is MIT licensed.