Skip to content

rahilsh/cab

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

113 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

cab

Prerequisite

  • Basic understanding of Java, Spring framework, Maven & REST APIs
  • To run this app java 21 & maven is mandatory

Reference Documentation

For further reference, please consider the following sections:

What's Needed for Production

This codebase is currently a functional prototype. The following items are required to make it production-ready:

Critical

  1. Authentication & Authorization - Implement JWT/OAuth2 with role-based access control for riders, drivers, and admins
  2. Production Database - Replace H2 with PostgreSQL/MySQL and add Flyway/Liquibase for migrations
  3. API Documentation - Add Swagger/OpenAPI documentation for all endpoints

Important Features

  1. User Management - Add registration, login, and profile management for riders and drivers
  2. Booking Lifecycle - Implement explicit cancel and complete endpoints for bookings
  3. Payment Integration - Integrate payment gateway (Stripe, Razorpay, etc.)
  4. Real-time Updates - Add WebSocket support for live driver location and booking status updates
  5. Notifications - Implement SMS (Twilio) and email notifications for booking events
  6. Logging & Monitoring - Add structured logging (ELK stack), metrics (Prometheus), and alerting
  7. Rate Limiting - Implement API rate limiting to prevent abuse

Infrastructure

  1. Containerization - Add Dockerfile and docker-compose.yml
  2. Environment Configuration - Add profile-based config (dev/staging/prod) with externalized settings
  3. CI/CD Pipelines - Enhance GitHub Actions with deployment to cloud (AWS/GCP/Azure)
  4. Input Sanitization - Add comprehensive input validation and sanitization
  5. Error Handling - Implement global exception handling with proper HTTP status codes and error responses

About

Cab app

Topics

Resources

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages