Changelog

Stay up to date with the latest features and bug fixes.

SaasRock v0.8 🎉 - Page Blocks, Notifications 🪨 + Onboarding 🚀

Page Blocks for building custom pages with existing (or custom) blocks, Send notifications with Novu, and create built-in Onboarding flows (enterprise 🚀).

Done

  • #166: Use baseURL instead environment variable everywhere
  • #167: Log email data to console when sending email
  • #168: Don't require Stripe for signing up
  • #169: Change ^1.6.3 to 1.6.3 remix version
  • #170: fix contributing CLA link
  • #171: Run prettier in 320 files
  • #172: Novu integration
  • #174: Entity Builder 2.0, CRM 2.0, and Email Marketing 🚀
  • #175: Row createdBy deleted?
  • #176: added rows default column: createdByUser
  • #178: Custom Entity Views with custom property order & visibility
  • #179: migration: entity_view_created_fields
  • #180: Table → Overlay of tags
  • #182: Favicon Guide + SaasRock Favicon
  • #183: Fixes 180, 181 and 154
  • #186: Remove duplicated no-code and email-marketing loaders and actions
  • #187: Google SSO
  • #192: Bug: CRM entities fields cannot be edited after creation

Added issues

  • #164: Remove TenantUserType, it's confusing now that there are granular permissions
  • #173: Ability to add members to the entity
  • #181: Table → Btn download attachment
  • #184: Linked account Rows not displaying
  • #185: Feature: Entity Properties that are unique
  • #188: Discord SSO
  • #189: Replacing process.env.APP_NAME with appconfig.app.name
  • #190: Bug: Cannot add parent to child with no dynamic properties
  • #191: Bug: Entity Property Name does not show correct value in Form
  • #193: Feature: Entity Property Format
  • #194: Feature: Entity Property Value calculated from formula
  • #195: Import .csv (remove null columns)
  • #196: isSuperUser and isSuperAdmin use same test
  • #197: Feature: Ability to create new users from Admin
  • #198: Feature: Update entities via any mass editor method
  • #199: Feature: Mass Update Rows
  • #200: Bug? SSO should work for invited users
  • #201: Bug: tenant users can see too many permissions
  • #202: Filters → Set a checkbox for boolean attributes
  • #203: Allow Webhooks to have relative URL
  • #204: API limits → email
  • #205: Bug: db.RowTask.findMany does not like createdByUser
  • #206: Bug: Import Entities wrong Permissions created
  • #207: API endpoint to know who owns the row
Learn more

SaasRock v0.7 - Entity Builder on steroids, CRM 2.0, and Email Marketing 🚀

This is a major release with a lot of new features. Entity Builder 2.0 with 9+ Autogenerated CRUD routes; CRM module 2.0 to manage your Companies, Contacts and Opportunities; and Email Marketing module for sending marketing emails to your CRM contacts.

SaasRock v0.6 - Usage-based, One-time, and Multi-currency pricing

The first release of SaasRock came with only 2 pricing models, Flat rate and Per-seat. Soon enough I'd realize 2 things: I need to support more pricing models.

Done

  • #64: Add Plan Feature Limit: Usage-based
  • #106: Missing the currency on the pricing
  • #127: Profile Tabs needs to be hidden if a user does not have rights
  • #130: Delete Account → Delete Stripe Customers
  • #142: Registration → Filter emails
  • #152: Sign Up Flows
  • #158: Old stripe subscription is not cancelled on subscription upgrade or downgrade
  • #161: Tiered pricing

Added issues

  • #161: Tiered pricing
  • #162: Entity table order by
Learn more

SaasRock v0.5.0 - Cookie consent 🍪 and built-in Analytics 📈

Let your users know that you use cookies, and track their page views and events with the built-in analytics Enterprise feature.

Done

  • #9: Add Component: GDPR cookie consent page and banner
  • #86: Analytics - Log page views
  • #87: Analytics - Log button clicks
  • #132: Option to verify the email
  • #153: Blacklist username, domains and IP
  • #115: Use Supabase API for file storage (RowValueMedia)

Added issues

  • #126: Image uploader component with drag and drop sorting
  • #127: Profile Tabs needs to be hidden if a user does not have rights
  • #128: Manage Application Command Palette from the Admin portal
  • #129: Set up screen for first time install
  • #130: Delete Account → Delete Stripe Customers
  • #131: Show/Hide Crisp chatbot
  • #132: Option to verify the email
  • #136: Upload images to a third party provider such as S3 ?
  • #137: Register page for tenant members at /:tenant-slug/register
  • #141: Entities → media option standardize file name
  • #142: Registration → Filter emails
  • #143: Hierarchy relationship view
  • #144: Simple Notifications System
  • #145: Workflow State change Notifications
  • #146: Onboarding Steps
  • #147: Activate/deactivate a tenant
  • #148: Filter the last accounts that have logged in
  • #149: Public tenant profile, e.g. saasrock.com/tenant-1
  • #150: News block at /app/:tenant/dashboard
  • #151: Create Tenants and Users manually (From /admin) with or without Email notifications
  • #152: Sign Up Flows
  • #153: Blacklist username, domains and IP
  • #154: Get usage API
  • #155: App Configuration
  • #157: Deployment Flags
  • #158: Old stripe subscription is not cancelled on subscription upgrade or downgrade
Learn more

SaasRock v0.4.0 - Events and Webhooks

Use the Events to log essential data and use Webhooks to customize your business logic within internal or external webhooks.

Done

  • #125: Events and Webhooks
  • #123: Property Attributes in separate model + UI Tests
  • #121: Property options with description
  • #120: HTML attributes Mix, Min, Rows, Rows, DefaultValue for certain Property Types

Added issues

  • #124: Manage API entities as administrator
Learn more

SaasRock v0.3.2 - Row Filters, Tags, Tasks, Comments, Workflows, Kanban Board and API limits

The entity builder just got stronger with a lot of new features for every created Row. Plus a kanban board component and API limits based on the account's subscription.

Done

  • #119: Entity Row Filters by URL, Tags, Tasks, Comments, and Workflow
  • #118: URL filters for /admin/accounts,users,roles,permissions
  • #117: Upgrade remix to 1.6
  • #110: No se pueden asignar imágenes a un campo de una entidad si hay varios campos de imágenes
  • #107: Update Guide
  • #101: API Key Limits should have configurable interval
  • #93: Enable no expiration for API Keys
  • #92: Plan Limits for API Keys and Usage
  • #91: Entity Details Views: Page (default) and Modal
  • #90: Entity Form Views: Page (default) and Modal
  • #89: Entity List Views: Table and Kanban board (with Pagination?, show/hide columns, default filters…)
  • #78: Dashboard → Entity stat
  • #11: Add Module: Workflows with Custom Forms and Custom Fields

Added issues

  • #104: Admin should be able to manually change the plan for all accounts
  • #105: Single Sign On
  • #106: Missing the currency on the pricing
  • #109: Improve Registration/Onboarding
  • #111: Limit the users (anti-scraping)
  • #113: Affiliate Management
  • #114: Deploy with Docker
  • #115: Use Supabase API for file storage (RowValueMedia)
  • #116: Entities Import & Export CSV
Learn more

Roles, Permissions, Groups, and Row-level visibility

Added admin and application Roles & Permissions for page views and actions. Added application Groups and Row-level visibility - only you, public, or share with account members, groups, or specific users.

Done

  • #14: Add Page: Roles and User roles
  • #15: Add Page: Object-level permissions (Create, Read, Update, Delete)
  • #52: Rename the 'tenant' nomenclature to 'account'

Added issues

  • #101: API Key Limits should have configurable interval
  • #96: Custom code
  • #94: Parallelize database calls
Learn more

Entity Builder + Per-seat Plans + Docs

Custom Entities with Autogenerated Views/Forms and API. Integrate with other apps using Webhooks. Added the PER_SEAT pricing model. Added /documentation pages.

