WARNING: THIS SITE IS A MIRROR OF GITHUB.COM / IT CANNOT LOGIN OR REGISTER ACCOUNTS / THE CONTENTS ARE PROVIDED AS-IS / THIS SITE ASSUMES NO RESPONSIBILITY FOR ANY DISPLAYED CONTENT OR LINKS / IF YOU FOUND SOMETHING MAY NOT GOOD FOR EVERYONE, CONTACT ADMIN AT ilovescratch@foxmail.com
Skip to content

Akins-Coded/Inventory-Management-Api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

22 Commits
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“¦ Inventory Management System API

A RESTful API designed to efficiently track and manage inventory data in real time. Built with Django Rest Framework, the system supports CRUD operations, low-stock alerting, and role-based access for inventory managers and stock controllers. This project demonstrates best practices in backend development, including authentication, optimized querying, and scalable API design.

πŸš€ Features

  • 🧾 Product Management – Create, read, update, and delete inventory items.
  • πŸ“‰ Low-Stock Alerts – Automatic alerts when item stock falls below minimum threshold.
  • πŸ” Role-Based Access – Assign roles with specific permissions (Admin, Manager, Controller).
  • πŸ“Š Real-time Stock Monitoring – Up-to-date overview of stock levels.
  • πŸ”„ API-First Design – Built for frontend integration and automation.

βš™οΈ Technologies Used

  • Python 3.12
  • Django 5+
  • Django REST Framework
  • SQLite
  • JWT Authentication

πŸ“ Project Structure

inventory_system/
β”œβ”€β”€ inventory/           # App for managing inventory operations
β”œβ”€β”€ users/               # App for user roles and authentication
β”œβ”€β”€ core/                # Settings, configuration, and base utilities
β”œβ”€β”€ tests/               # Automated tests for all endpoints and logic
β”œβ”€β”€ requirements.txt     # Dependencies
β”œβ”€β”€ manage.py            # Django entry point
└── README.md

πŸ” Authentication & Permissions

This project uses JWT (JSON Web Tokens) for secure authentication. Users must log in and receive a token to access protected routes.

  • Admin: Full access
  • Manager: CRUD on items, view alerts
  • Controller: View only
# Get Token
POST /api/token/

# Example Header
Authorization: Bearer <your_token_here>

πŸ“¦ API Endpoints Overview

Method Endpoint Description
GET /api/products/ List all products
POST /api/products/ Add a new product
GET /api/products// Retrieve product by ID
PUT /api/products// Update product
DELETE /api/products// Delete product
GET /api/alerts/ Get low-stock alerts

πŸš€ Getting Started

Prerequisites

  • Python 3.11+
  • PostgreSQL
  • pip

Setup

git clone https://github.com/Akins-Coded/inventory-management-api.git
cd inventory-management-api
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
pip install -r requirements.txt
python manage.py migrate
python manage.py runserver

πŸ“Š Future Improvements

  • βœ… Admin dashboard (React/Next.js frontend)
  • πŸ“¦ Stock batch upload via CSV
  • πŸ› οΈ Webhook for auto-restocking
  • πŸ“ˆ Analytics & Reporting module

🀝 Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.


πŸ“¬ Contact

Akindipe Muheez Omogbolahan
πŸ“§ Email: [email protected]
🌐 Linktree
πŸ”— LinkedIn
πŸ’» GitHub


This project is part of my Backend Engineering portfolio. Built with precision, security, and scalability in mind.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published