Skip to content

Client for ATTOMO Brief: A full-stack MERN application for managing accommodations and bookings, featuring roles for admins, and registered users.

License

Notifications You must be signed in to change notification settings

CallMeMaverick/ATTOMO-Brief-Client

Repository files navigation

ATTOMO Brief Client

API repo

This project is a part of the ATTOMO Digital test and is designed to showcase full-stack development skills by building a real-world accommodation booking platform. The platform provides functionalities for administrators, and registered users, enabling them to manage and book accommodations seamlessly.

🔎 Project Overview

The platform is built using the MERN stack, which includes MongoDB, Express, React, and Node.js, along with integration of Next.js for server-side rendering and enhanced performance. Styling is implemented using Tailwind CSS. Below is a brief overview of the key features and technologies used in this project:

💡 Key Features

  • Roles and Authentication:

    • Admin: Manages accommodations and user bookings, can add, edit, delete accommodations, and manage user profiles.
    • User (Registered): Can register, login, book accommodations, manage their profile, and view booking details.
  • Accommodation Management:

    • Admins can add, edit, and delete accommodations.
    • Users can book accommodations, and view availability.

⚙️ Technologies Used

  • Backend:
    • Node.js and Express: For building the RESTful API.
    • MongoDB: For database management to store user, accommodation, and booking data.
  • Frontend:
    • React: For building the dynamic and interactive user interface.
    • Next.js: For server-side rendering and improving performance and SEO.
    • Tailwind CSS: For styling and ensuring a responsive design.
  • Authentication:
    • JWT Email and password-based authentication for user registration and login.
  • Deployment:
    • Backend part is deployed on fly.io.
    • Frontend part is deployed on Vercel.

🛫 Getting Started

To get started with the project, clone the repository and follow the installation instructions provided in the subsequent sections. This README will guide you through the setup and usage of the platform.

👨🏻‍🎓 Installation

To set up the project locally, follow these steps:

Prerequisites

  • Node.js (v14.x or later)
  • Git

Frontend Setup

  1. Clone the Repository:

    git clone https://github.com/CallMeMaverick/ATTOMO-Brief-Client.git
    cd ATTOMO-Brief-Client
  2. Install Frontend Dependencies:

    npm install
  3. Start the Server:

    npm run dev

🤝 Contributing

If you'd like to contribute to this project, please open an issue first. This allows for discussion and planning before any code is written. Once the issue is discussed and approved, you can proceed with the following steps:

  1. Fork the Repository: Fork this repository to your own GitHub account and clone it to your local machine.

  2. Create a Feature Branch: Create a new branch from main for your feature or bug fix.

    git checkout -b feature/name
  3. Start cooking!

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

About

Client for ATTOMO Brief: A full-stack MERN application for managing accommodations and bookings, featuring roles for admins, and registered users.

Topics

Resources

License

Stars

Watchers

Forks