A modern full-stack ticket management application with role-based access control, real-time features, and comprehensive user authentication.
- Features
- Tech Stack
- Prerequisites
- Installation
- Environment Setup
- Usage
- API Endpoints
- Contributing
- License
- 🔐 JWT-based authentication system
- 👥 Role-based access control (User/Admin)
- 🔒 Secure password hashing
- 📱 Session management
- 📝 Create, read, update, and delete tickets
- 🏷️ Ticket categorization and priority levels
- 📊 Ticket status tracking
- 🔍 Advanced search and filtering
- 💻 Responsive Angular frontend
- 🎨 Modern, intuitive UI/UX
- ⚡ Real-time updates
- 📱 Mobile-friendly design
- Runtime: Node.js
- Language: TypeScript
- Framework: Express.js
- Database: PostgreSQL
- ORM: Prisma
- Authentication: JWT
- Caching: Redis
- Framework: Angular
- Language: TypeScript
- Styling: CSS3
- Containerization: Docker
- Version Control: Git
- Package Manager: npm
- API Testing: REST Client
Before running this application, make sure you have the following installed:
git clone https://github.com/Buraktalhaa/ticket.git
cd ticket# Copy the example environment file
cp example.env .env
# Edit the .env file with your configuration
nano .env# Build and start all services
docker-compose up --build
# Run in detached mode
docker-compose up -d --build# Install backend dependencies
cd backend
npm install
# Install frontend dependencies
cd ../frontend
npm install
# Run database migrations
cd ../backend
npx prisma migrate deploy
npx prisma generate
# Start backend server
npm run dev
# In another terminal, start frontend
cd ../frontend
ng serveAccess the Application:
- Frontend: http://localhost:4200
- Backend API: http://localhost:3000
This project is licensed under the MIT License - see the LICENSE file for details.
Burak Talha
- GitHub: @Buraktalhaa
- LinkedIn: @buraktalhamemis
- Thanks to all contributors who helped improve this project
- Special thanks to the open-source community
- Inspired by modern ticket management systems
⭐ If you found this project helpful, please give it a star on GitHub!