Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/apollo-level2-web-dev/l2-b1-assignment-9-full-stack


https://github.com/apollo-level2-web-dev/l2-b1-assignment-9-full-stack

Last synced: 24 days ago
JSON representation

Awesome Lists containing this project

README

        

# Service Booking and Management Website ( Full Stack)

### Introduction

Welcome to the Service Booking and Management Website assignment! In this project, you will be tasked with designing and building a comprehensive online platform that allows users to browse, book, and manage various services. The assignment is divided into three main parts: user-facing features, admin-facing features, and super admin-facing features. Below, you'll find a breakdown of the requirements for each of these categories.

# Assignment Requirements:

### User-Facing Features

### Registration and Login

- Your website should offer a user-friendly and secure registration process.
- Implement proper validation to ensure data accuracy.

### Service Search and Add to Cart

- Create an intuitive interface for users to browse and search for services.
- Allow users to add services to their cart for easy booking.

### Booking and Scheduling

- Develop a booking system that enables users to select service dates and times.
- Ensure a smooth, step-by-step booking process with clear confirmation.

### Profile Management

- Design user profiles where users can manage personal information and preferences.
- Enable users to view and edit their profiles.

### Review and Rating System

- Implement a system for users to leave reviews and ratings for services.
- Display these reviews and ratings on service listings.

### Notifications (optional)

- Create a notifications center where users receive booking confirmations, reminders, and updates.

### Service History

- Develop a user dashboard to view booking history and check booking statuses.
- Allow users to cancel bookings when necessary.

### Feedback Forms

- Design feedback forms for users to submit comments and suggestions.

### User Dashboard

- Create a dashboard that provides an overview of booking order history and statuses.
- Include options for canceling bookings.

### Admin-Facing Features

### Admin Dashboard

- Develop a central dashboard for administrators to monitor and manage website activities.

### User Management

- Create a user management system for administrators to add, edit, and manage user accounts.
- Implement role-based permissions.

### Service Management

- Design an interface for adding, editing, and removing service listings.
- Include options for pricing, descriptions, and availability.

### Booking Management

- Implement a booking management system for administrators to view and manage booking requests.
- Allow admins to accept, reject, and adjust schedules.

### Content Management

- Create a content management system for administrators to control website content, including blog posts and FAQs.

### Profile Management

- Allow admins to manage their profiles and access permissions.

### Super Admin-Facing Features

### Add Admin and Manage Admin

- Develop a feature that allows super admins to add new admin users.
- Provide options for managing admin roles.

### Profile Management

- Create a profile management system for super admins to update their personal information.

### Homepage Contents

- Navbar
- Header
- Available Service
- Upcoming Services
- Events by Category
- Survey/Overview
- Client Review
- Latest News
- Footer
- Two or more unique Sections

### Functional Requirements

### User Functional Requirements

- Users should be able to register with a valid email address.
- Implement password validation and security measures.
- Users must log in to access their accounts.
- Users can create and manage their profiles, including personal information and preferences.
- Users should be able to view and edit their profiles easily.
- Users can browse available services.
- Implement a search feature allowing users to search services by name, location, and category.
- Users should be able to filter services by price range and other relevant criteria.
- Users can select services and choose available dates and times for booking(if applicable) .
- Implement a smooth and user-friendly booking process with confirmation.
- Users should be able to track the status of their bookings.
- Users can leave reviews and ratings for services they have booked.
- Reviews and ratings should be displayed on service listings.
- Create a notifications center where users receive booking confirmations, reminders, and updates ( optional - readonly )
- Develop a user dashboard displaying booking history and statuses.
- Users should have the option to cancel bookings if necessary.
- Design user-friendly feedback forms for users to submit comments and suggestions.

### Admin Functional Requirements

- Admins should have access to a centralized dashboard to monitor and manage website activities.
- Admins can add, edit, and manage user accounts.
- Admins should be able to add, edit, and remove service listings.
- Provide options for pricing, descriptions, and availability management.
- Implement a booking management system for administrators to view and manage booking requests.
- Admins can accept, reject, or adjust schedules as needed.
- Create a content management system for administrators to control website content, including blog posts and FAQs.
- Allow administrators to manage their profiles.

### Super Admin Functional Requirements

- Super admins can add new admin users to the system.
- Provide options for managing admin roles.
- Create a profile management system for super admins to update their personal information.

### Important Notes

- You have the freedom to choose your preferred technology stack; however, it is mandatory to include either Next.js or Prisma alongside PostgreSQL in your project. You may opt to utilize both if your project's requirements necessitate it.
- Implement robust data validation using appropriate libraries such as Zod, Joi, or equivalent.
- Integrate a pagination system, filtering capabilities, and sorting functionality into your backend API to enhance the user experience, simplify navigation, and enable convenient access to pertinent data.
- Prioritize proper error handling throughout your codebase.
- Maintain coding best practices to ensure code quality and readability.
- To prevent deployment issues on the backend, avoid using a logger & image upload( for multer only) unless it is explicitly required for debugging or monitoring purposes.
- Marks for enhancing the user experience of your project. Focus on enhancing usability, accessibility, and overall user satisfaction.

### Examples of Services

Choose one from the following list or propose other services for your project:

1. Car Repairing service
2. Photography
3. Cleaning Service
4. Mobile fix service
5. Laundry Service
6. Internet Service
7. Painting Service
8. Appliance Repair Service
9. Home Renovation Service
10. Tutoring Service
11. Travel agency Service
12. Event planning and management service
13. Computer Repair and IT Services
14. Interior Design and Decor Service
15. Wedding Planning and Coordination Service

### Assignment Submission

Your final submission should include:

- Source code (GitHub Repository link of frontend and backend)
- Live site link
- A recorded video providing an overview of your project within 2-5 minutes.

**Note:** Must submit your complete website. Incomplete assignments will not be accepted.