A simple web-based ticket management application with separate client and admin interfaces.
- Login: Secure login with client credentials
- Raise Ticket: Submit new tickets with problem description and file attachments
- Pending Tickets: View all pending tickets with status bar showing "Not Resolved"
- Previous Tickets & Responses: View resolved tickets with solutions from admin
- Login: Secure login with admin credentials
- Received Responses: View all pending tickets from clients
- Write Solution: Add solutions to pending tickets
- Previous Responses: View all resolved tickets with status bar showing "Resolved"
bbn-ticket-application/
├── main.py # Flask backend server
├── requirements.txt # Python dependencies
├── templates/
│ ├── login.html # Login page
│ ├── client_dashboard.html # Client dashboard
│ └── admin_dashboard.html # Admin dashboard
├── static/
│ ├── css/
│ │ └── style.css # All styling
│ └── js/
│ ├── client.js # Client-side JavaScript
│ └── admin.js # Admin-side JavaScript
└── data/
├── users.json # User credentials (auto-generated)
└── tickets.json # Tickets storage (auto-generated)
pip install -r requirements.txtpython main.pyThe application will be available at: http://localhost:5000
- Username: admin
- Password: admin123
- Username: client1567
- Password: client123
- Login with client credentials
- Click "Raise a Ticket" to submit a new issue
- Describe the problem and optionally attach files
- Click "Submit Ticket"
- View pending tickets in "Pending Tickets" section
- View resolved tickets and solutions in "Previous Tickets & Responses"
- Login with admin credentials
- View all pending tickets in "Received Responses"
- Click on a ticket to view details
- Click "Write Solution" to provide a solution
- The ticket will move to "Previous Responses" after resolution
- View all resolved tickets in "Previous Responses"
- User data is stored in
data/users.json - Ticket data is stored in
data/tickets.json - Files are referenced by name but not physically stored
- Frontend: HTML5, JavaScript
- Backend: Python Flask
- Storage: JSON files
- This is a simple demonstration application suitable for learning purposes
- For production use, consider:
- Using a proper database (PostgreSQL, MongoDB, etc.)
- Implementing proper authentication (JWT tokens, OAuth)
- Adding file upload functionality
- Adding email notifications
- Implementing user roles and permissions more robustly
- Adding input validation and security measures