Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/mahdi-q/freelancing-app-project

A web application where employers can create projects, and freelancers can carry out these projects.
https://github.com/mahdi-q/freelancing-app-project

employers freelancers freelancing freelancing-website web-application

Last synced: 1 day ago
JSON representation

A web application where employers can create projects, and freelancers can carry out these projects.

Awesome Lists containing this project

README

        

# Freelancing App Project

A web application where employers can create projects, and freelancers can carry out these projects.

## Table of Contents

- [Features](#features)
- [Packages](#packages)
- [Project Structure](#project-structure)
- [Acknowledgements](#acknowledgements)
- [Contact Information](#contact-information)

## Features

- **Fully responsive design styled with Tailwind CSS**
- **Built with a real backend API**
- **Phone number and OTP-based authentication**
- **Role-based authorization (Admin, Owner, Freelancer)**
- **Form validation using React Hook Form**
- **Data fetching handled with React Query**

## Packages

Key packages used in this project:

- **headlessui/react**: Accessible, unstyled components for custom UI design.
- **tanstack/react-query**: Manages server-side data with caching and synchronization.
- **axios**: HTTP client for making API requests.
- **query-string**: Parses and stringifies URL query strings.
- **react-hook-form**: Manages form state and validation with React Hooks.
- **react-hot-toast**: Customizable toast notifications for React.
- **react-icons**: Collection of popular icons for React projects.
- **react-loader-spinner**: Loading spinners for data-fetching states.
- **react-multi-date-picker**: Select multiple dates with a customizable date picker.
- **react-otp-input**: Customizable input for OTP (One-Time Password) fields.
- **react-router-dom**: Routing and navigation for React applications.
- **react-tag-input-component**: Tag input component for managing multiple tags.

## Project Structure

- `public/` - Contains static assets and public files.
- `Fonts/` - Fonts used in the project.
- `Images/` - Images used in the project.
- `src/` - Contains the main source code for the project.
- `Contexts/` - Provides dynamic props for use across multiple components.
- `Features/` - Components representing the project's main features.
- `Hooks/` - Custom hooks used throughout the project.
- `Pages/` - Different pages/routes in the application.
- `Services/` - API service files for data fetching.
- `UI/` - Reusable UI components frequently used in the project.
- `Utils/` - Utility functions shared across the application.

## Acknowledgements

Special thanks to [Saheb Mohammadi](https://github.com/sahebmohammadi) for developing the backend of this project.

## Contact Information

For any questions or feedback, please reach out at [[email protected]](mailto:[email protected]).

---

Thank you for using the Freelancing App!