What's New

New updates and improvements to Jumpstart Pro

Ruby 3.3.3

New
We've updated to the latest version of Ruby 3.3. For more details, see the release notes.

Blurred secrets helper

New
We've added a helper for blurring secrets in the UI. For things like API tokens, it's helpful to hide them by default on page load and only reveal them when clicked.
Screenshot 2024-06-18 at 9.41.13 AM.png 20.8 KB


This is implemented without any JavaScript too! It uses CSS and the state of a hidden checkbox to hide & show the content.

Basic Auth for API clients

New
Some APIs use Basic Auth for authentication. We've now added support for this which can be done by either providing credentials on initialize or overriding the basic_auth method in your client.
MyClient.basic_auth: {username: "user", password: "pass"})

class MyClient < ApplicationClient
  def basic_auth
    {username: "user", password: "pass"}
  end
end

Ruby 3.3.2 & Node.js 20.14.0

New
We've updated Jumpstart Pro to the latest Ruby and Node.js versions.

Rails 7.2 beta 1

New
Rails 7.2 is almost here and we've updated Jumpstart Pro to the latest version and configurations so it'll be ready to use as soon as Rails 7.2.0 is released. 🎉

Kamal example configuration for deployments

New
Rails 8 will include Kamal configuration out of the box and we've included that in Jumpstart Pro Rails applications. You can use the out of the box configuration to deploy Rails to your own servers using Kamal.

Multiple users per Jumpstart Pro license

New
You can now invite multiple users to the Jumpstart Pro repository which is helpful if you're working with a team of developers on your project.

On your license page, you'll see the Allowed Users section now where you can add and remove GitHub users to your license. They will receive an invitation to the GitHub repository where they'll be able to participate with any issues, pull requests and discussions.
Screenshot 2024-05-16 at 12.30.17 PM.png 74.3 KB

Devcontainer Support

New
Jumpstart Pro is now upgraded to use the new Rails Devcontainers functionality. 🎉

Devcontainers make it easier to do development consistently across devices, GitHub CodeSpaces, and Windows.

TailwindCSS Stimulus Components v4.1

Improvement
We've released a new version of TailwindCSS Stimulus Components with some bug fixes and new features.

This latest release simplifies the Dropdown component to automatically configure data-actions for you to simplify your HTML.

We've also updated Jumpstart Pro to use the new version.

Custom / Enterprise Plan Support

New
It's common to offer custom or enterprise plans in applications. You can now create plans with a contact URL that marks it as an enterprise plan.
enterprise-plans.png 259 KB


Your sales team can then create an appropriate plan in the admin and send it to the customer for checkout. The contact URL can be either a URL to a contact page or a mailto link for sending an email.

See the Jumpstart Pro Subscription docs to learn more.

Turbo 8 - Morphing, View Transitions and Instant Click

Update
We're super excited about this update! Turbo's new version was announced at Rails World 2023 and showed off some great features for simplifying realtime updates in your Rails apps.

Here are the 3 main improvements:

  1. Page refreshes with morphing. 
  2. View transitions. 
  3. InstantClick: faster page loads thanks to link preloading.

Morphs allow you to tell the page to request a new copy from the server and only the changes will be applied. A user can be viewing a page and will see updates without losing their place.

View transitions allow you to keep users in context when they're navigating around. Imagine you click on a video on the index page and it resizes to full-width when you click on it and navigate to the video.

Instant Click is another awesome feature that predicts links a user may click on. By preloading the page, a link click feels instant because it's already loaded.

You can now take advantage of all these improvements in your Rails applications. We've modified the scaffold generator to automatically include Turbo broadcasts out of the box.

Rails 7.1 release! 🎉

New
The latest version of Jumpstart Pro is now upgraded to use the brand new Rails 7.1.0 release and includes tons of new improvements across the board.

Check out the Rails notes for the 7.1 release to see some of the new functionality: https://rubyonrails.org/2023/10/5/Rails-7-1-0-has-been-released

Dark mode support

New
We've just released dark mode support for Jumpstart Pro! Users can specify their preferred theme in their profile as System, Dark, or Light themes. When set to System, the theme will match the OS theme and change when the OS theme changes using a little JavaScript.

Huge thanks to Dr. Nic for the help on this!

Dark mode theme

New
Jumpstart Pro now comes with a dark mode theme out of the box. Users can choose between using light, dark, or match the system theme.

We've updated the default views to include styles for the dark theme as well.

Dark mode is applied to the layout by adding the "dark" class. We've also added JavaScript to listen for changes to the system theme to keep it in sync.

Inbound Webhooks

New
We've made it easier than ever to process inbound webhooks in your Jumpstart Pro Rails applications.

Inbound Webhooks will be received, stored into the database, queued up for processing, and deleted once successfully processed.

Running the generator will create a controller, database model, and background job for processing requests.

± rails g inbound_webhook Zapier
      create  app/controllers/inbound_webhooks/zapier_controller.rb
      create app/jobs/inbound_webhooks/zapier_job.rb
       route  namespace :inbound_webhooks do
                resources :zapier, only: [:create]
              end

TailwindCSS 3.3

New
We've upgraded to the brand new TailwindCSS 3.3 which include a bunch of nice improvements.

See the release for more details: https://tailwindcss.com/blog/tailwindcss-v3-3

Custom Turbo Stream Actions

New
⚡️ Jumpstart Pro is now ready for custom Turbo StreamActions out of the box!

Everything is pre-organized so you can create your own turbo_stream helpers on the Rails side and plug in your Javascript actions with examples.

One more thing to save you development time. 💪

API Clients

New
Jumpstart Pro now ships with a built-in API client generator. You can use it to create your own API clients for integrations with any API you would like.

As developers, it's easy to reach for Rubygems, but each dependency we add makes it harder to maintain your application. We've found that we need to fork most API Rubygems to fix bugs or implement API features that aren't supported yet in the library. 

Now, our default is to build an API client ourselves. It's easy to maintain, doesn't break from external changes, and only implements the features we need. We've made this available to Jumpstart Pro users to more easily take advantage of building their own API clients.

It's customizable so you can override the authentication or response parsers to work however you need.

You can generate an API client using the following command:
rails g api_client OpenAi
This will generate your API client and test file. You can then implement methods for API endpoints.

Here's an example integrating with the OpenAI API:
class OpenAiClient < ApplicationClient
 BASE_URI = "https://api.openai.com/v1"

 def models
   get("/models")
 end

 def completions
   post("/completions", body: {model: "text-davinci-003", prompt: "Say this is a test", max_tokens: 7})
 end
end
Usage of it would look like this:
OpenAiClient.new(token: "sk-1234").models

Moving Discussions to GitHub & Discord

Update
We're moving the forum for Jumpstart Pro over to Discord and the GitHub repositories. We recommend using the GitHub Discussions so other people can find your questions and answers, but Discord is also a great option if you need some quick help on anything. 👍

Renamed the master branch to main for Jumpstart Pro Rails

Update
We've renamed the master branch to "main" now for Jumpstart Pro Rails. This matches the iOS and Android repos as well as GitHub's default branch naming.

To update your local clones, you can run the following:
git branch -m master main
git fetch origin
git branch -u origin/main main
git remote set-head origin -a