-
-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Open
Description
Implement a fully functional backend for the ShareDrop platform, including authentication, trip management, job board, and social features. The backend should be production-ready and optimized for 100% performance as per the provided project plan.
Key Requirements
- Project Setup: Initialize Node.js project with required dependencies and scripts.
- Environment Configuration: Use dotenv for configuration management and PostgreSQL as the database.
- Database Schema: Implement Prisma schema supporting users (rider, driver, admin roles), trips, job postings/applications, posts, comments, and likes.
- Authentication & Authorization: JWT-based authentication with role-based access control.
- Trip Management: Endpoints for requesting, accepting, updating, and retrieving trip details and history.
- Job Board: Admin can post jobs; drivers can apply; admin can review applications.
- Social Feed: Users can post, comment, like, and upload images.
- Utilities: Fare calculation based on distance; Haversine formula for trip distance.
- Middleware: Authentication and role-checking middleware.
- Socket.IO Integration: Real-time trip and driver location updates.
- File Uploads: Image upload handling for posts.
Acceptance Criteria
- All described endpoints and features implemented as per the plan above.
- Code is modular, maintainable, and uses best practices.
- Full test coverage and error handling.
- Documentation for setup and usage is included.
Additional Suggestions
- Add logging and monitoring for production.
- Implement input validation and security best practices.
- Optimize queries and indexes for performance.
Please refer to the detailed code and step-by-step plan for specifics.
Metadata
Metadata
Assignees
Labels
No labels