Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/padupe/amateur-tennis-players-rkg-nestjs
https://github.com/padupe/amateur-tennis-players-rkg-nestjs
mongodb mongoose nestjs typescript
Last synced: 11 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/padupe/amateur-tennis-players-rkg-nestjs
- Owner: padupe
- Created: 2022-06-22T22:53:59.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-07-18T12:03:03.000Z (over 2 years ago)
- Last Synced: 2024-10-05T10:41:16.078Z (about 1 month ago)
- Topics: mongodb, mongoose, nestjs, typescript
- Language: TypeScript
- Homepage:
- Size: 1.82 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
![img](https://github.com/padupe/amateur-tennis-players-rkg-nestjs/blob/main/assets/banner-project.svg)
# Amateur Tennis Players Ranking
> Check the Documentation in pt-BR by clicking 🇧🇷 [here](https://github.com/padupe/amateur-tennis-players-rkg-nestjs/blob/main/docs/README-pt-BR.md 'here').## Index
* [Amateur Tennis Players Ranking](#amateur-tennis-players-ranking)
* [Index](#index)
* [Description](#description)
* [ERM (Entity Relationship Model)](#erm-entity-relationship-model)
* [Flow](#flow)
* [Business Context](#business-context)
* [Business Rules](#business-rules)
* [Player](#player)
* [Administrator](#administrator)
* [Project Dependencies](#project-dependencies)
* [Tools Used](#tools-used)## Description
Application for ranking management of amateur tennis players.## ERM (Entity Relationship Model)
## Flow
TODO## Business Context
An application that will be used by amateur tennis players.
These players are part of a ranking that is updated as matches are played.
The objective is to present a solution that aims to modernize this management, in order to encourage those who already participate, as well as provide an attraction for new players.## Business Rules
### Player
- Request or reject a challenge;
- Record the result of a match;
- Follow the rankings;
- Consult your data and your match history (wins, losses and ranking position);
- Consult information about your opponents (match history and data);
- Get notified by email when challenged.### Administrator
- Register the categories and set the scores;
- Register players and define their categories;
- Be notified when there is a pending challenge for more than 10 (ten) days.## Project Dependencies
- [class-transformer](https://www.npmjs.com/package/class-transformer 'class-transformer'): class-transformer allows you to transform plain object to some instance of class and versa;
- [class-validator](https://www.npmjs.com/package/class-validator): allows use of decorator and non-decorator based validation;
- [dotenv](https://www.npmjs.com/package/dotenv 'dotenv'): Dotenv is a zero-dependency module that loads environment variables from a `.env` file into `process.env`;
- [moment-timezone](https://www.npmjs.com/package/moment-timezone): library that allows you to format the time zone according to the desired area;
- [NestJs](https://nestjs.com/): a progressive [Node.js](https://nodejs.org/en/) framework for building efficient, reliable and scalable server-side applications;
- [reflect-metadata](https://www.npmjs.com/package/reflect-metadata 'reflect-metadata'): A library that serves multiple use cases (dependency composition/injection, runtime type assertions, reflection/mirroring, testing) wants the ability to add additional metadata to a class in a consistent way;## Tools Used
- **Database:** [MongoDB](https://www.mongodb.com/)## Installation
```bash
yarn install
```## Running the app
```bash
# development
yarn start# watch mode
yarn start:dev# production mode
yarn start:prod
```## Tips for using NestJS
Command to create a `Module`
```bash
nest g module {module_name}# Example
# nest g module players
```Command to create a `Controller`
```bash
nest g controller {controller_name}# Example
# nest g controller players
```Command to create a `Service`
```bash
nest g service {service_name}# Example
# nest g service players
```## Course Platform
- [Udemy](https://www.udemy.com/)