Skip to content

vanshika-CG/offline_coder

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

6 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ OfflineCoder

Screenshot 2026-05-31 200828

🚧 Work In Progress

OfflineCoder is currently under active development.

Some features mentioned below are implemented, while others are being actively developed and tested.

Current Development Status

  • βœ… Chrome Extension Problem Scraping
  • βœ… React Frontend
  • βœ… Express Backend
  • βœ… SQLite Storage
  • βœ… PWA Setup
  • βœ… Offline Caching
  • βœ… Problem Library

In Development

  • 🚧 Integrated Code Editor
  • 🚧 Judge0 Execution Engine
  • 🚧 Submission Tracking
  • 🚧 Dynamic Playlists
  • 🚧 Revision Analytics
  • 🚧 Cloud Sync

Planned

  • πŸ“Œ AI Revision Assistant
  • πŸ“Œ Mobile Application
  • πŸ“Œ Company-wise Tracking
  • πŸ“Œ Contest Archive
  • πŸ“Œ Offline Code Runner

πŸ“– About

OfflineCoder is a full-stack Progressive Web Application (PWA) ecosystem built for developers preparing for coding interviews, competitive programming, and technical assessments.

The platform allows users to save coding problems from LeetCode and continue practicing them completely offline.

No internet.

No interruptions.

Just coding.


✨ Key Features

🌐 LeetCode Saver Extension

Save coding problems directly from LeetCode.

Features

  • One-click Save Offline button
  • Automatic problem extraction
  • Constraint detection
  • Difficulty identification
  • Starter code generation
  • Local persistence

🧠 Smart Problem Analysis

OfflineCoder attempts to analyze problems automatically.

Detects

  • Arrays
  • Strings
  • Hash Tables
  • Trees
  • Graphs
  • BFS
  • DFS
  • Dynamic Programming
  • Binary Search
  • Greedy
  • Backtracking

Extracts

  • Constraints
  • Examples
  • Function Signatures
  • Metadata

⚑ Offline Workspace

Dashboard

Track:

  • Problems Saved
  • Problems Solved
  • Revision Progress
  • Recent Activity

Library

Search and filter by:

  • Difficulty
  • Tags
  • Status
  • Creation Date

Notes

Add personal notes to every problem.

Revision Playlists

Create collections such as:

  • Blind 75
  • Dynamic Programming
  • Interview Preparation
  • Weekly Revision

πŸ“± Progressive Web App

OfflineCoder behaves like a native application.

Benefits

  • Installable
  • Offline Access
  • Fast Loading
  • Cached Assets
  • Mobile Friendly

πŸ›‘ Backend API

Built using:

Node.js
Express.js
SQLite

Modules

  • Authentication
  • Problem Management
  • Notes
  • Playlists
  • User Profiles
  • Admin Routes

πŸ— System Architecture

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚      LeetCode Website      β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚
               β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Chrome Extension           β”‚
β”‚ LeetCode Saver πŸš€          β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚
               β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ Express Backend API        β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚
               β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ SQLite Database            β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
               β”‚
               β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚ React + PWA Frontend       β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ”„ Workflow

1. Save

User opens a LeetCode problem.

Extension injects:

Save Offline πŸš€

button.


2. Analyze

Problem data is extracted.

OfflineCoder attempts to:

  • Identify tags
  • Extract constraints
  • Detect difficulty
  • Generate templates

3. Store

Data is saved locally and in SQLite.


4. Practice

Users can:

  • Browse saved questions
  • Read notes
  • Create playlists
  • Solve problems

even without internet access.


πŸ›  Tech Stack

Layer Technology
Frontend React 18
Build Tool Vite
Styling Tailwind CSS
Icons Lucide React
Backend Node.js
Framework Express.js
Database SQLite
ORM/Driver better-sqlite3
Extension Manifest V3
Offline Support Service Workers

πŸ“‚ Project Structure

OfflineCoder/
β”‚
β”œβ”€β”€ frontend/
β”‚   β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ public/
β”‚   └── vite.config.js
β”‚
β”œβ”€β”€ backend/
β”‚   β”œβ”€β”€ routes/
β”‚   β”œβ”€β”€ controllers/
β”‚   β”œβ”€β”€ middleware/
β”‚   β”œβ”€β”€ database/
β”‚   └── server.js
β”‚
β”œβ”€β”€ extension/
β”‚   β”œβ”€β”€ manifest.json
β”‚   β”œβ”€β”€ content.js
β”‚   β”œβ”€β”€ popup.html
β”‚   └── popup.js
β”‚
└── README.md

βš™οΈ Installation

Clone Repository

git clone https://github.com/YOUR_USERNAME/OfflineCoder.git

cd OfflineCoder

Backend Setup

cd backend

npm install

npm start

Create:

PORT=3001

Frontend Setup

cd frontend

npm install

npm run dev

Install Extension

  1. Open:
chrome://extensions
  1. Enable Developer Mode

  2. Click Load Unpacked

  3. Select:

extension/
  1. Open LeetCode

  2. Start Saving Problems πŸš€


πŸ“ˆ Roadmap

Version 1.1

  • Monaco Code Editor
  • Local Test Cases
  • Enhanced Search

Version 1.2

  • Judge0 Integration
  • Submission History
  • Progress Tracking

Version 2.0

  • AI Assistant
  • Mobile App
  • Cloud Synchronization
  • Contest Management

🀝 Contributing

Contributions are welcome.

Fork Repository

Create Feature Branch

Commit Changes

Push Branch

Open Pull Request

🌟 Why OfflineCoder?

Most coding platforms assume internet connectivity.

OfflineCoder focuses on:

βœ… Offline Learning

βœ… Personal Knowledge Base

βœ… Efficient Revision

βœ… Coding Interview Preparation

βœ… Progressive Web Experience


πŸ“„ License

Distributed under the ISC License.

See LICENSE for details.


πŸ‘¨β€πŸ’» Author

Vanshika Jangam

Computer Engineering Student β€’ Full Stack Developer β€’ Open Source Enthusiast

If you like this project, consider giving it a ⭐ on GitHub.

About

No description, website, or topics provided.

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors