Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nkosi-tauro/task-manager
A Task Management backend application that allows authenticated users to Create, Update & Delete Tasks.
https://github.com/nkosi-tauro/task-manager
docker-compose fastify mysql nodejs sequelize typescript
Last synced: about 1 month ago
JSON representation
A Task Management backend application that allows authenticated users to Create, Update & Delete Tasks.
- Host: GitHub
- URL: https://github.com/nkosi-tauro/task-manager
- Owner: nkosi-tauro
- License: mit
- Created: 2024-07-09T10:05:14.000Z (7 months ago)
- Default Branch: main
- Last Pushed: 2024-07-11T16:20:19.000Z (7 months ago)
- Last Synced: 2024-11-08T04:44:36.681Z (3 months ago)
- Topics: docker-compose, fastify, mysql, nodejs, sequelize, typescript
- Language: TypeScript
- Homepage:
- Size: 271 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
Task Manager
[![JavaScript Style Guide](https://cdn.rawgit.com/standard/standard/master/badge.svg)](https://github.com/standard/standard)
About |
Features |
Technologies |
Requirements |
Starting |
License |
Author
## :dart: About ##
A Task Management backend application that allows authenticated users to Create, Update & Delete Tasks.
## :sparkles: Features ##
:heavy_check_mark: User Authentication with [fastify/jwt](https://github.com/fastify/fastify-jwt);\
:heavy_check_mark: CRUD Tasks;\
:heavy_check_mark: Filter & Sort Tasks;\
:heavy_check_mark: Add Labels To Tasks;## :rocket: Technologies ##
The following tools were used in this project:
- [Fastify](https://fastify.dev/)
- [Sequelize ORM](https://sequelize.org/)
- [Node.js](https://nodejs.org/en/)
- [Docker Compose](https://docs.docker.com/compose/)
- [MySQL](https://www.mysql.com/)
- [TypeScript](https://www.typescriptlang.org/)## :white_check_mark: Requirements ##
Before starting :checkered_flag:, you need to have [Git](https://git-scm.com), [Node](https://nodejs.org/en/) and [Docker](https://docs.docker.com) installed.
## :checkered_flag: Starting ##
### .env
```bash#root directory .env values
DB_USER=jellyman
DB_PASSWORD=jellyman
DB_NAME=task_manager#backend directory .env values
DB_HOST=localhost
DB_PORT=3306
DB_USER=jellyman
DB_PASSWORD=jellyman
DB_NAME=task_manager
JWT_SECRET=verysecretsecret
``````bash
# Clone this project
$ git clone https://github.com/nkosi-tauro/task-manager# Access
$ cd task-manager# Create a .env file for both the root and backend directories
$ See .env section above# Install dependencies & Run project
$ docker compose up# Test the project Endpoints
$ See Postman Section below# The server will initialize on
```### Postman
Download the Postman Collection and Import it.
Download Collection
Or View the "Munch Backend.postman_collection.json" file in the root directory.### Testing
After setting up the Project:
To Run Tests you can startup just the database or else the ports will conflict.```bash
# (Only do this if you want to run tests)# Database Startup
$ docker compose up db# Access
$ cd backend# install packages
$ npm i# run tests
$ npm test
```## :memo: License ##
This project is under license from MIT. For more details, see the [LICENSE](LICENSE.md) file.
Made with :heart: by Nkosilathi Tauro