Skip to content

MahithaJV/lost-and-found

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Lost and Found Portal

(This project solves the issue of tracking lost and found items efficiently for communities and colleges. It is continually being developed to include more features.)

A fully-featured, full-stack web application designed to help the community report, track, and reunite with their lost belongings. Built with a modern aesthetic, high performance, and secure authentication.

🚀 Tech Stack Used

🌐 Frontend (Client-Side)

  • Framework: React.js (via Vite)
  • Routing: React Router DOM (Protected routes & seamless navigation)
  • Styling: Tailwind CSS (v4) for responsive, rich, and dynamic user interfaces
  • HTTP Client: Axios (Configured with request interceptors for JWT)
  • Icons: Lucide-React (Clean, modern SVG icons)

⚙️ Backend (Server-Side)

  • Environment: Node.js
  • Framework: Express.js (REST API architecture)
  • Authentication: JSON Web Tokens (JWT) + Bcrypt (Password hashing)
  • File Uploads: Multer (Local static image storage)
  • Utilities: CORS (Cross-Origin Resource Sharing) & dotenv

🗄️ Database

  • Engine: MySQL
  • Driver: mysql2/promise (Promise-based MySQL client)

🛠️ Project Structure

The repository is divided into two entirely separate applications:

  • /frontend: Contains the Vite React application.
  • /backend: Contains the Node.js Express server.

💻 Getting Started

1. Prerequisites

  • Node.js installed on your machine.
  • MySQL Server installed and running on port 3306.

2. Database Setup

Ensure your MySQL instance has the username root and password root. Then, initialize the schema:

cd backend
node scripts/initDB.js

3. Running the Backend

In your terminal, navigate to the backend folder and start the server:

cd backend
npm run dev

The API will be available at http://localhost:5000.

4. Running the Frontend

Open a new, separate terminal, navigate to the frontend folder, and start the development server:

cd frontend
npm run dev

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


✨ Features

  • User Authentication: Secure login & registration using encrypted passwords and JWT tokens.
  • Interactive Dashboard: Users can safely manage, delete, or resolve their own posted items.
  • Reporting System: Report either a Lost or Found item, complete with categorized details, locations, and direct image uploads.
  • Dynamic Search & Filtering: Filter all items by "Lost" or "Found" status, and search dynamically through titles and descriptions.
  • Contact Integration: View direct contact information (Email) of the person who reported the item to facilitate the return.

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors