Skip to main content

Changelog

If you deployed Rowy on rowy.app, you’ll receive the latest updates to Rowy as we release them. View releases on GitHub 

v2.6.0New field types, architecture rewrite, quality of life improvements

  • New

    Reference field type for Firestore document references (#534)

  • New

    GeoPoint field type (#535)

  • New

    Markdown field type (#683)

  • New

    Duration field type: added side drawer editor (#545)

  • New

    Filter by ID (#668)

  • New

    Hide and filter columns from the column menu

  • New

    Clear cell value and delete field from context menu

  • New

    Display sub-tables in modal, so you don’t lose position in the main table (#634)

  • Improved

    Import CSV now writes to the database in batches of 500, improving reliability and performance (#607)

  • Improved

    Create a table from any page

  • Improved

    Show loading indicators when loading another page of the table

  • Improved

    Empty table screen now prompts you to add a row

  • Improved

    Column sort button now shows current sort state and next sort state on hover

  • Improved

    Image field: open images in a new tab even when column is unlocked

  • Improved

    Date & Time fields let you filter by same date (#522)

  • Improved

    Display browser alert when leaving the page while a table or column modal is open, to prevent losing unsaved changes

  • Improved

    Allow table to scroll right far enough such that an open side drawer doesn’t hide columns

  • Improved

    Added shareable links for column and table modals, and current table page

  • Improved

    Display limited column menu for non-ADMIN and non-OPS users (#580)

  • Improved

    Skip confirm dialogs when Alt/Option key is pressed

  • Improved

    Show column index and field name when Alt/Option key is pressed

  • Improved

    Navigation drawer hierarchy

  • Improved

    Standard design when selecting columns for hiding, filtering, and exporting

  • Improved

    Toggle design to improve clarity and to match Material 3 guidelines

  • Improved

    Add warning when changing field type to one with an incompatible data type, which can result in data loss

  • Improved

    Show icon for hidden fields displayed in side drawer

  • Improved

    Color pickers match current theme

  • Improved

    Display field name in full screen code editor

  • Fixed

    Date filters no longer require time values to match

  • Fixed

    Resizing fixed columns would resize other columns with the same index

  • Fixed

    Unreliable reorder and insert column actions

  • Fixed

    Date field: Side drawer field would never disable

  • Fixed

    Rating field: Cannot set full star rating when half-star precision is enabled (https://github.com/mui/material-ui/issues/32557)

  • Fixed

    Time not selectable in Date & Time side drawer field

  • Fixed

    Rowy Run modal crashes when user has no roles

v2.5.0Templates, automated onboarding, Connector field

  • New

    rowy.app: Create a table from list of templates

  • New

    rowy.app: Automated onboarding steps to create Firebase project, Firestore, and Cloud Storage

  • New

    Connector field to get data from any data source in searchable list view demo

  • New

    rowy.app: Send feedback from within the app

  • Improved

    Table settings: Set default table name to be based on selected collection

  • Improved

    Table settings: Show EDITOR and VIEWER roles as options in access controls

  • Improved

    Display a snackbar while creating a table, resetting table columns, or deleting a table

  • Improved

    Copy the URL to a row in the context menu

  • Improved

    Color field: Added debounce to in-cell color picker

  • Improved

    Home page: Fixed "No tables" appearing before tables load in

  • Fixed

    Adding a row to a filtered table causing data to be overwritten

  • Fixed

    URL updating whenever a row is selected

  • Fixed

    Table settings: Collections list being fetched too many times

  • Fixed

    Image field: drag & drop target size not full size of table cell

v2.4.0Simplified onboarding, DX improvements

Thanks to our community contributor @n-sviridenko!

  • New

    Simpler onboarding flow on deploy.rowy.app to get started even faster

  • New

    Syntax validation for Derivative, Action, and dynamic default value functions

  • New

    Evaluate individual Derivative cells from the context menu on demand, without waiting for builds

  • New

    Code completion for JSON fields in code editors based on table data

  • New

    Shortcuts to Secret Manager and Cloud Functions on Google Cloud Console from code editor

  • New

    rowy utility class for fetching secrets, simplified storage uploads, and access to environment metadata

  • New

    Duplicate and delete row from the context menu

  • Improved

    Fixed errors and bugs when using Rowy without Rowy Run deployed

  • Improved

    Display error snackbar when Firebase Storage permissions denied

  • Removed

    Aggregate field type, which was unusable and undocumented

  • Fixed

    Single select fields pointing to a nested field key will not write the value to the database, but updates the value in the UI by @n-sviridenko in #659

  • Fixed

    Duplicate and Delete row buttons not appearing in read-only tables for ADMINs

  • Fixed

    Filters not displaying zero results

v2.3.2

  • Fixed

    Deleting columns causes rows to re-order

  • Fixed

    Filters not displaying no results

v2.3.1

  • Improved

    Show error snackbar on failed cell deletion

  • Improved

    Prevent strings from being pasted into Number fields

  • Improved

    Support filtering Derivative columns with supported output types

  • Fixed

    Deleting columns would only cause them to be reordered

  • Fixed

    Status field options

v2.3.0Read-only tables, table-level filters, right-click menu

  • New

    Read-only tables: for non-ADMIN users, locks all columns and disables adding and deleting rows and columns (#577)

  • New

    Table-level filters that can optionally be overridden by users (#587)

  • New

    Right-click context menu to cut, copy, and paste cell values (#600, #544)

  • New

    Import and export Table settings as JSON

  • New

    Table descriptions: support Markdown and display in the table page as a dismissable tooltip (#594)

  • New

    Status field: allow edits using dropdown and support filtering (#546, #527)

  • New

    View table Cloud Function logs

  • New

    Support TSV import and export

  • New

    rowy.app: Show templates in home page

  • New

    Webhooks: Sendgrid events parser

  • New

    Trigger extension based on specific field key

  • Improved

    Reorganized table settings modal with a step-based UI

  • Improved

    Filter cloud logs by severity

  • Improved

    Deep linking for extensions and webhooks modals

  • Improved

    Display webhooks error messages in cloud logs

  • Improved

    Add Load more button to Cloud logs

  • Improved

    Basic search algorithm for Home and User Management pages using match-sorter

  • Improved

    Display 404 when incorrect table ID is entered in URL

  • Improved

    rowy.app: Hide unnecessary Check for updates button

  • Fixed

    Unreliable Add column to left/right behavior (#558)

  • Fixed

    Unpredictable behavior of reordering columns (#559)

  • Fixed

    Collection group tables not loading more than one page of data if two rows have the same ID but are in collections (#595)

  • Fixed

    Add row options dropdown not disabled in collection group tables

  • Fixed

    Webhooks not writing audit fields

  • Fixed

    Auth redirect ignoring hash in URL

  • Fixed

    Case sensitive owner email validation during onboarding

  • Fixed

    Type completion for auth in code editor

v2.2.0Webhooks, cloud logs

Thanks to our community contributor @lafronzt!

  • New

    Add webhooks using a UI to add new rows from third-party services (#566)

  • New

    View cloud logs for webhooks, auditing, and builds/deploys in the table view

  • New

    Add rows with custom ID

  • New

    Revamped Action field settings with step-based UI, support for form inputs (alpha), and emoji as button icon

  • New

    JSON fields can now be edited with the Monaco code editor in the Side Drawer (#509)

  • New

    Firestore Rules are now edited with the Monaco diff editor in setup

  • Improved

    Monaco code editors can be resized and appear full screen, use GitHub themes, and tooltips no longer get cut off

  • Improved

    Import CSV will import in the same order as the CSV file

  • Improved

    Import CSV wizard will not suggest to import to ID field as it cannot write custom document IDs

  • Improved

    Column settings will not close on backdrop click or escape key press to prevent unsaved changes

  • Improved

    Derivatives field settings do not list field being edited in the listener field dropdown

  • Improved

    Derivatives Field listener and render fields are required in column settings (#564)

  • Improved

    Copy for “Loading chunk failed error” caused by a new update being ready is more user-friendly and suggests the user reloads the page (#530)

  • Improved

    Added Side Drawer toggle to show fields hidden in table (off by default)

  • Improved

    Setup rules step removes an insecure Firestore rule that allows anyone to access any part of your database

  • Improved

    Display project ID in user menu

  • Improved

    Home page welcome text to emphasize you can create tables from existing Firestore collections

  • Fixed

    Document ID generation algorithm eventually breaks and can’t create new rows after 000...undefined (#567)

  • Fixed

    Import CSV writes all CSV rows into one row (#583)

  • Fixed

    Connect Service (Alpha) field shows item field name instead of value by @lafronzt in #570 (#569)

  • Fixed

    Connect Service (Alpha) dropdown shows white gradient in dark theme

  • Fixed

    Side Drawer crashing when document contains a Firestore DocumentReference as an array value or in a nested field (#565)

  • Fixed

    Hidden fields & filters not working with multiple table views

  • Fixed

    Import CSV wizard preview error when importing dates that are strings

  • Fixed

    Cloud build log snackbar not appearing for Derivative function deploy

v2.1.0New Extensions UI, table auditing

Thanks to our community contributors @fabricio-godoi, @nandinikaregowdra, @doilie, @DariaNico, @jmutt78, @coder-mina, and @yashodha03!

  • New

    Step-based Extensions UI with updated copy and links to docs

  • New

    Table auditing: track when a user creates or updates a row. View this data with the new Created By, Updated By, Created At, and Updated At field types in your table or disable auditing if you don’t want these fields written to your documents.

  • New

    Connect Table field supports single selection without arrays (#504)

  • New

    Allow users to add custom options in Single and Multi Select fields

  • New

    Add initial columns in Create table modal

  • Improved

    Side Drawer scrolls to the selected cell and focus if available

  • Improved

    Filters UI now shows Side Drawer fields and supports more field types

  • Improved

    Long Text field supports multiline in-cell text editing

  • Improved

    Import CSV will suggest matching table column if CSV field name matches by @DariaNico in #558 (#536)

  • Improved

    Add not equal to filter by @nandinikaregowdra in #547 (#528)

  • Improved

    Rating field shows configuration modal after creation by @coder-mina in #556 (#540)

  • Improved

    Slider field shows configuration modal after creation by @yashodha03 in #557 (#541)

  • Improved

    Show cap on number of rows loaded in table header

  • Improved

    Switch monospace font from IBM Plex Mono to JetBrains Mono for improved clarity

  • Improved

    Set text field caret color to theme primary color for improved clarity

  • Improved

    Table settings: Show collection name in Copy columns from existing table instead of ID

  • Fixed

    Table settings: fix Table ID being automatically edited when changing table name, causing creation of new table

  • Fixed

    Side Drawer crashing when document contains a Firestore DocumentReference

  • Fixed

    Add row will not add to top of table after deleting any row

  • Fixed

    Missing in-cell editing of Date Time fields to match Date fields

  • Fixed

    Position of tooltip for column header name

  • Fixed

    Collections list in Table Settings empty on first load

  • Fixed

    Import previews in Import Wizards have misaligned column headers by @jmutt78 in #553 (#531)

  • Fixed

    Export not working for subcollections by fabricio-godoi in #499

  • Fixed

    Status field resetting operator on edit

  • Fixed

    PopoverCell: fix double causing cell to appear blank

  • Fixed

    Side Drawer not loading the correct row’s values for some fields after clicking the navigation buttons

  • Fixed

    Array and object fields not updating correctly if an element or property is removed

  • Fixed

    Last frozen row not showing selection outline

v2.0.0Introducing Rowy

Thanks for your continued support in us. We’re now working on Rowy full time and we plan to have more frequent updates than ever before!

v2 introduces breaking changes that require you to perform a migration.

👉 You can easily migrate to Rowy using this one-click deploy button and instructions here.

⚡️ We have a brand new documentation website here.

🚣‍♀️ Read about why we built Rowy and GIFs of different features here.

  • New

    New design focused on clarity, a more compact desktop UI, and focusing on your data

  • New

    Rowy Run, a Cloud Run instance providing backend functionality to Rowy

  • New

    Setup UI to guide you through setting up Rowy Run, user roles, Firestore Rules, and migrating from v1

  • New

    Support for multiple tables pointing to the same collection (#209)

  • New

    Rowy Extensions and Extensions UI

  • New

    User management UI to set roles, invite and delete users

  • New

    Theme customization on the project and user levels

  • New

    List of available collections when creating a table

  • New

    Auto-suggested Firestore Rules when creating a table

  • New

    User settings and project settings pages

  • New

    Search tables in the home page

  • New

    List view for tables on home page

  • New

    Pin navigation drawer on large screens

  • New

    Count of how many rows are loaded and if all rows are loaded

  • New

    Favorites list in navigation drawer

  • Improved

    Configuration collections moved to single top-level collection, _rowy_ (#402)

  • Improved

    Faster build times by switching to swc, a Rust-based JS/TS compiler

  • Improved

    Updated layout for Create table/Table settings modal

  • Improved

    Navigation drawer standardized across home page and table page

  • Improved

    Column menu can be opened by right-clicking column header

  • Improved

    Show Side Drawer in mobile

  • Improved

    Standardized snackbars using notistack

  • Improved

    Date and time pickers now use MUI v5 pickers

  • Improved

    Color picker now uses react-color-palette

  • Improved

    Added launch button for URL cells to match Side Drawer field

  • Improved

    Multi Select, Connect Table, and File cells display values on multiple lines

  • Improved

    Grouped field types in dropdown and updated field type icons

  • Improved

    Renamed Checkbox field type to Toggle

  • Improved

    Added support for AVIF and JPEG XL in image fields

  • Improved

    Delete rows immediately by holding Alt/Option key

  • Improved

    Hide field type icon from column header if column is narrow

  • Improved

    Experience on phones with notches

  • Improved

    Remove Starbucks names for row heights and add more options

  • Fixed

    Nested fields no longer write to a top-level field in dot notation (#497, #161)

  • Fixed

    Side Drawer up/down navigation

  • Fixed

    Percentage cell allows user to input % value like the Side Drawer field

  • Fixed

    Ensure table creation and config updates are restricted to ADMINs

  • Fixed

    JSON field setting to default to array (#414)

v1.4.0Build logs, FirebaseUI auth, required fields

  • New

    Build logs of Cloud Functions used to run Derivative fields, default values, and other backend functionality

  • New

    Support for all sign-in methods supported by Firebase Authentication with FirebaseUI, editable in Project Settings

  • New

    Required fields, which can prevent rows from being written to the database

  • New

    One-click deploy for Cloud Functions using Google Cloud Run

  • New

    Dynamic default values: values can be set for each new row using code

  • New

    Derivative fields can re-evaluate cells based on changes from other columns

  • New

    Status field

  • New

    Force Refresh to re-execute derivatives and spark functions

  • New

    Check for updates in User Menu

  • Improved

    Settings open automatically when adding a new field that requires configuration to work (#483)

  • Improved

    Prompt to re-deploy table’s Cloud Functions when column default value is edited

  • Improved

    Filters support Derivative and Number fields

  • Improved

    ConnectTable: snapshotFields config and support filters

  • Improved

    More links to Wiki pages

  • Improved

    Consistent styling for auth pages

  • Improved

    Updated Material-UI global theme

  • Improved

    File cells show tooltip with upload timestamp

  • Improved

    Connect Table field supports user-specific Algolia search keys

  • Improved

    Added date format setting in Date and Time & Date fields

  • Improved

    Added Slider field setting for step size

  • Improved

    Short Text field supports regex validation

  • Improved

    Subcollection parent label settings

  • Fixed

    Multi Select columns missing table settings for setting options

  • Fixed

    Date and Time and Date fields not saving

  • Fixed

    table row height not updating

  • Fixed

    users with ADMIN role not seeing all tables

  • Fixed

    Firebase Console links

  • Fixed

    node.js maximum version requirement

v1.3.2

  • Fixed

    Added ErrorBoundary to all table cells to prevent full table crash

v1.3.1

  • Fixed

    ValidationError on all Form Builder forms (#317) caused by incorrect yup version (#318)

v1.3.0Fields refactor

  • New

    Set default values for columns: undefined, null, static, and dynamic (evaluated by Cloud Function)

  • New

    Option to set default value for JSON fields to empty array (#293)

  • New

    JSON export for tables

  • New

    Download attachments in Export modal

  • New

    Sparks as alpha preview

  • Improved

    Refactored code implementing all field types. This improves maintainability and makes it easier to add new features related to fields and add new fields entirely. See guide on how to add a new field type

  • Improved

    PopoverCell components to render heavier editor cells (such as Multi Select and Color) only when the user has clicked the lighter InlineCell, improving performance

  • Improved

    Added column settings to more field types

  • Improved

    Support for cell “Lock”/disabled mode for all field types

  • Improved

    Locked fields show lock icon in Side Drawer

  • Improved

    Show red/green color scale to Slider table cell component

  • Improved

    Modal component to standardize modal design

  • Improved

    Form Builder matches Modal design

  • Improved

    Switched code editor from Ace editor to Monaco editor

  • Improved

    Code editor support dark theme

  • Improved

    Renamed updatedAt and updatedBy fields being written to the database in favor of _ft_updatedAt and _ft_updatedBy

  • Improved

    Show version number to User Menu

  • Fixed

    Side Drawer showing contents of previously-selected row, potentially causing rows to be overwritten with another row’s data

  • Fixed

    Field types using SideDrawerEditor having cell contents disappear when double-clicked to open the Side Drawer

  • Fixed

    Side Drawer not getting Firestore document ref of first row

  • Fixed

    “Edit Type” column menu item using internal, user-unfriendly field type names

  • Fixed

    Side Drawer writing default or initial values to fields the user did not touch

  • Fixed

    Side Drawer not showing permissions errors when attempting to write to the database

  • Fixed

    compressedThumbnail Cloud Function not rotating image based on EXIF orientation tag

v1.2.1

  • Fixed

    Unreadable ErrorBoundary in dark theme

  • Fixed

    Updated Slack onCreate message

  • Fixed

    Added settings for Actions field

  • Fixed

    Added support for Derivative fields in Sub-Tables

  • Fixed

    Derivatives "-" naming error

  • Fixed

    Crash occurring when a table is first created

  • Fixed

    Home page not checking permissions

  • Security

    Bump highlight.js from 10.3.1 to 10.4.1 in /e2e (#274)

  • Security

    Bump date-and-time from 0.14.1 to 0.14.2 in /e2e (#284)

  • Security

    Bump ini from 1.3.5 to 1.3.8 in /cloud_functions/functions (#281)

v1.2.0Copy column config from existing table

  • New

    Initialize table from an existing table’s column configuration

  • New

    Support Derivative functions for collection groups

  • Fixed

    Missing key prop in Filters component (#262)

  • Fixed

    System theme causing flickering between light and dark themes

  • Fixed

    Number cell saving values as strings (#270)

  • Fixed

    Number Side Drawer field forcing empty values to 0 (#268)

v1.1.0Performance improvements, Import CSV Wizard, Dark theme

  • New

    Import CSV Wizard with ability to add new columns, preview, and import CSV from URL and clipboard

  • New

    Dark theme

  • Improved

    Improved performance massively by updating the react-data-grid dependency from 7.0.0-alpha.29 to 7.0.0-canary.27

  • Improved

    Added Basic Cells to improve scroll performance

  • Fixed

    Dates not being parsed when importing from CSV (#219)

  • Fixed

    MultiSelect keyboard navigation issue (#260)

  • Fixed

    Pressing tab key not scrolling table horizontally (#257)

v1.0.0Initial public release