Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

196 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

ย 



๐Ÿง  Overview

ChargeGo is a full-stack powerbank-sharing platform that lets users find nearby charging stations, rent a powerbank with a single QR scan, use it on the go, and return it at any station โ€” all billed through an in-app wallet.

No more low-battery anxiety while commuting, traveling, or exploring.


๐ŸŽฏ Problem Statement

โŒ Problem โœ… ChargeGo Solution
Phone dies while traveling Rent a powerbank at any nearby station
No charger or outlet nearby Return at any location, not just where you rented
Complicated rental flows Scan โ†’ Rent โ†’ Go โ€” done in seconds
Cash-only systems Seamless in-app wallet payments

๐Ÿ”„ User Flow

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                                                         โ”‚
โ”‚   Sign Up / Login                                       โ”‚
โ”‚        โ†“                                                โ”‚
โ”‚   Browse Map  โ†’  Find Nearest Station                   โ”‚
โ”‚        โ†“                                                โ”‚
โ”‚   Scan QR Code  โ†’  Confirm Rental                       โ”‚
โ”‚        โ†“                                                โ”‚
โ”‚   Use Powerbank Anywhere  ๐Ÿ”‹                            โ”‚
โ”‚        โ†“                                                โ”‚
โ”‚   Return at Any Station                                 โ”‚
โ”‚        โ†“                                                โ”‚
โ”‚   Auto Billed via Wallet  ๐Ÿ’ณ                            โ”‚
โ”‚                                                         โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

โœจ Features

# Feature Description
๐Ÿ” Authentication Secure login & signup with JWT
๐Ÿ“ Station Finder Interactive map showing nearby stations
๐Ÿ”‹ QR Rental Scan to rent a powerbank instantly
๐Ÿ’ณ Wallet System In-app balance for seamless payments
๐Ÿ“Š Dashboard Track rentals, activity & history
๐Ÿ“ฑ Responsive UI Optimized for mobile & desktop

๐Ÿ—๏ธ Architecture

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”      HTTP/REST      โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”      Mongoose      โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                โ”‚  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–บ โ”‚                โ”‚  โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ–บ โ”‚                โ”‚
โ”‚  React + Vite  โ”‚                     โ”‚ Node + Express โ”‚                     โ”‚    MongoDB     โ”‚
โ”‚   (Frontend)   โ”‚  โ—„โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚   (Backend)    โ”‚  โ—„โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”‚   (Database)   โ”‚
โ”‚                โ”‚      JSON Data      โ”‚                โ”‚      Documents      โ”‚                โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜                     โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
      โ”‚                                       โ”‚
  Netlify                                  Render
 (Deployed)                              (Deployed)

๐Ÿ“‚ Project Structure

charge_go/
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ frontend/
โ”‚   โ”œโ”€โ”€ public/
โ”‚   โ””โ”€โ”€ src/
โ”‚       โ”œโ”€โ”€ ๐Ÿงฉ components/       # Reusable UI components
โ”‚       โ”œโ”€โ”€ ๐Ÿ“„ pages/            # Route-level pages
โ”‚       โ”œโ”€โ”€ ๐Ÿ”— context/          # Global state (Context API)
โ”‚       โ”œโ”€โ”€ ๐ŸŒ services/         # API service calls
โ”‚       โ””โ”€โ”€ ๐ŸŽจ assets/           # Images, icons, styles
โ”‚
โ”œโ”€โ”€ ๐Ÿ“ backend/
โ”‚   โ”œโ”€โ”€ โš™๏ธ  config/              # DB & env configuration
โ”‚   โ”œโ”€โ”€ ๐ŸŽฎ controllers/         # Business logic
โ”‚   โ”œโ”€โ”€ ๐Ÿ›ฃ๏ธ  routes/              # API route definitions
โ”‚   โ”œโ”€โ”€ ๐Ÿ—ƒ๏ธ  models/              # Mongoose schemas
โ”‚   โ”œโ”€โ”€ ๐Ÿ”’ middleware/           # Auth & error handlers
โ”‚   โ””โ”€โ”€ ๐Ÿš€ server.js            # App entry point
โ”‚
โ””โ”€โ”€ ๐Ÿ“„ README.md

๐Ÿ› ๏ธ Tech Stack

Frontend

Technology Role
React Component-based UI framework
Vite Lightning-fast build tool
React Router Client-side routing
Context API Global state management

Backend

Technology Role
Node.js JavaScript runtime
Express.js REST API framework
JWT Secure authentication tokens
Mongoose MongoDB ODM

Infrastructure

Service Purpose
MongoDB Atlas Cloud database
Netlify Frontend deployment
Render Backend hosting

๐Ÿš€ Getting Started

1. Clone the Repository

git clone https://github.com/ShahArpanPratikkumar/charge_go.git
cd charge_go

2. Frontend Setup

cd frontend
npm install
npm run dev

3. Backend Setup

cd backend
npm install
npm start

Frontend runs on http://localhost:5173 ยท Backend runs on http://localhost:5000


๐Ÿ” Environment Variables

Create a .env file inside the backend/ directory:

# Database
MONGO_URI=your_mongodb_connection_string

# Auth
JWT_SECRET=your_super_secret_key

# CORS
CLIENT_URL=http://localhost:5173

๐Ÿ“ก API Reference

Auth Routes

Method Endpoint Description
POST /api/auth/register Create a new user account
POST /api/auth/login Login and receive JWT token

User Routes

Method Endpoint Description
GET /api/user/profile Get current user profile

Rental Routes

Method Endpoint Description
POST /api/rental/start Start a powerbank rental
POST /api/rental/end End rental & process payment

๐Ÿ”ฎ Roadmap

  • ๐Ÿ—บ๏ธ Real-time station availability tracking
  • ๐Ÿ’ฐ Razorpay / Stripe payment gateway
  • ๐Ÿ›ก๏ธ Admin dashboard for station management
  • ๐Ÿ“ฒ Push notifications for rental status
  • ๐ŸŒ Multi-language support
  • ๐Ÿ“ฑ React Native mobile app

๐Ÿ‘จโ€๐Ÿ’ป Author

Shah Arpan Pratikkumar


โšก Built with passion by Shah Arpan Pratikkumar ยท ChargeGo ยฉ 2025

  • Added system improvement phase #1 on May 02, 2026

  • Added system improvement phase #2 on May 02, 2026

  • Added system improvement phase #3 on May 02, 2026

  • Added system improvement phase #4 on May 02, 2026

  • Added system improvement phase #5 on May 02, 2026

  • Added system improvement phase #6 on May 02, 2026

  • Added system improvement phase #7 on May 02, 2026

  • Added system improvement phase #8 on May 02, 2026

  • Added system improvement phase #1 on May 02, 2026

  • Added system improvement phase #2 on May 02, 2026

  • Added system improvement phase #3 on May 02, 2026

  • Added system improvement phase #4 on May 02, 2026

  • Added system improvement phase #5 on May 02, 2026

  • Added system improvement phase #6 on May 02, 2026

  • Added system improvement phase #7 on May 02, 2026

  • Added system improvement phase #8 on May 02, 2026

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages