a cross-platform system enabling users to upload spreadsheet files, which are parsed and converted into DuckDB tables. A distilled SLM (DistilBERT/Gemma2) automates schema inference, multi-table relation mapping, and NL2SQL conversation for dynamic, user-driven analysis—all performed offline/locally on the device for maximum privacy.
Python
2
3 commits
updated Aug 17, 2025
A privacy-first, cross-platform desktop application for analyzing local CSV/XLSX files using natural language queries.
cd backend
pip install -e .
python main.py
cd frontend
npm install
npm run electron:dev
The application will start with the backend running on port 8000 and the Electron app launching automatically.
cd backend
pip install pyinstaller
python build.py
This creates a standalone executable in backend/dist/.
cd frontend
npm install
npm run build
npm run electron:build
This creates platform-specific installers in frontend/dist/.
For a complete build of both components:
# Build backend
cd backend
python build.py
# Build frontend with backend included
cd ../frontend
npm run dist
dataquery-ai/
├── backend/ # Python FastAPI backend
│ ├── main.py # FastAPI application
│ ├── data_manager.py # Data processing with DuckDB
│ ├── ai_engine.py # AI-powered NL2SQL engine
│ ├── build.py # Build automation
│ └── pyproject.toml # Python dependencies
├── frontend/ # Electron + React frontend
│ ├── src/ # React application source
│ ├── electron/ # Electron main process
│ ├── package.json # Node.js dependencies
│ └── vite.config.js # Vite configuration
└── README.md # This file
cd backend
pip install -e .
python main.py
API documentation available at http://127.0.0.1:8000/docs
cd frontend
npm run dev # Start Vite dev server
npm run electron # Start Electron (in another terminal)
# Backend tests
cd backend
pytest
# Frontend tests
cd frontend
npm test
.exe).dmg).AppImage)Backend won't start:
pip install -e .Frontend build fails:
rm -rf node_modules && npm installLarge executable size:
MIT License - see LICENSE file for details.
a cross-platform system enabling users to upload spreadsheet files, which are parsed and converted into DuckDB tables. A distilled SLM (DistilBERT/Gemma2) automates schema inference, multi-table relation mapping, and NL2SQL conversation for dynamic, user-driven analysis—all performed offline/locally on the device for maximum privacy.
Python
2
3 commits
updated Aug 17, 2025
A privacy-first, cross-platform desktop application for analyzing local CSV/XLSX files using natural language queries.
cd backend
pip install -e .
python main.py
cd frontend
npm install
npm run electron:dev
The application will start with the backend running on port 8000 and the Electron app launching automatically.
cd backend
pip install pyinstaller
python build.py
This creates a standalone executable in backend/dist/.
cd frontend
npm install
npm run build
npm run electron:build
This creates platform-specific installers in frontend/dist/.
For a complete build of both components:
# Build backend
cd backend
python build.py
# Build frontend with backend included
cd ../frontend
npm run dist
dataquery-ai/
├── backend/ # Python FastAPI backend
│ ├── main.py # FastAPI application
│ ├── data_manager.py # Data processing with DuckDB
│ ├── ai_engine.py # AI-powered NL2SQL engine
│ ├── build.py # Build automation
│ └── pyproject.toml # Python dependencies
├── frontend/ # Electron + React frontend
│ ├── src/ # React application source
│ ├── electron/ # Electron main process
│ ├── package.json # Node.js dependencies
│ └── vite.config.js # Vite configuration
└── README.md # This file
cd backend
pip install -e .
python main.py
API documentation available at http://127.0.0.1:8000/docs
cd frontend
npm run dev # Start Vite dev server
npm run electron # Start Electron (in another terminal)
# Backend tests
cd backend
pytest
# Frontend tests
cd frontend
npm test
.exe).dmg).AppImage)Backend won't start:
pip install -e .Frontend build fails:
rm -rf node_modules && npm installLarge executable size:
MIT License - see LICENSE file for details.