Skip to content

shreyansh2005a/codeCar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1 Commit
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸͺ The Caravan Chronicle

A grievance redressal & city management platform designed for the Circus of Wonders, a traveling mobile city with performers, vendors, and roadies.

As the circus travels, infrastructure issues (like road damage, water leakage, and garbage pile-ups) often arise. Citizens can use The Caravan Chronicle to report problems, track resolutions, and ensure their temporary city runs as smoothly as the show itself.


✨ Features

  • User Registration & Login: Secure accounts for citizens, staff, and admins.
  • Complaint Submission: Report issues with text, location, and photo uploads.
  • Ticket Lifecycle: Status flow β†’ OPEN β†’ IN PROGRESS β†’ RESOLVED.
  • Dashboards:
    • Citizens: Track and manage complaints.
    • Staff: Assign, update, and resolve complaints.
    • Admin: Oversee metrics, manage staff, and generate reports.
  • Search & Filtering: Filter complaints by type, area, urgency, or date.
  • Notifications: Email/SMS/push alerts for updates.
  • Reports & Analytics: Export data in CSV/PDF and view resolution trends.

πŸ—οΈ Tech Stack

Frontend

  • React.js (or Next.js)
  • TailwindCSS

Backend

  • Node.js (Express)
  • MongoDB
  • JWT
  • Firebase

Utilities

  • Puppeteer / ReportLab for PDF reports
  • Docker for deployment

πŸ“‚ Folder Structure

caravan-chronicle/
β”‚
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ index.js
β”‚   β”œβ”€β”€ config.js
β”‚   β”œβ”€β”€ middleware/
β”‚   β”œβ”€β”€ models/
β”‚   β”œβ”€β”€ routes/
β”‚   β”œβ”€β”€ utils/
β”‚   β”œβ”€β”€ package.json
β”‚   └── package-lock.json
β”‚
β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ public/                # Static files
β”‚   β”œβ”€β”€ src/
β”‚   β”‚   β”œβ”€β”€ api/               # Axios API calls
β”‚   β”‚   β”œβ”€β”€ components/        # Reusable UI components
β”‚   β”‚   β”œβ”€β”€ pages/             # Page-level views
β”‚   β”‚   β”œβ”€β”€ hooks/             # Custom React hooks
β”‚   β”‚   β”œβ”€β”€ layouts/           # Dashboard layouts
β”‚   β”‚   β”œβ”€β”€ context/           # Auth & global state
β”‚   β”‚   β”œβ”€β”€ styles/            # CSS/Tailwind config
β”‚   β”‚   └── utils/             # Frontend utilities
β”‚   β”œβ”€β”€ package.json
β”‚
β”œβ”€β”€ docs/
β”‚   β”œβ”€β”€ architecture.md        # System design
β”‚   β”œβ”€β”€ api-spec.md            # API endpoints
β”‚   β”œβ”€β”€ user-stories.md        # User scenarios
β”‚   └── ui-wireframes/         # Mockups
β”‚
β”œβ”€β”€ scripts/                   # Deployment scripts
β”œβ”€β”€ .env                       # Environment variables
β”œβ”€β”€ docker-compose.yml         # Container setup
└── README.md

πŸš€ Getting Started

Prerequisites

  • Node.js >= 16
  • MongoDB
  • npm or yarn

Installation

# Clone the repo
git clone https://github.com/your-username/caravan-chronicle.git

# Backend setup
cd caravan-chronicle/backend
npm install
npm run dev

# Frontend setup
cd ../frontend
npm install
npm start

Environment Variables

Create a .env file in /backend with:

PORT=5000
DATABASE_URL=your_db_url
JWT_SECRET=your_secret_key
EMAIL_SERVICE_API=your_email_api_key
STORAGE_BUCKET=your_storage_bucket

πŸ“Š Product Flow

  1. Citizen logs in β†’ submits a complaint.
  2. Complaint marked as OPEN and visible in staff dashboard.
  3. Staff assigns themselves β†’ marks as IN PROGRESS.
  4. After resolution β†’ status updated to RESOLVED.
  5. Citizen notified of resolution.
  6. Admin reviews analytics and exports reports.

🀝 Contributing

  1. Fork the project
  2. Create a feature branch (git checkout -b feature/xyz)
  3. Commit changes (git commit -m 'Add new feature')
  4. Push to branch (git push origin feature/xyz)
  5. Open a Pull Request

πŸ“œ License

Distributed under the MIT License. See LICENSE for more information.


πŸ§‘β€πŸ’» Authors

  • Your Name - Initial Work
  • Open to Contributors πŸš€

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages