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.1
Thanks to our community contributor @htuerker!
- Improved
Percentage field: customize color scale by @htuerker in #692 (#518)
- Improved
Filter by the current cell’s value from the context menu
- Fixed
Row would not be written to database when last required field is filled with value
- Fixed
Create table collections dropdown is empty instead of showing a text field to enter connection name
- Fixed
Date filters could be set to filter for null, which causes the table page to be inaccessible
- Fixed
Single Select filters cannot access options
- Fixed
Navigation drawer items not accessible with Tab key
- Fixed
Rich text editor not displaying text styles dropdown correctly in dark mode, and not responding to theme changes correctly by @htuerker in #696 (#537)
- Fixed
Added /settings/debug page to fix any corrupted table filters or local Firestore cache
- Fixed
Incorrect read-only rules suggestion
- Fixed
Windows displaying light mode scrollbars in dark mode
- Fixed
Page loading with white screen while system is in dark mode
v2.6.0 – New 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.0 – Templates, 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.0 – Simplified 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.0 – Read-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.0 – Webhooks, 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.0 – New 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.0 – Introducing 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.0 – Build 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
v1.3.0 – Fields 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
andupdatedBy
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.0 – Copy 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.0 – Performance 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
to7.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)