croft
Data pipelines in TypeScript, on one DuckDB file
About croft
Croft is an innovative open-source data pipeline tool designed for developers who prefer working with TypeScript and SQL. It enables users to effortlessly pull data from APIs and files, transform it using familiar SQL queries or TypeScript code, and keep datasets up-to-date on a scheduled basis. All data resides within a single DuckDB file, streamlining data management and access. A standout feature is the automatic generation of types for each table, enhancing type safety and developer experience. Additionally, Claude Code integration allows for seamless automation and control. By eliminating dependencies on Python and offering an easy-to-use, unified environment, Croft appeals to modern data engineers and developers seeking simplicity, flexibility, and performance in their data workflows.
Screenshots






Pros
- ✓Single DuckDB file simplifies data management
- ✓Supports transformations with SQL or TypeScript, familiar to developers
- ✓Generates types automatically for safer code
- ✓Open source and free, with no Python dependency
- ✓Integrates with Claude Code for automation
Cons
- ✗Still relatively new, with a smaller community and ecosystem
- ✗Features and integrations may be limited compared to mature tools
- ✗Requires familiarity with SQL and TypeScript, which might have a learning curve for some users
Use Cases
Pricing
Pricing not verified
Quick Info
Topics
Makers
James Lee
Similar Tools in Developer Tools
Embed Badge
Add this badge to your website to show that croft is featured on Visalytica.
<a href="https://www.visalytica.com/tool/croft" target="_blank" rel="noopener noreferrer" style="display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:#7c3aed;color:#fff;border-radius:8px;font-family:-apple-system,system-ui,sans-serif;font-size:13px;font-weight:600;text-decoration:none;transition:background .2s" onmouseover="this.style.background='#6d28d9'" onmouseout="this.style.background='#7c3aed'"><svg width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"><path d="M12 20V10"/><path d="M18 20V4"/><path d="M6 20v-4"/></svg>Featured on Visalytica</a>