◉ Pulse
NobelB07 avatar
#65 today ▼ 9

NobelB07/Cafe-Management-System-POS-

Python AI

The Cafe Management System is a web-based application that streamlines café operations by managing customer orders, menu items, inventory, payments, and sales. It provides customers with an easy ordering experience while enabling administrators to efficiently monitor and manage daily café activities through a centralized dashboard.

Created Jul 21, 2026
Stars
10
Today
+2
Forks
0
Quality
85/100
Momentum
17

README

Fetched from GitHub on Oct 30, 2026, 10:16 PM UTC · README.md

View original on GitHub

Third-party content — Open Source Pulse is not the owner of this repository.

This README belongs to NobelB07/Cafe-Management-System-POS- and its contributors. We fetch it directly from the project’s public GitHub repository and display it for reference only. All text, code, images and trademarks remain the property of their respective authors. See the repository for its license terms. Copyright / takedown policy.

Cafe Management System

A comprehensive Django-based cafe management system with menu management, order processing, billing, and user role management.

Features

1. Menu Management

  • Add, edit, and delete menu items
  • Categories: Beverages, Snacks, Meals, Desserts
  • Image upload support for menu items
  • Availability status toggle

2. Order Management

  • Create new orders with customer details
  • Add multiple items to orders with quantities
  • View all orders with status filtering
  • Update order status (Pending, Preparing, Completed, Cancelled)
  • Remove items from orders

3. Billing / Invoice

  • Automatic calculation of subtotal, discounts, and total
  • Apply discounts to orders
  • Generate printable invoices/receipts
  • Detailed billing breakdown

4. User Roles

  • Admin: Full access to menu management, reports, and all features
  • Staff/Cashier: Can place orders and generate bills
  • Role-based access control throughout the system

5. Dashboard

  • Today's total orders count
  • Today's revenue from completed orders
  • Pending vs completed orders statistics
  • Most ordered items analysis
  • Quick action buttons for common tasks

Installation

Prerequisites

  • Python 3.8 or higher
  • pip (Python package manager)

Setup Instructions

  1. Navigate to the project directory

  2. Create a virtual environment (recommended)

    python -m venv venv
    venv\Scripts\activate  # On Windows
  3. Install dependencies

    pip install -r requirements.txt
  4. Run database migrations

    python manage.py makemigrations
    python manage.py migrate
  5. Create a superuser (Admin account)

    python manage.py createsuperuser

    Follow the prompts to create your admin account.

  6. Run the development server

    python manage.py runserver
  7. Access the application

    • Open your web browser and go to: http://127.0.0.1:8000/
    • Admin panel: http://127.0.0.1:8000/admin/

Usage

First Time Setup

  1. Login as Admin

    • Use the superuser credentials you created
    • Access the admin panel at /admin/
  2. Add Menu Items

    • Go to Dashboard → Menu → Add Menu Item
    • Add items with name, price, category, description, and optional image
    • Set availability status
  3. Create Staff Accounts

    • Go to Admin panel → Users
    • Create new users and assign appropriate permissions
    • Staff users can access the main interface but not admin features

Daily Operations

  1. Place an Order

    • Dashboard → New Order
    • Enter customer name and notes
    • Add menu items with quantities
    • Apply discounts if needed
    • Update order status as it progresses
  2. View Orders

    • Dashboard → Orders
    • Filter by status (Pending, Preparing, Completed, Cancelled)
    • Click on an order to view details or generate invoice
  3. Generate Invoice

    • From order detail page, click "View Invoice"
    • Print the invoice using the print button
    • Invoice includes all order details and billing breakdown
  4. Monitor Performance

    • Dashboard shows today's statistics
    • View most ordered items
    • Track revenue and order counts

Project Structure

Cafe/
├── cafe_project/          # Django project settings
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   ├── wsgi.py
│   └── asgi.py
├── cafe_app/              # Main application
│   ├── __init__.py
│   ├── admin.py           # Admin configuration
│   ├── apps.py            # App configuration
│   ├── forms.py           # Form definitions
│   ├── models.py          # Database models
│   ├── urls.py            # URL routing
│   └── views.py           # View functions
├── templates/             # HTML templates
│   ├── base.html          # Base template
│   └── cafe_app/          # App-specific templates
│       ├── dashboard.html
│       ├── menu_list.html
│       ├── menu_form.html
│       ├── menu_confirm_delete.html
│       ├── order_list.html
│       ├── order_form.html
│       ├── order_detail.html
│       ├── order_invoice.html
│       └── signup.html
├── static/                # Static files
│   └── css/
│       └── style.css
├── media/                 # User-uploaded files (created automatically)
├── manage.py              # Django management script
├── requirements.txt       # Python dependencies
└── README.md             # This file

