https://github.com/sans-script/in.orbit
in.orbit is a full-stack goal scheduling application developed during the Rocketseat event, NLW Pocket: JavaScript - Full-Stack Intermediate.
https://github.com/sans-script/in.orbit
Last synced: 5 days ago
JSON representation
in.orbit is a full-stack goal scheduling application developed during the Rocketseat event, NLW Pocket: JavaScript - Full-Stack Intermediate.
- Host: GitHub
- URL: https://github.com/sans-script/in.orbit
- Owner: sans-script
- Created: 2024-09-15T15:11:34.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-09-15T15:16:04.000Z (over 1 year ago)
- Last Synced: 2025-03-02T03:35:25.422Z (over 1 year ago)
- Language: TypeScript
- Homepage:
- Size: 84 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# in.orbit
**in.orbit** is a full-stack goal scheduling application developed during the Rocketseat event, **NLW Pocket: JavaScript - Full-Stack Intermediate**.
## Features
The application allows users to:
- Set weekly goals
- Track pending goals for the week
- Mark goals as completed
- View a weekly summary of goal progress
## Technologies Used
### Backend
- **Node.js** with **TypeScript**
- **Fastify** framework
- **DrizzleORM** for database interaction
- **PostgreSQL** as the database
- **Docker** for containerization
- **Zod** for schema validation
### Frontend
- **ReactJS** with **TypeScript**
- **Vite** for tooling
- **TailwindCSS** for responsive styling
- **TanStack Query** for asynchronous data management
- Integration with the Node.js API
## API Endpoints
Visit the `requests.http` file inside the server folder to test the API using the **REST Client** extension for VSCode, **Postman**, or other API testing tools.
### Goals
```bash
curl -X POST http://localhost:3333/goals \
-H "Content-Type: application/json" \
-d '{"title": "Fazer nada", "desiredWeeklyFrequency": 7}'
```
### Get week pending goals
```bash
curl -X GET http://localhost:3333/pending-goals
```
### Create goal completion
```bash
curl -X POST http://localhost:3333/completions \
-H "Content-Type: application/json" \
-d '{"goalId": "the_goal_id_here"}'
```
### Get week summary
```bash
curl -X GET http://localhost:3333/summary
```