Skip to content

Arabity is a two-sided marketplace that connects car owners with qualified mechanics for routine maintenance or repairs.

Notifications You must be signed in to change notification settings

ibrahim-embaby/arabity

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Arabity

Arabity connects car owners with qualified mechanics for routine maintenance or repairs.

Whether you need routine maintenance such as oil changes and brake inspections, or more extensive repairs, Arabity makes it easy to connect with reputable mechanics who have the skills and expertise to get the job done right. By using Arabity, car owners can feel confident that their vehicles are in good hands and receive top-notch service.

Demo - Visit Now 🚀

Netlify Status

🖥️ Tech Stack

Frontend:

reactjs  react-router  redux-toolkit  PWA 

Backend:

nodejs  expressjs  mongodb  jwt  amazons3 

Realtime Communication:

socketio

Deployed On:

netlify

🚀 Features

  • ✅ Login/Signup User/Mechanic Account
  • ✅ Full Authentication & Authorization System
  • ✅ Update Profile/Password User Account
  • ✅ Search Mechanic Accounts by Province, Car Model, and Service Type
  • ✅ Results Pagination
  • ✅ View Mechanic Profiles
  • ✅ Rate on Mechanic
  • ✅ User/Mechanic Post & Comment feature
  • ✅ Real Time User-to-Mechanic Chat
  • ✅ Multilingual (Arabic/English)
  • ✅ Emoji Enabled (Emoji Mart)
  • ✅ Reset Password Mail using Nodemailer

⌛ Upcoming Features

  • 🚧 User Notfications
  • 🚧 Search Results Sorting
  • 🚧 Search By City After Selecting Province
  • 🚧 Admin Dashboard

Sneak Peek of Website Pages ✨:

home

mockup mockups
mockup mockups
mockups

Usage

Env Variables

Create a .env file in the server folder and add the following

PORT=8000
MONGO_URI= your mongodb uri
ACCESS_TOKEN_SECRET=access_token_secret
REFRESH_TOKEN_SECRET=refresh_token_secret
ACTIVATION_SECRET_KEY=activation_secret_key
RESET_PASSWORD_SECRET_KEY=reset_password_secret_key
CLIENT_URL=http://localhost:3000
SEND_IN_BLUE_USERNAME= your sendinblue username
SEND_IN_BLUE_PASSWORD= your sendinblue password
REDIS_HOST= your redis host
REDIS_PASSWORD= your redis password
AWS_IAM_ACCESS_KEY= your Aws IAM access key
AWS_IAM_SECRET_ACCESS_KEY= your Aws IAM secret access key
AWS_S3_BUCKET_NAME= your Aws S3 bucket name
AWS_S3_BUCKET_REGION= your Aws S3 region

Create a .env file in the client folder and add the following

REACT_APP_SERVER_URL=http://localhost:8000

Install Dependencies (frontend & backend)

cd client
npm i
cd ../server
npm i

Run

# Run frontend (:3000)
npm start

# Run backend (:8000)
npm run dev

📬 Contact

If you want to contact me, you can reach me through below handles.

linkedin

© 2024 Ibrahim Mohamed