Done

  • Rebranding
  • Testimonials
  • Upcoming Features
  • Pricing CTA
  • Newsletter
  • #41: Entity Builder
  • Autogenerated Views and Forms
  • Autogenerated API
  • Entity Webhooks
  • Plan Entity Limits
  • Per-seat Pricing Model
  • Documentation

Added issues

  • #93: Enable no expiration for API Keys
  • #92: Plan Limits for API Keys and Usage
  • #91: Entity Details Views: Page (default) and Modal
  • #90: Entity Form Views: Page (default) and Modal
  • #89: Entity List Views: Table and Kanban board (with Pagination?, show/hide columns, default filters…)
  • #88: TopBanner per-page manager, e.g. Pre-launch pricing!
  • #87: Log button clicks
  • #86: Log page views
  • #85: Let the Admin change the Tenant/Account alias, e.g. Company
  • #84: More entity property variants
  • #83: Table: Query text with URL debounce
  • #82: Feedback page: Let tenants submit and vote ideas, e.g. feedback.canny.io
  • #80: Documentation → how to gen icons
  • #78: Dashboard → Entity stat
  • #76: Create API Key as User -> 404
  • #72: Better design for login and registration
  • #71: CRUD for blog authors and categories
  • #69: Add dynamic translations
  • #68: A table to log the IPs of the tenants
  • #66: Portuguese translations
  • #65: German translations
  • #64: Add Plan Feature Limit: Usage-based
  • #63: French translations
  • #60: Open API / Swagger Spec Generation
  • #59: Blog Content Editor
  • #56: Carry Dark / Light Theme Through to App
  • #55: SEO - schema.org and sitemap
  • #45: Social Auth & Magic Link
Learn more

Blogging

Added /blog, /blog/:slug, /admin/blog and /admin/blog/new.

Done

  • #12: Add Page: Blog
Learn more

Custom Pricing Plans builder

Now you can create subscription plans with: Title, Badge, Description, Features, and Monthly/Yearly Price.

Done

  • #40: Create custom pricing plans
  • #37: Delete a Tenant as Admin

Added issues

  • #41: Epic Feature: Entity Builder
Learn more

Tenant on URL

Now you can access the tenant with the URL, and added App/Admin Command palettes, Dashboards, and User events.

Done

  • #13: Remove TenantSelector and WorkspaceSelector and have {tenantId}/{workspaceId} on the URL
  • #18: Extend command palette
  • #23: Add Page: Admin dashboard with indicators
  • #24: Tenant with their own alias instead of cuid on the URL
  • #27: Add user activity logs
  • #30: Modify Subscriptions on Tenants as Admin

Added issues

  • #19: Feature flags
  • #20: Add Module (a minimal version): Support Desk
  • #21: Add Module (a minimal version): CRM
  • #22: Add Module (a minimal version): Email
  • #28: Add multiple Admin users
  • #29: API Keys for end-users
Learn more

Vercel deployment + i18n

Demo deployed on Vercel, and added Locale Selector, Page Loading component and more.

Done

  • #1: Vercel deployment not translating with remix-i18next
  • #2: Implement a global loading component
  • #3: Display Stripe invoices
  • #4: Add a locale dropdown
  • #5: Mobile site not responsive
  • #10: Translate meta titles
  • #17: Add /admin/accounts table columns: Workspace, User and Contracts count, Plan, and Revenue

Added issues

  • #6: Upgrade to React 18
  • #7: Make fewer database calls
  • #9: Add Component: GDPR cookie consent page and banner
  • #11: Add Module: Workflows with Custom Forms and Custom Fields
  • #12: Add Page: Blog
  • #13: Remove TenantSelector and WorkspaceSelector and have {tenantId}/{workspaceId} on the URL
  • #14: Add Page: Roles and User roles
  • #15: Add Page: Object-level permissions (Create, Read, Update, Delete)
  • #16: Remove Postmark hard-coded dependency
Learn more