Skip to content

Ashitosh2004/LabourIn

Repository files navigation

LabourIn — Labour Connect

Connecting workers and employers, seamlessly.

LabourIn is a modern web application that bridges the gap between daily-wage workers and employers. It provides a platform for job posting, worker discovery, real-time chat, location-based job matching, and profile management.


✨ Features

  • 🔐 Authentication — Secure sign-up and login for workers and employers
  • 🗺️ Map-Based Job Discovery — Find nearby jobs using Google Maps integration
  • 📋 Job Posting — Employers can quickly post job listings with required skills and pay
  • 💬 Real-Time Chat — In-app messaging between workers and employers
  • 👤 Profile Management — Detailed worker and employer profiles
  • 📊 Dashboard — Personalized dashboard with relevant job and activity stats

🛠️ Tech Stack

Layer Technology
Frontend React 18, TypeScript, Vite
UI Components shadcn/ui, Radix UI, Tailwind CSS
Animations Framer Motion
Routing React Router v6
Forms React Hook Form + Zod
Maps @react-google-maps/api
Backend / Auth Firebase (Auth + Firestore)
Mobile (Hybrid) Capacitor
State Management TanStack Query

🚀 Getting Started

Prerequisites

  • Node.js ≥ 18
  • npm ≥ 9

Installation

# Clone the repository
git clone https://github.com/Ashitosh2004/LabourIn.git
cd LabourIn

# Install dependencies
npm install

Development

npm run dev

The app will be available at http://localhost:5173.

Production Build

npm run build
npm run preview

📁 Project Structure

src/
├── components/       # Reusable UI components
│   ├── dashboard/    # Dashboard-specific components
│   ├── layout/       # Layout wrappers (navbar, sidebar, etc.)
│   └── ui/           # shadcn/ui base components
├── contexts/         # React context providers
├── hooks/            # Custom React hooks
├── lib/              # Utility functions and Firebase config
├── pages/            # Application pages / routes
│   ├── AuthPage.tsx
│   ├── ChatPage.tsx
│   ├── Dashboard.tsx
│   ├── Index.tsx
│   ├── MapPage.tsx
│   ├── PostJob.tsx
│   └── ProfilePage.tsx
└── main.tsx          # App entry point

📱 Mobile (Capacitor)

This project supports mobile deployment via Capacitor:

# Build the web app first
npm run build

# Sync with Capacitor
npx cap sync

# Open in Android Studio
npx cap open android

🧪 Testing

# Run tests once
npm test

# Run tests in watch mode
npm run test:watch

📄 License

This project is for educational and personal use.


👤 Author

Ashitosh@Ashitosh2004

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages