Loading repository data…
Loading repository data…
ccvarun / repository
Excel Starter Kit v2 is a production-ready template for building custom data apps. It’s a self-hosted, offline-first alternative to Airtable or Google Sheets featuring SQLite storage and full keyboard-driven editing. Optimized for Indian businesses, it includes robust Hindi support and zero subscription fees.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Excel Starter Kit v2 is a production-ready template for building data management apps. Think of it as a self-hosted, customizable alternative to Airtable or Google Sheets — but with full keyboard-driven Excel-like editing, offline SQLite storage, and zero subscription fees.
Built for Indian businesses and government offices that need robust data tools with Hindi language support.
| Feature | Description |
|---|---|
| ⚡ Virtual Scrolling | Handles 100K+ rows smoothly via @tanstack/react-virtual |
| ⌨️ Excel Keyboard Nav | Arrow keys, Tab, Enter, F2, Home/End, Page Up/Down, Ctrl+Arrows |
| ✏️ Inline Cell Editing | Text, number, currency, date — with autocomplete from master data |
| 📋 Copy / Paste | Ctrl+C, Ctrl+V — clipboard integration |
| ⬇️ Fill Down | Ctrl+D — copies value from cell above |
| 📌 Frozen Columns | Pin 1-3 columns to stay visible while scrolling |
| 🔍 Find & Replace | Ctrl+F / Ctrl+H with match highlighting |
| ↩️ Undo / Redo | Ctrl+Z / Ctrl+Y with full history stack |
| 📏 Column Resize | Drag to resize, double-click to auto-fit |
| 🎨 Conditional Formatting | Negative numbers (red), large amounts (green), status keywords (color-coded) |
| 🔽 Sorting & Filtering | Click headers to sort, per-column filter inputs |
| ☑️ Row Selection | Checkbox + Space bar + Ctrl+A, with bulk delete |
| 📤 Export | Excel (.xlsx) and PDF with one click |
| 🖨️ Print Preview | Full print preview with title customization |
| Layer | Tech | Highlights |
|---|---|---|
| Frontend | React 18 + TypeScript + Vite | Shadcn/ui, Sonner toasts, cmdk palette |
| Backend | Express.js + TypeScript | RESTful API, auto-migration |
| Database |
| SQLite (better-sqlite3) |
| Zero config, file-based, portable |
| State | Zustand | Lightweight, no boilerplate |
Every label supports English and Hindi (हिंदी) — toggle anytime from Settings.
excel-starter-kit-v2/
├── client/ # React frontend
│ ├── src/
│ │ ├── components/ # Reusable components
│ │ │ ├── GenericDataGrid.tsx # ⭐ The data grid
│ │ │ ├── AutocompleteInput.tsx # Smart cell editor
│ │ │ ├── CommandPalette.tsx # Ctrl+K launcher
│ │ │ ├── GlobalSearch.tsx # Cross-table search
│ │ │ ├── PrintPreview.tsx # Print with title
│ │ │ ├── StatusBar.tsx # Excel-like status bar
│ │ │ ├── TopNav.tsx # Navigation
│ │ │ └── WisdomOverlay.tsx # Motivational overlay
│ │ ├── pages/ # Route pages
│ │ │ ├── Dashboard.tsx
│ │ │ ├── SmartImport.tsx
│ │ │ ├── AuditTrail.tsx
│ │ │ ├── Settings.tsx
│ │ │ └── ... (15 pages)
│ │ ├── store/ # Zustand state
│ │ └── hooks/ # Export utilities
│ └── package.json
├── server/ # Express backend
│ ├── src/
│ │ ├── db/
│ │ │ └── schema.sql # Full schema + sample data
│ │ ├── routes/ # 13 API route modules
│ │ └── index.ts # Server entry
│ └── package.json
├── Start_Generic_v2.bat # One-click Windows launcher
├── package.json # Root orchestrator
└── .gitignore
# Clone the repo
git clone https://github.com/ccvarun/excel-starter-kit-v2.git
cd excel-starter-kit-v2
# Install all dependencies (root + client + server)
npm run install:all
# Start development server
npm run dev
The app will open at http://localhost:5173 with the API on port 4000.
Just double-click Start_Generic_v2.bat — it handles everything automatically.
| Shortcut | Action |
|---|---|
Arrow Keys | Navigate between cells |
Enter / F2 | Start editing cell |
Tab / Shift+Tab | Move to next/previous cell |
Ctrl+C | Copy cell value |
Ctrl+V | Paste into cell |
Ctrl+D | Fill down (copy from above) |
Ctrl+Z | Undo |
Ctrl+Y | Redo |
Ctrl+F | Find & Replace |
Ctrl+A | Select all rows |
Ctrl+K | Command Palette |
Space | Toggle row selection |
Delete | Delete selected rows |
Home / End | Jump to first/last column |
Ctrl+Home / Ctrl+End | Jump to first/last cell |
F1 | Keyboard shortcuts page |
The kit ships with 4 demo tables (easily customizable):
| Table | Purpose | Key Fields |
|---|---|---|
items | Inventory/assets | name, category, status, amount, quantity |
transactions | Financial records | ref_no, party_name, amount, payment_status |
tasks | Task management | title, priority, status, assigned_to |
contacts | People/vendors | name, company, email, phone, GST |
Plus supporting tables: change_log (audit), masters (dropdowns), settings, mini_workbooks, documents, alerts, wisdom_points.
server/src/db/schema.sqlserver/src/routes/ (copy genericTable.ts as template)client/src/pages/ (use DataTable.tsx as template)client/src/App.tsxThe GenericDataGrid component works with any data shape — just pass columns and data.
Toggle dark/light mode from Settings. CSS variables in index.css control all colors.
MIT — use it for anything. See LICENSE for details.
Contributions welcome! Please:
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)