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 account member and their roles anywhere in your controllers and views. This makes adding permissions much easier throughout your application. Find out more here: Accounts Documentation
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.
We've added API tokens, authentication, routes, controllers, and views to make building your own APIs easier. Check out the details of how to use API features here: https://jumpstartrails.com/jumpstart/docs/api
Now when you choose Sidekiq as your background job processor, we'll automatically generate config/sidekiq.yml for you. This is pre-configured to run multiple queues including default and mailers, the two standard queues that Rails uses in Active Job.
You can now upgrade your Single Site license to an Unlimited Site license by simply paying the difference ($300 USD). Simply click "Edit License" and then you can upgrade your license to the unlimited sites license at any time.
Braintree Merchant ID
Inside your credentials file in the Braintree section, you should have a key called "merchant_id". Previously this was called "merchant_key". To update existing applications, simply rename "merchant_key" to "merchant_id".
Encrypted OAuth Access Tokens
For added security, we've added attr_encrypted to encrypt OAuth access tokens.