π§ This project is under active development and not yet suitable for production use. Expect breaking changes, incomplete features, and evolving APIs.
Qwery is the most capable platform for querying and visualizing data without requiring any prior technical knowledge in data engineering. Using natural language in any supported language, Qwery seamlessly integrates with hundreds of datasources, automatically generates optimized queries, and delivers outcomes across multiple targets including result sets, dashboards, data apps, reports, and APIs.
- Choose your environment: Download the desktop application or connect to the Qwery Cloud Platform
- Connect your data: Link to your databases, APIs, or other datasources
- Start querying: Use natural language to query your datasources instantly
- Work with AI agents: Press
CMD/CTRL + Lto collaborate with intelligent agents that assist with your data workflows
- Natural Language Querying: Ask questions in plain language, get SQL automatically
- Multi-Database Support: PostgreSQL, MySQL, MongoDB, DuckDB, ClickHouse, SQL Server, and more
- AI-Powered Agents: Intelligent assistants that help with data workflows (CMD/CTRL + L)
- Visual Data Apps: Build dashboards and data applications without code
- Desktop & Cloud: Run locally or use our cloud platform
- Template Library: Pre-built notebooks, queries, and dashboards
- Extensible: Plugin system for custom datasources and integrations
- Node.js >= 22.x
- pnpm >= 10.x
# Clone the repository
git clone https://github.com/Guepard-Corp/qwery-core.git
cd qwery-core
# Install dependencies
pnpm install
# Start development server
pnpm devThe web app will be available at http://localhost:3000
# Build and run desktop app
pnpm desktop:devThis is a Turborepo monorepo with the following structure:
apps/web- Main React Router SaaS applicationapps/cli- Command-line interfaceapps/desktop- Desktop application (Electron)apps/e2e- Playwright end-to-end testspackages/features/*- Feature packagespackages/- Shared packages and utilitiestooling/- Build tools and development scripts
# Start all apps in development mode
pnpm dev
# Start specific app
pnpm --filter web dev # Web app (port 3000)
pnpm --filter desktop dev # Desktop app
# Code Quality
pnpm format:fix # Auto-fix formatting
pnpm lint:fix # Auto-fix linting issues
pnpm typecheck # Type checking
pnpm check # Run all quality checks (format, lint, typecheck, build, test)
# Build
pnpm build # Build all packages
# Testing
pnpm test # Run all tests- TypeScript: Strict type checking, avoid
anytypes - Linting: ESLint with strict rules
- Formatting: Prettier with consistent style
- Testing: Vitest for unit tests, Playwright for E2E
Always run pnpm check before committing to ensure all quality checks pass.
We welcome contributions! Check out our Contributing Guide to get started.
- Run
pnpm checkto ensure all quality checks pass - Make sure your code follows our TypeScript guidelines
- Write tests for new features
- Update documentation as needed
- Review good first issues
- Read our Code of Conduct
- Check AGENTS.md for development guidelines
- Join our Discord community
- Discord: Join our Discord for discussions and support
- GitHub Issues: Report bugs and request features
- YouTube: Watch demos and tutorials
This project uses the Elastic License 2.0 (ELv2). See the LICENSE file for details.
We're grateful to the open source community. See our Thank You page for acknowledgments.