Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tutods/covid-tracking-system
COVID Tracking System is a web app with the purpose to store COVID-19 tests and the information related
https://github.com/tutods/covid-tracking-system
angular api covid-19 express mean mongoose nodejs
Last synced: about 2 months ago
JSON representation
COVID Tracking System is a web app with the purpose to store COVID-19 tests and the information related
- Host: GitHub
- URL: https://github.com/tutods/covid-tracking-system
- Owner: tutods
- Created: 2020-04-29T09:28:39.000Z (over 4 years ago)
- Default Branch: master
- Last Pushed: 2024-05-02T01:00:18.000Z (8 months ago)
- Last Synced: 2024-05-02T17:12:08.508Z (8 months ago)
- Topics: angular, api, covid-19, express, mean, mongoose, nodejs
- Language: TypeScript
- Homepage: https://covid-tracking-system.herokuapp.com/
- Size: 14.3 MB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
COVID Tracking System
[![Version](https://img.shields.io/badge/Version-3.1.0-blue)](#)
## API
+ **Folder:** `backend/`### đĻī¸ Packages
#### Express
+ **[URL](http://expressjs.com)**
+ **How to install**?
+ `npm install express`#### Mongoose
+ **[URL](https://mongoosejs.com)**
+ **How to install**?
+ `npm install mongoose`#### DotENV
+ **[URL](https://www.npmjs.com/package/dotenv)**
+ **How to install**?
+ `npm install dotenv`#### BCrypt
+ **[URL](https://www.npmjs.com/package/bcryptjs)**
+ **How to install**?
+ `npm install bcryptjs`#### Nodemon
+ **[URL](http://nodemon.io)**
+ **How to install**?
+ `npm install -D nodemon`
+ `npm install -g nodemon`
+ **`-D`** to install only for dev
+ **`-g`** to install package globally#### Multer
+ **[URL](https://www.npmjs.com/package/multer)**
+ **How to install**?
+ `npm install --save multer`#### Body Parser
+ **[URL](https://www.npmjs.com/package/body-parser)**
+ **How to install**?
+ `npm install body-parser`#### Cors
+ **[URL](https://www.npmjs.com/package/cors)**
+ **How to install**?
+ `npm install cors`#### ShortID
+ **[URL](https://www.npmjs.com/package/shortid)**
+ **How to install**?
+ `npm install shortid`#### Nodemailer
+ **[URL](https://www.npmjs.com/package/nodemailer)**
+ **How to install**?
+ `npm install nodemailer`#### EJS
+ **[URL](https://www.npmjs.com/package/ejs)**
+ **How to install**?
+ `npm install ejs`#### Swagger UI Express
+ **[URL](https://www.npmjs.com/package/swagger-ui-express)**
+ **How to install**?
+ `npm install swagger-ui-express`#### JSON Web Token (JWT)
+ **[URL](https://www.npmjs.com/package/jsonwebtoken)**
+ **How to install**?
+ `npm install jsonwebtoken`#### Node-cron
+ **[URL](https://www.npmjs.com/package/node-cron)**
+ **How to install**?
+ `npm install node-cron`#### Request
+ **[URL](https://www.npmjs.com/package/request)**
+ **How to install**?
+ `npm install request`### âšī¸ How to run
1. Execute the command `npm install`
1. Create `.env` file with this code:
```env
# NODE PORT
PORT=3000# JWT
SECRET=secret_word_for_jwt
EXPIRES=1800000# MONGO DATA
MONGO_HOST=localhost
MONGO_PORT=27017
MONGO_DB=covidSystem# EMAIL DATA
[email protected]
EMAIL_PWD=email_pwd# USER DATA
ADMIN_NAME=COVID Tracking System
ADMIN_EMAIL=admin_email
ADMIN_PWD=admin_pwd
```
+ This code is on `.env.example` file;
+ The `MONGO_PORT=27017` is default value;2. To insert default roles and default admin user into **MongoDB**, execute `npm run setup`
3. To run **NodeJS** server (with **Nodemon**) execute `npm run dev`### đ Folder Structure
```diff
âââ api
â âââ controllers
â â âââ CovidTestController.js
â â âââ GenericController.js
â â âââ PatientController.js
â â âââ SummaryController.js
â â âââ UserController.js
â âââ documentation
â â âââ index.js
â â âââ src
â âââ index.js
â âââ middlewares
â â âââ authorize.js
â â âââ errorHandler.js
â â âââ filters.js
â â âââ logger.js
â â âââ session.js
â â âââ sort.js
â âââ models
â â âââ CovidTest.js
â â âââ Patient.js
â â âââ Role.js
â â âââ User.js
â âââ routes
â âââ covidTests.js
â âââ patients.js
â âââ roles.js
â âââ summary.js
â âââ users.js
âââ app.js
âââ config
â âââ mongoose.js
âââ package-lock.json
âââ package.json
âââ public
âââ requests
â âââ covidTests.http
â âââ filters.http
â âââ patients.http
â âââ roles.http
â âââ sort.http
â âââ users.http
âââ scripts
â âââ emailServer.js
â âââ resetEmail.js
â âââ roles.json
â âââ setup.js
âââ views
âââ mail
â âââ reset.ejs
âââ partials
âââ copyright.ejs
âââ footer.ejs
âââ header.ejs
âââ logo.ejs
âââ preheader.ejs
âââ style.ejs
âââ title.ejs
```## Frontend
+ **Folder:** `frontend/`### âšī¸ How to run
1. Change to `frontend/` folder (on terminal: `cd frontend`)
1. Execute the command `npm install`
1. Execute the command `ng serve` to run **Angular** application### đ Folder Structure
```diff
âââ src
â âââ e2e
â âââ app
â â âââ app-routing.module.ts
â â âââ app.component.html
â â âââ app.component.sass
â â âââ app.component.spec.ts
â â âââ app.component.ts
â â âââ app.module.ts
â â âââ auth
â â â âââ change
â â â âââ login
â â â âââ reset
â â â âââ session.service.spec.ts
â â â âââ session.service.ts
â â âââ components
â â â âââ dialogs
â â âââ directives
â â â âââ can-use
â â â âââ enable-menu
â â âââ functions
â â â âââ validateScopes.ts
â â âââ guards
â â â âââ scope
â â âââ interceptors
â â â âââ session-lost.interceptor.ts
â â âââ layout
â â â âââ default
â â â âââ landing-page
â â âââ models
â â â âââ patient.model.ts
â â â âââ role.model.ts
â â â âââ user.model.ts
â â âââ pages
â â â âââ dashboard
â â â âââ patients
â â â âââ users
â â âââ services
â â âââ covid-api
â â âââ patients
â â âââ patients.service.spec.ts
â â âââ patients.service.ts
â â âââ roles
â â âââ users-service
â âââ assets
â â âââ images
â â âââ add.png
â â âââ backgrounds
â â âââ logo
â â âââ prevention
â â âââ symptoms
â â âââ user.png
â âââ environments
â â âââ environment.prod.ts
â â âââ environment.ts
â âââ favicon.ico
â âââ index.html
â âââ main.ts
â âââ polyfills.ts
â âââ proxy.conf.json
â âââ styles
â â âââ _variables.sass
â â âââ theme.sass
â âââ styles.sass
â âââ test.ts
âââ .editorconfig
âââ .gitignore
âââ angular.json
âââ browserslist
âââ karma.conf.js
âââ package-lock.json
âââ package.json
âââ tsconfig.app.json
âââ tsconfig.json
âââ tsconfig.spec.json
âââ tslint.json
```### đĻī¸ Packages
#### Angular Material
+ **[URL](https://material.angular.io)**
+ **How to install**?
+ `ng add @angular/material`#### Angular Flex Layout
+ **[URL](https://github.com/angular/flex-layout)**
+ **How to install**?
+ `npm i -s @angular/flex-layout @angular/cdk`#### ChartJS
+ **[URL](https://github.com/chartjs/Chart.js)**
+ **How to install**?
+ `npm i -s chart.js`#### NG2-Charts
+ **[URL](https://www.npmjs.com/package/ng2-charts)**
+ **How to install**?
+ `npm i ng2-charts`#### NG2-Search-Filter
+ **[URL](https://www.npmjs.com/package/ng2-search-filter)**
+ **How to install**?
+ `npm i ng2-search-filter`