Modern desktop application for SQL database management
TableMoins is an open-source clone of TablePlus, developed with Electron, React and TypeScript. It offers an intuitive interface to manage your MySQL and PostgreSQL databases.
- ✅ Modern user interface with Ant Design
- ✅ Electron + React + TypeScript architecture
- ✅ Integrated logging system
- ✅ Theme management (light/dark)
- ✅ ESLint + Prettier configuration
- 🔌 Database connection management
- 🗂️ Database structure explorer
- 📊 Data viewer with pagination
- ✏️ SQL editor with syntax highlighting
- 🔍 Advanced search and filtering
- 📤 Import/Export (CSV, JSON, SQL)
- 🛡️ Security and connection encryption
- ⚡ Performance optimizations
- 🔌 Extensible plugin system
- 🏢 Enterprise features
- Desktop Framework: Electron 28+
- Frontend: React 18+ with TypeScript
- UI Library: Ant Design
- State Management: Zustand
- Database Drivers: mysql2, pg, better-sqlite3
- Build Tool: Vite
- Testing: Jest + Playwright
- Node.js 18+
- npm 8+
# Clone the repository
git clone <repository-url>
cd TableMoins
# Install dependencies
npm install
# Copy environment variables
cp .env.example .env# Start in development mode
npm run dev
# Build for production
npm run build
# Run tests
npm test
# Linting and formatting
npm run lint
npm run format| Script | Description |
|---|---|
npm run dev |
Development with hot reload |
npm run build |
Production build |
npm run build:all |
Build + Electron packaging |
npm test |
Unit tests |
npm test:e2e |
End-to-end tests |
npm run lint |
ESLint linting |
npm run format |
Prettier formatting |
src/
├── main/ # Electron main process
│ ├── main.ts # Main entry point
│ ├── menu.ts # Application menu
│ └── ipc-handlers.ts # IPC handlers
├── renderer/ # Electron renderer process
│ ├── components/ # React components
│ ├── pages/ # Application pages
│ ├── stores/ # State management (Zustand)
│ ├── styles/ # CSS styles
│ └── main.tsx # React entry point
├── shared/ # Shared code
│ ├── types/ # TypeScript types
│ ├── constants/ # Constants
│ └── utils/ # Utilities
└── database/ # Database management
├── drivers/ # MySQL/PostgreSQL drivers
└── models/ # Data models
The interface is built with Ant Design and follows Material Design principles. It includes:
- Sidebar: Navigation and connection management
- Main area: Data visualization and SQL editor
- Toolbar: Quick actions and settings
- Modular panels: Resizable and customizable
- AES-256 encryption for passwords
- SSL/TLS support for remote connections
- Strict user input validation
- Audit trail for sensitive actions
Contributions are welcome! Please:
- Fork the project
- Create a branch for your feature
- Commit your changes
- Push to the branch
- Open a Pull Request
- Follow TypeScript conventions
- Write tests for new features
- Follow established patterns
- Maintain test coverage > 80%
MIT License - see the LICENSE file for more details.
Inspired by TablePlus and developed with passion for the open-source community.
This project was fully developed using AI pair programming with Claude Code, Anthropic's official CLI for Claude. From initial architecture to final deployment, every feature was crafted through AI-assisted development.
Claude Code enables:
- 🏗️ Full-stack development - Frontend, backend, database, and deployment
- 🔧 Modern toolchain integration - Vite, TypeScript, Electron, React
- 🚀 End-to-end automation - From code generation to GitHub releases
- 🎯 Best practices enforcement - Security, performance, and maintainability
- 📱 Cross-platform builds - macOS, Windows, and Linux support
Discover the future of development at claude.ai/code