🚀 CRUD - Dynamic PostgreSQL CRUD App

Python Badge FastAPI Badge License Badge

A full-featured project for dynamic data management (CRUD) that automatically generates CRUD APIs for every table in your PostgreSQL database.

✨ Features

📁 Project Structure

CRUD/
 ├─ .gitignore
 ├─ LICENSE
 ├─ README.md
 ├─ backend/                # FastAPI server and database utilities
 │   ├─ main.py
 │   ├─ utils.py
 │   ├─ inspectors.py
 │   ├─ requirements.txt
 │   └─ exit_uvicorn.txt
 ├─ desktop/                # PyQt6 desktop UI
 │   ├─ main.py
 │   └─ requirements.txt
 ├─ web/                    # JavaScript web UI
 │   └─ index.html
 └─ docs/                   # Documentation and styles
     ├─ index.html
     ├─ style.css
     ├─ script.js
     └─ todo.md

⚡ Quick Start

1. Setup project environment:

Create a .env file with your database info:

DBNAME=your_db_name
USER=your_db_user
PASSWORD=your_db_password
HOST=your_db_ip
SCHEMA=public

Create and activate a virtual environment:

Windows

python -m venv .venv
.\.venv\Scripts\activate

Linux / macOS

python3 -m venv .venv
source .venv/bin/activate

2. Backend Setup

cd backend
pip install -r requirements.txt
uvicorn main:app --reload

3. Desktop UI

cd desktop
pip install -r requirements.txt
python main.py

4. Web UI

Just open web/index.html in your browser.

🛠️ API Documentation

Example Request

curl http://127.0.0.1:8000/api/tables

📜 License

This project is licensed under the MIT License. See LICENSE for details.

💡 Contribution

Contributions are welcome! If you have any ideas, suggestions, or bug reports, please open an issue or submit a pull request.