https://github.com/slaughtbear/jwt-project-management-api
Backend for managing projects and tasks, using FastAPI, PostgreSQL via Supabase, and JWT authentication.
https://github.com/slaughtbear/jwt-project-management-api
fastapi python supabase
Last synced: about 2 months ago
JSON representation
Backend for managing projects and tasks, using FastAPI, PostgreSQL via Supabase, and JWT authentication.
- Host: GitHub
- URL: https://github.com/slaughtbear/jwt-project-management-api
- Owner: slaughtbear
- Created: 2025-02-14T16:38:18.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-03-08T04:07:34.000Z (over 1 year ago)
- Last Synced: 2025-03-08T05:18:25.158Z (over 1 year ago)
- Topics: fastapi, python, supabase
- Language: Python
- Homepage:
- Size: 34.2 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# JWT-Project-Management-API
This is a simple but robust backend developed with FastAPI and Supabase to manage projects and related tasks, including JWT authentication and cibersecurity good practices.
## Characteristics
- JWT authentication.
- CRUD operations.
- Supabase integration.
## Tech stack
- Python 3.12.2
- FastAPI 0.115.8
- Supabase 2.13.0
## Previous requirements
- Python 3.12.2 (or superior).
- Supabase account.
## Installation
### 1. Clone the repository
```
https://github.com/slaughtbear/JWT-Project-Management-API.git
```
### 2. Create a virtual environment
```
python -m venv venv
```
### 3. Activate the virtual environment
#### Linux/MacOS
```
source venv/bin/activate
```
#### Windows
```
venv\Scripts\activate
```
### 4. Install the project requirements
```
pip install -r requirements.txt
```
## Supabase
You need to create an account in Supabase if you don´t already have it one. Then you can follow the next steps.
### 1. Supabase project creation
Enter into your dashboard and create a new project, give it a name and password, then click in "Create a new project" button.
### 2. Create the tables
The next step is create the necessary tables for the project, so move your mouse to the left sidebar and click in "Table editor".
#### Users
- **id** = int8 (primary key).
- **created_at** = timestamptz (autogenereted).
## Environment variables configuration
### 1. Create a `.env` file in the root of the aplication