Database Models

MenuItem

  • Stores menu item details
  • Fields: name, price, category, description, image, is_available

Order

  • Stores order information
  • Fields: order_number, customer_name, status, subtotal, discount, total, notes
  • Status options: pending, preparing, completed, cancelled

OrderItem

  • Links orders to menu items
  • Fields: order, menu_item, quantity, price_at_order

User Roles

Admin (is_staff=True)

  • Full access to all features
  • Can manage menu items
  • Can access Django admin panel
  • Can view all reports and statistics

Staff/Cashier (is_staff=False)

  • Can place orders
  • Can generate bills
  • Can update order status
  • Cannot access menu management or admin panel

Technologies Used

  • Django 4.2+: Web framework
  • Python 3.8+: Programming language
  • SQLite: Database (default)
  • Bootstrap 5: Frontend framework
  • Font Awesome: Icons
  • Pillow: Image handling

Customization

Adding New Categories

Update the CATEGORY_CHOICES in cafe_app/models.py:

CATEGORY_CHOICES = [
    ('beverages', 'Beverages'),
    ('snacks', 'Snacks'),
    ('meals', 'Meals'),
    ('desserts', 'Desserts'),
    ('new_category', 'New Category'),  # Add your category here
]

Changing Colors

Edit the color values in templates/base.html and static/css/style.css:

  • Primary color: #d35400 (orange)
  • Change to your preferred color scheme

Troubleshooting

Static files not loading

  • Run: python manage.py collectstatic
  • Ensure STATIC_URL and STATICFILES_DIRS are correctly set in settings.py

Images not uploading

  • Ensure MEDIA_URL and MEDIA_ROOT are correctly set in settings.py
  • Check that the media directory has write permissions

Database errors

  • Delete the db.sqlite3 file
  • Run migrations again: python manage.py migrate

License

This project is provided as-is for educational and commercial use.

Rendered by GitHub from the repository’s README. Scroll to read the full file.
First trending

Jul 21, 2026

first spotted on the list

Best rank

#36

highest position reached

Appearances

2

times on the trending list

Quality score

85

out of 100

Momentum

17

trend strength indicator

Star velocity

0.10

stars per day since creation

Activity — last 60 days

daily counts, collected every 6 hours
  • Stars
  • Forks
  • Merged PRs
  • Issues
  • Closed issues

Collecting activity data since launch — check back in a few days.

Star history

total stars per snapshot
7891011NobelB07/Cafe-Management-System-POS- · Jul 21, 2 PM UTC: 8 starsNobelB07/Cafe-Management-System-POS- · Jul 21, 7 PM UTC: 10 stars2:01 PM4:49 PM7:36 PM

Rank history

position on trending · lower is better
#1#35#40#45#50#55#60#65Jul 21, 2 PM UTC: rank #36Jul 21, 7 PM UTC: rank #652:01 PM4:49 PM7:36 PM

3D card for your website

Live HTML card with a glass surface and pointer tilt. Paste the iframe on any website.

<iframe src="https://www.notionpulse.cc/embed/NobelB07/Cafe-Management-System-POS-" width="420" height="240" style="border:0;max-width:100%;background:transparent" loading="lazy" title="NobelB07/Cafe-Management-System-POS- — trending on Open Source Pulse"></iframe>

Stars badge

Show current stars in your README or profile. Auto-updates every 6 hours.

NobelB07/Cafe-Management-System-POS- stars badge
Markdown
[![NobelB07/Cafe-Management-System-POS-](https://www.notionpulse.cc/api/badge/NobelB07/Cafe-Management-System-POS-.svg)](https://www.notionpulse.cc/repo/NobelB07/Cafe-Management-System-POS-)
HTML
<a href="https://www.notionpulse.cc/repo/NobelB07/Cafe-Management-System-POS-"><img src="https://www.notionpulse.cc/api/badge/NobelB07/Cafe-Management-System-POS-.svg" alt="NobelB07/Cafe-Management-System-POS- stars badge" /></a>

Repository of the Day

#36 Repository of the Day

Repository of the Week

#36 Repository of the Week

Repository of the Month

#36 Repository of the Month