All kinds of notifications!
Notifications are here finally! This is a big feature. We support delivering notifications to the database, email, ActionCable, twilio, vonage, and Slack. You'll notice the new notifications bell in the navbar where notifications will be delivered via ActionCable as configured. To learn more, check out the docs here: https://jumpstartrails.com/docs/notifications
Jumpstart Pro is now fully internationalized! We've extracted all strings into their relevant translation keys so you can easily translate your app into other languages if you'd like. Find out how it all works in the I18n docs: https://jumpstartrails.com/docs/i18n
We've just updated to the latest Rails version which should fix the warnings and deprecations ahead of Ruby 3. 👍
Flatpickr all the things
We've added Stimulus Flatpickr to make adding date and time selects to forms much easier. Scaffolds have been updated as well to automatically enable flatpickr when generating date and time fields.
You can now use title("Dashboard") in your layouts to easily set the title tag in each page. Just a bit easier to remember than the content_for method, but you an still use that if you need to. Thanks Ugurcan!
Auth API endpoint
Sometimes you might need to authenticate from a mobile or desktop app to the API using an email and password without having an API key. We've introduced /api/v1/auth to allow your users to login through the API with email and password now. 🔥
Guard & LiveReload
Thanks to Julian Rubisch, you can now enable Guard LiveReload in your Jumpstart Pro applications through the configuration wizard. 🙏 This is super handy for automatically reloading your app when files change so you can iterate quickly in development.
Multitenancy & Accounts
We now officially support multitenancy through custom domains, subdomains, URL paths (like Basecamp does), and session cookies. You can also enable acts_as_tenant on your models to have them automatically scoped to the current account. This update also introduces Current which is a request store backed by Rails' CurrentAttributes. This gives you access to the current account and other request details that you can use throughout your application. We've also renamed Teams to Accounts to make it more flexible for its use in various applications. It's less confusing naming and you can introduce your own Team model inside accounts if you need them now.
Upgrade to Pay version 2.1
We've upgraded the Pay gem to version 2.1 which introduces the ability to have multiple Billable models. You can now have Accounts make payments as well as any other model you would like. This is useful as we work towards building support for marketplaces.
Now when you generate a scaffold, the headers contain clickable links for sorting your records.
Rich Text Embeds
You can now embed several different types of content in rich text fields. We've got support for YouTube, Twitter, Instagram, Imgur, Spotify, Soundcloud, and Vimeo. To embed content from one of these sites, you can click the Link icon, paste in the URL and if the link matches one of the regexes for allowed content, it will display an Embed option that you can click to have your content embedded into the post. This is built on ruby-oembed and ActionText so you can add more providers if you like.
Stripe Test environment links
Now you can click Stripe links in the admin area in development to be linked to the Stripe test environment's charges, subscriptions, and customers. We already do this for Braintree, so now Stripe matches. 👍
We've added some helpers to make it easy to access the current team member and their roles anywhere in your controllers and views. This makes adding permissions much easier throughout your application. Find out more here: https://jumpstartrails.com/docs/teams
Jumpstart 1.1: Stripe SCA and Third-Party Integrations
After several months of development, we've launched support for Strong Customer Authentication with Stripe payments as well as several third-party integrations! Payments are now compatible with the EU SCA regulations and support asking for additional authentication. If subscription payments fail because they require additional authentication, your users will be emailed to come back to your website and authenticate their card. You can find out more here: https://jumpstartrails.com/jumpstart/docs/billing We've also added several third-party integrations to make it easier to add performance & error monitoring as well as email marketing tools. Learn more here: https://jumpstartrails.com/jumpstart/docs/integrations
GitHub Actions Continuous Integration template
Jumpstart Pro now ships with a preconfigured template for GitHub Actions that you can use to run tests on every push. It's pre-configured for PostgreSQL and Redis so all you have to do is add your RAILS_MASTER_KEY for the test environment to your GitHub repo's secrets.
We've added a Rails data-confirm example to the docs for you to see how that looks. Plus, we've updated all the gems and node modules to the very latest versions. And we've also fixed a bug with the Jumpstart routes being mounted in production. Check GitLab to merge the latest changes into your app!
Create admin users in the Jumpstart dashboard
Want to create a new admin user while you're setting up Jumpstart for the first time? Now you can do it all from the Jumpstart configuration dashboard.
We've migrated mentions from the users controller to its own controller and added the pg_search gem to filter results.
Confirm modals now handle Escape and Enter keys
We've fixed the confirm modals to let you type Enter and Escape to confirm or cancel the modal.