A full-stack inventory management application built using FastAPI (Python) for the backend and React (Vite) for the frontend.
This project demonstrates full CRUD operations, PostgreSQL integration, environment variable configuration, and modern frontend development practices.
- ✅ Create new products
- ✅ View all products
- ✅ Update existing products
- ✅ Delete products
- ✅ PostgreSQL database integration
- ✅ Environment-based configuration using
.env - ✅ Clean REST API design
- ✅ Responsive UI with React
- ✅ Proper Git & project structure
- FastAPI
- SQLAlchemy
- PostgreSQL
- Python
- python-dotenv
- React (Vite)
- JavaScript (ES6+)
- CSS
fastapi-demo/ │ ├── frontend/ # React frontend │ ├── main.py # FastAPI entry point ├── database.py # DB connection setup ├── database_models.py # SQLAlchemy models ├── models.py # Pydantic schemas │ ├── .env # Environment variables (ignored) ├── .gitignore └── README.md
git clone https://github.com/AbhijitK20/fastapi-react-inventory.git
cd fastapi-react-inventory
Create a virtual environment:
python -m venv myenv myenv\Scripts\activate # Windows
Install dependencies:
pip install -r requirements.txt
Create a .env file:
DATABASE_URL=postgresql://username:password@localhost:5432/dbname
Run FastAPI:
uvicorn main:app --reload
Backend runs on:
Swagger docs:
Go to frontend folder:
cd frontend
Install dependencies:
npm install
Run development server:
npm run dev
Frontend runs on:
Sensitive information like database credentials are stored in a .env file and excluded from version control using .gitignore.
(Add screenshots of your UI here)
- Authentication (JWT)
- User roles (Admin / Viewer)
- Pagination & sorting
- Docker containerization
- Deployment to cloud (Render / Railway / Vercel)
Abhijit Kapure
GitHub: https://github.com/AbhijitK20
This project is for educational and portfolio purposes.