Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Typing SVG

Status Frontend Backend Database License




🏒 Exterior β€” Project Overview

"Don't let a lead go cold. Track, engage, and close with speed."

Key Value
Name Mini-CRM Lead Manager (LeadFlow)
Version 1.0.0
Status 🟒 Active
Type Full-Stack Web Application
URL GitHub Repository
Primary Stack React, Express, MongoDB (MERN)
License MIT
Author Prithish Misra

πŸšͺ Reception β€” About the Project

Mini-CRM Lead Manager is a streamlined Customer Relationship Management tool designed for small teams and independent professionals. It eliminates the bloat of enterprise CRMs, focusing purely on what matters: tracking leads, monitoring statuses, and converting prospects into clients.

πŸ‘₯ Who is this for?

User Type Use Case
Freelancers Keep track of potential clients and follow-up schedules.
Sales Reps Maintain a clean pipeline of active and converted leads.
Small Agencies Share a centralized dashboard of incoming inquiries.

πŸ” The Core Problem

❌ Before:
Managing leads in chaotic spreadsheets, forgetting follow-ups, and losing track of who is a 'Hot' prospect vs a 'Cold' one.

βœ… After:
A centralized, fast, and visual dashboard where every lead has a clear status, contact info, and history.

πŸ‘” Vision Floor

🎯 Purpose

To provide a frictionless, zero-learning-curve CRM that empowers users to manage their sales pipeline intuitively.

πŸ“ Design Philosophy

Principle Application
Minimalist UI TailwindCSS is used to create a clean, distraction-free interface.
Speed over Features Vite ensures lightning-fast frontend loads and HMR during development.
Data Integrity Mongoose schemas enforce strict validation before leads enter the database.

πŸ“¦ Product Floor

🌟 Feature Set

Feature Description Status
Lead Dashboard View all leads in a tabular/card format. 🟒 Active
Status Tracking Change lead status (New, Contacted, Qualified, Lost). 🟒 Active
Lead Creation Add new leads with contact details and notes. 🟒 Active
Search & Filter Quickly find leads by name or filter by status. 🟑 In Progress

πŸ”„ User Flow Scenario

flowchart TD
    A[User Logs In] --> B[Dashboard View]
    B --> C{Action Required?}
    C -->|Add New Lead| D[Fill Lead Form]
    C -->|Update Status| E[Select Lead]
    D --> F[Save to Database]
    E --> G[Change Status to 'Contacted']
    F --> B
    G --> B
Loading

βš™οΈ Engineering Floor

πŸ—οΈ System Architecture

graph TB
    subgraph Client [Frontend - React/Vite]
        UI[UI Components] --> API_Service[Axios API Client]
    end
    subgraph Server [Backend - Node/Express]
        Router[Express Routes] --> Controller[Lead Controllers]
        Controller --> Model[Mongoose Models]
    end
    subgraph Database [MongoDB]
        DB[(Leads Collection)]
    end
    API_Service -- HTTP REST --> Router
    Model -- Mongoose ODM --> DB
Loading

πŸ—‚οΈ Folder Structure

Mini-CRM-Lead-Manager-/
β”œβ”€β”€ client/                 # React Frontend via Vite
β”‚   β”œβ”€β”€ src/                # UI Components, Pages, Axios Config
β”‚   β”œβ”€β”€ package.json        # Frontend Dependencies
β”‚   └── tailwind.config.js  # Styling configuration
└── server/                 # Express Backend
    β”œβ”€β”€ config/             # Database connection (db.js)
    β”œβ”€β”€ models/             # Mongoose Schemas (e.g., Lead.js)
    β”œβ”€β”€ routes/             # API Endpoints (leads.js)
    β”œβ”€β”€ server.js           # Express Entry Point
    └── package.json        # Backend Dependencies

πŸ’» Technology Stack

Layer Technology Purpose
Frontend React 19, Vite, TailwindCSS Fast UI rendering and responsive styling.
State/Data Axios, React Hot Toast API communication and user notifications.
Backend Express 5, Node.js Robust RESTful API creation.
Database MongoDB, Mongoose NoSQL data storage and object modeling.

πŸ”Œ API Reference

Method Endpoint Description
GET /api/leads Fetch all leads.
POST /api/leads Create a new lead.
PUT /api/leads/:id Update a lead's status or details.
DELETE /api/leads/:id Remove a lead from the system.

☁️ Infrastructure Floor

πŸ› οΈ Local Setup Instructions

  1. Clone the repository:

    git clone https://github.com/prithishmisra23/Mini-CRM-Lead-Manager-.git
    cd Mini-CRM-Lead-Manager-
  2. Setup Backend:

    cd server
    npm install
    # Create a .env file with your MONGO_URI
    npm run dev
  3. Setup Frontend (In a new terminal):

    cd client
    npm install
    npm run dev

πŸ” Environment Variables

Variable Location Purpose
PORT server/.env The port the Express server runs on (default: 5000).
MONGO_URI server/.env Connection string for MongoDB database.

πŸ”’ Security Center

Check Status Recommendation for Production
CORS 🟑 Enabled Restrict cors() to specific frontend domains.
Environment Vars 🟒 Secured Never commit .env files.
Data Validation 🟒 Enabled Mongoose handles required fields and types.
Authentication πŸ”΄ Missing Implement JWT or NextAuth before public release.

πŸ“Š Operations Room

🌿 Git Strategy

gitGraph
    commit id: "init"
    branch backend
    checkout backend
    commit id: "setup express & mongo"
    commit id: "lead routes"
    checkout main
    merge backend
    branch frontend
    checkout frontend
    commit id: "vite + react setup"
    commit id: "dashboard ui"
    checkout main
    merge frontend
    commit id: "docs: premium readme"
Loading


"The fortune is in the follow-up."

GitHub Profile

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages