{"id":27136413,"url":"https://github.com/pondpilot/pondpilot","last_synced_at":"2025-04-08T02:54:31.295Z","repository":{"id":280368697,"uuid":"939647113","full_name":"pondpilot/pondpilot","owner":"pondpilot","description":"A lightweight local first SQL analytics tool. Get your data 🦆 in a row","archived":false,"fork":false,"pushed_at":"2025-04-01T20:20:27.000Z","size":1535,"stargazers_count":9,"open_issues_count":34,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-01T21:29:45.028Z","etag":null,"topics":["analytics","data","duckdb","sql","wasm"],"latest_commit_sha":null,"homepage":"https://app.pondpilot.io","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pondpilot.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-02-26T21:54:21.000Z","updated_at":"2025-04-01T20:20:30.000Z","dependencies_parsed_at":"2025-03-24T17:33:30.345Z","dependency_job_id":null,"html_url":"https://github.com/pondpilot/pondpilot","commit_stats":null,"previous_names":["pondpilot/pondpilot"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pondpilot%2Fpondpilot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pondpilot%2Fpondpilot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pondpilot%2Fpondpilot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pondpilot%2Fpondpilot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pondpilot","download_url":"https://codeload.github.com/pondpilot/pondpilot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247767250,"owners_count":20992541,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["analytics","data","duckdb","sql","wasm"],"created_at":"2025-04-08T02:54:30.677Z","updated_at":"2025-04-08T02:54:31.280Z","avatar_url":"https://github.com/pondpilot.png","language":"TypeScript","funding_links":[],"categories":["TypeScript"],"sub_categories":[],"readme":"# PondPilot - Get your data 🦆 in a row\n\n[![License: AGPL v3](https://img.shields.io/badge/License-AGPL%20v3-blue.svg)](https://www.gnu.org/licenses/agpl-3.0)\n\nPondPilot is a blazing-fast, lightweight, 100% client-side data exploration tool that helps you analyze local \u0026 remote data with no setup. Powered by DuckDB-Wasm, it runs entirely in your browser - no install, no servers, no cloud uploads, complete privacy.\n\n## 🔍 Features\n\n- **100% Client-Side**: All processing happens in your browser - no data ever leaves your device\n- **PWA Support**: Install PondPilot as a Progressive Web App for offline use\n- **No data-copy**: Unlike similar tools, PondPilot doesn't copy files into browser cache, instead accessing them directly. Any changes outside of PondPilot are reflected in real-time\n- **Read-only**: PondPilot doesn't write to your files, so you can be sure your data is safe\n- **Cross-session persistence**: All data-handles and queries are automatically saved and restored between sessions\n- **Powered by DuckDB**: Leverage the powerful SQL engine for fast analysis of large datasets\n- **Multiple File Formats**: Support for CSV, Parquet, JSON, DuckDB database and more coming soon\n- **Interactive SQL Editor**: Write and execute SQL queries with syntax highlighting and auto-completion\n- **Data Visualization**: View, filter, and sort your query results in an interactive table\n- **Full-text Schema Explorer**: Easily navigate through tables and columns with auto-generated metadata [coming soon]\n- **Data Export**: Export your query results to various formats for further analysis\n- **Keyboard Shortcuts**: Navigate efficiently with intuitive keyboard shortcuts\n- **Dark/Light Mode**: Choose the interface that's easiest on your eyes\n\n## 🖥️ Demo\n\n![](https://github.com/user-attachments/assets/a47547ba-3b25-440d-816a-05d47c7d60ec)\n\n## 🚀 Getting Started\n\n### Using the Web App\n\nThe easiest way to use PondPilot is through the hosted web app:\n\n1. Visit [https://app.pondpilot.io](https://app.pondpilot.io)\n2. Click \"Add file\" or use keyboard shortcut (Ctrl+F) to load your data\n3. Start exploring!\n\n### Browser Requirements\n\nAs of today PondPilot only guranteed to work best in Chrome due to the use of File System Access APIs not available in other browsers. Hopefully this will change in the future.\n\n### Running Locally\n\n#### Using Docker\n\nRun PondPilot with a single command:\n\n```bash\ndocker run -d -p 4173:80 --name pondpilot ghcr.io/pondpilot/pondpilot:latest\n```\n\nVisit `http://localhost:4173` in your browser to access the app.\n\n#### Using Yarn\n\nAlternatively, you can build \u0026 run PondPilot using Yarn:\n\n```bash\n# Clone the repository\ngit clone https://github.com/pondpilot/pondpilot.git\ncd pondpilot\n\n# Setup the project\ncorepack enable\nyarn\n\n# Start the development server\nyarn dev\n```\n\nVisit `http://localhost:5173` in your browser to access the app.\n\n## ⌨️ Keyboard Shortcuts\n\n- `Ctrl/⌘ + K`: Open spotlight menu to navigate, add files, create new queries and explore shortcuts\n- In editor:\n  - `Ctrl/⌘ + Enter`: Run the entire script\n  - `Ctrl/⌘ + Shift + Enter`: Run the query under the cursor\n- `Ctrl + F`: Add file to analyze\n- `Ctrl + D`: Add DuckDB file\n- `Ctrl + I`: Import SQL files\n\n## 🚀 Roadmap\n\nThe goal for PondPilot is to remain lightweight. We strive to quickly reach feature completeness and then accept only security fixes or updates to keep up with DuckDB.\n\nHere is what we are planning before reaching feature completeness:\n* LLM-based code suggestions\n* Basic statistics \u0026 metadata view without the need to run queries (think data distribution, column types, etc.)\n* Additional popular local \u0026 remote sources support: XLSX, SQLite, MotherDuck\n\n## 🏷️ Tagged Releases\n\nThe official [hosted version](https://app.pondpilot.io/) of PondPilot and the latest tag for our [Docker image](https://ghcr.io/pondpilot/pondpilot) are continuously updated based on the `main` branch. However, we occasionally tag releases to mark significant milestones. You can read the draft release notes for the upcoming tagged version and all released versions on the [release page](https://github.com/pondpilot/pondpilot/releases) or in the [CHANGELOG](CHANGELOG.md).\n\n## 🤝 Contributing\n\nWe welcome contributions from the community! Here's how to get started:\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/amazing-feature`)\n3. Commit your changes (`git commit -m 'Add some amazing feature'`)\n4. Push to the branch (`git push origin feature/amazing-feature`)\n5. Open a Pull Request\n\n## 🛠️ Development\n\n### Tech Stack\n\n- React 19 with TypeScript\n- Mantine UI components\n- Tailwind CSS for styling\n- DuckDB-WASM for data processing\n- Vite for building\n\n### Available Scripts\n\n- `yarn dev` - Start development server\n- `yarn build` - Build production version\n- `yarn preview` - Locally preview production build\n- `yarn typecheck` - Check TypeScript types\n- `yarn lint` - Run ESLint and Stylelint\n- `yarn prettier` - Check formatting\n- `yarn prettier:write` - Format code\n\n## Similar Projects\n\nDuckDB is awesome, and there are many similar proejcts out there. And there is even more SQL IDE's beyond that. We've been inspired by the following projects:\n\n* [Rill](https://github.com/rilldata/rill)\n* [QuackDB](https://github.com/mattf96s/QuackDB)\n* [TablePlus](https://tableplus.com)\n* [Outerbase Studio](https://github.com/outerbase/studio)\n* [harlequin](https://github.com/tconbeer/harlequin)\n* [duck-ui](https://github.com/caioricciuti/duck-ui)\n\nAnd many more!\n\n## 📜 License\n\nPondPilot is licensed under the GNU Affero General Public License v3.0. See the [LICENSE](LICENSE) file for details.\n\nThis means you're free to use, modify, and distribute the software, but if you make changes and provide the software as a service over a network, you must make your source code available to users of that service.\n\n## 🙏 Acknowledgments\n\n* Built with [DuckDB-WASM](https://github.com/duckdb/duckdb-wasm) - the powerful SQL database that runs in your browser\n* UI components by [Mantine](https://mantine.dev/)\n* This project incorporates and modifies code related to query editor from [Outerbase Studio](https://github.com/outerbase/studio) which is licensed under the GNU Affero General Public License v3.0.\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://app.pondpilot.io\"\u003eapp.pondpilot.io\u003c/a\u003e •\n  \u003ca href=\"https://github.com/pondpilot/pondpilot\"\u003eGitHub\u003c/a\u003e •\n  \u003ca href=\"https://t1a.com\"\u003eBuilt at T1A with ❤️\u003c/a\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpondpilot%2Fpondpilot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpondpilot%2Fpondpilot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpondpilot%2Fpondpilot/lists"}