Rowy is an open-source low-code backend platform designed for developers building on Firebase and Google Cloud Platform. It provides a spreadsheet-like UI to manage Firestore data with CRUD operations, field-level controls, and built-in cloud function editors—eliminating the need to switch between tools for data management and backend logic. Rowy keeps your data entirely on your GCP project while enabling rapid prototyping and team collaboration.
Built with React and TypeScript, Rowy integrates natively with Firestore, Cloud Functions, and GCP services. It supports deployment via a one-click GCP deploy button or manual setup, and all backend logic runs in your own cloud environment. The platform extends beyond no-code with full access to NPM modules, webhooks, and custom APIs, making it ideal for teams that need both non-technical collaboration and developer-grade extensibility.
What You Get
- Spreadsheet UI for Firestore - Manage your Firebase Firestore database with familiar spreadsheet controls: sort, filter, freeze columns, bulk import/export (CSV, JSON, TSV), and create multiple views of the same collection.
- Cloud Functions Editor - Write and deploy JavaScript/TypeScript cloud functions directly in the browser with full access to NPM modules and GCP APIs, triggered by data changes or manual actions.
- 30+ Field Types - Support for Short Text, Long Text, Email, URL, Date, Checkbox, Single/Multi Select, Image/File uploads, Rich Text (HTML), Markdown, JSON, Code editors, and custom field validations with default values.
- Action Fields - Add clickable buttons to your spreadsheet that trigger any cloud function, enabling non-developers to run backend workflows with a single click (e.g., send email, update status).
- Extensions & Webhooks - Pre-built integrations with SendGrid, Twilio, Algolia, BigQuery, Slack, and WhatsApp; also create custom webhooks to receive data from Typeform, Webflow, or any HTTP endpoint.
- Granular Access Controls - Role-based permissions at table and field level, with audit logs and user management to control who can view, edit, or delete data—perfect for internal tools and team collaboration.
Common Use Cases
- Building internal tools for SaaS teams - A product team uses Rowy to create a dashboard for managing user subscriptions, updating billing status, and triggering email notifications via SendGrid—all without writing backend APIs.
- Rapid prototyping of Firebase-powered apps - A startup developer connects Rowy to Firestore, adds image uploads and Algolia search, and launches a full-text searchable product catalog in under an hour.
- Syncing external forms to Firestore - A marketing team uses Rowy webhooks to automatically capture Webflow form submissions and store them in Firestore with structured field mapping, eliminating manual data entry.
- Developing no-code fintech workflows - A fintech founder uses Rowy to build a banking app backend with automated transaction categorization, GPT-3 receipt parsing, and user permission controls—all while keeping data on GCP.
Under The Hood
Architecture
- React-based component hierarchy with clear separation of concerns, where UI elements are decoupled from state logic via scoped Jotai atoms for project and table contexts
- State management uses atomic, scoped atoms to isolate table-specific state, preventing global pollution and enabling modular updates
- Field configurations are defined as declarative, reusable IFieldConfig objects that encapsulate rendering, editing, filtering, and serialization logic
- Dependency injection is achieved through React context and atom scopes, with dynamic imports for components like EditorCell to optimize bundle size
- Firebase serves as a direct backend abstraction, with typed hooks binding UI state to real-time Firestore data without an ORM layer
- TypeScript enforces strict typing across components, atoms, and configurations, while Vite enables fast, modern build pipelines with environment-aware configuration
Tech Stack
- React 18 and TypeScript form the foundation, paired with Vite for efficient module bundling and development experience
- Firebase provides integrated services for real-time data (Firestore), authentication, file storage, and local emulation
- MUI 5 and Emotion deliver consistent styling, enhanced by specialized libraries for date pickers and code editing
- Jotai and SWR handle atomic state and data fetching, complemented by React Hook Form and TanStack Table for complex forms and data grids
- Deployment is automated via Firebase Hosting and Cloud Build, with Yarn for dependency management and custom environment substitution
- Comprehensive tooling includes Vitest for testing, Husky for Git hooks, ESLint with custom rules, and TypeDoc for API documentation
Code Quality
- Extensive test coverage spans unit and integration tests using Firebase emulators and Jotai atoms to validate state and authentication flows
- Strong TypeScript typing ensures predictable data flow across field configurations, table schemas, and atomic state atoms
- Modular architecture with consistent naming and clear boundaries between UI, state, and utility layers
- Robust test infrastructure includes custom environments, Firebase emulator setups, and utility mocks for reliable end-to-end validation
- Error handling is integrated via Firebase SDK boundaries and user-facing feedback, though granular error classification could be improved
- Declarative field configuration patterns promote extensibility, maintainability, and consistent behavior across the UI
What Makes It Unique
- Native Firestore spreadsheet interface with real-time bidirectional sync, eliminating manual API wrangling or ORM overhead
- Sub-table relationships with deep nesting and automatic row counting enable hierarchical data modeling without custom queries
- Extensible field configuration system auto-generates UI components, validation, and export logic from a single typed schema
- Built-in Cloud Functions editor with in-browser execution and direct deployment tied to Firestore triggers
- Context-aware cell actions and intuitive drag-and-drop column reordering create a native spreadsheet-like editing experience
- Role-based access control with dynamic permission rendering and embedded wiki guides in UI states reduce onboarding friction