Ruby on Rails
react-on-rails
Our great sponsors
Ruby on Rails | react-on-rails | |
---|---|---|
465 | 9 | |
54,776 | 5,033 | |
0.8% | 0.3% | |
10.0 | 7.3 | |
about 3 hours ago | 23 days ago | |
Ruby | Ruby | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Ruby on Rails
-
16 Best Ruby Frameworks For Web Development [2024]
Ruby on Rails is regarded as one of the best ruby frameworks. It was the primary language in developing big projects such as Twitter and helped the language boost the community. Often referred to as “Rails,” Ruby on Rails is a web development framework with an MVC control structure and currently running its 6.1 version. The 16-year-old language has dramatically influenced the web development structures and managing databases, web pages, and other components on a web application.
-
Ruby on Rails load testing habits
Rails isn't super opinionated about database writes, its mostly left up to developers to discover that for relational DBs you do not want to be doing a bunch of small writes all at once.
That said it specifically has tools to address this that started appearing a few years ago https://github.com/rails/rails/pull/35077
The way my team handles it is to stick Kafka in between whats generating the records (for us, a bunch of web scraping workers) and and a consumer that pulls off the Kafka queue and runs an insert when its internal buffer reaches around 50k rows.
Rails is also looking to add some more direct background type work with https://github.com/basecamp/solid_queue but this is still very new - most larger Rails shops are going to be running a second system and a gem called Sidekiq that pulls jobs out of Redis.
-
First commits in a Ruby on Rails app
Here is what strict_loading does (source):
-
Continuous Deployment with GitHub Actions and Kamal
Kamal is a wonderfully simple way to deploy your applications anywhere. It will also be included by default in Rails 8. Kamal is trivial, but I don’t recommend using it on your development machine.
-
Jets: The Ruby Serverless Framework
I think that you're conflating correlation with causation. I think it's more plausible to assume it was the early numbers that are skewed and non-representative.
The fact that GitHub itself was is a killer app of the Ruby on Rails, and that the Rails project itself changed to being hosted on GitHub somewhat very early on it's history [1] had a disproportionate effect on the early community that gathered there.
Now GitHub attracts a much more diverse portfolio of projects, so the numbers you see there are less statistically biased towards early Ruby on Rails adopters.
[1] Commit history on the main branch of rails/rails via github goes as far as Apr 10, 2008 https://github.com/rails/rails/commit/c67e985994362290308073...
-
understanding Rails version maintenance policy?
Done! https://github.com/rails/rails/pull/50295
releaseCycle: "6.1" releaseDate: 2020-12-09 eol: 2024-06-01 # https://github.com/rails/rails/pull/46895#issuecomment-1673353127 latest: "6.1.7.6" latestReleaseDate: 2023-08-22
You might have luck. It does look like docs changes are being accepted into 7.1-stable branch: https://github.com/rails/rails/commits/7-1-stable/
-
Rage: Fast web framework compatible with Rails
Also this doesn't show how database access is handled which is the hard part. If you are not touching the database, you can run Rails on falcon and get fiber based concurrency.
If you run falcon on rails and access database, then you have to explicitly checkin/checkout a connection to be safe. Details here - https://github.com/rails/rails/issues/42271.
-
HTML Data Attributes: One of the Original State Management Libraries
DEV is a Rails monolith, which uses Preact in the front-end using islands architecture. The reason why I mention all this is that it's not a full-stack JavaScript application, and there is no state management library like Redux or Zustand in use. The data store, for the most part on the front end, is all data attributes.
react-on-rails
-
Considering moving from NextJS to Rails
You should take a look at https://github.com/shakacode/react_on_rails. I created that repo back in 2015 and it's still going strong. Popmenu.com uses it and we've got 5,000 restaurant chains on the Rails monolith and huge traffic and transaction volume. Check out the html source of a popmenu site, like https://110grill.com. You'll see react-on-rails in the source.
-
Spent the past week learning Stimulus and Hotwire - you don't need it, you can do the same thing with jQuery
It's me, Justin, the guy the started React on Rails and React on Rails Pro many years ago! I'll be following this thread!
-
Best project setup for Rails+React with "remember me" feature
The problem is I have no idea how to implement the "remember me" feature in that gem without just making the tokens not refresh for a very long time (I think that would be a security concern). So then I looked more into react_on_rails to just use sessions with Devise as a normal rails app, but I don't know if I'll be able to deploy that on AWS because of the changes I have to do to the webpacker/webpack config to allow for a better folder structure. I've never done that so I don't know if there may be any issues.
-
Frontend based access control?
I have a production level Ruby on Rails app that is slowly transitioning from pure Rails with JS sprinkles to a Rails backend and React frontend kind of situation using React on Rails.
-
React Frontend vs Hotwire
https://github.com/shakacode/react_on_rails use this instead. It's maintained and preferred nowadays
- Hotwire: the new evolution of Turbolinks from Basecamp
-
26 most popular Ruby/Rails repositories on GitHub in July-August 2020
React on Rails is an integration of React + Webpack + Rails + rails/webpacker including server-side rendering of React, enabling a better developer experience and faster client performance. 4,558 stars by now
What are some alternatives?
Roda - Routing Tree Web Toolkit
Hanami - The web, with simplicity.
react-rails - Integrate React.js with Rails views and controllers, the asset pipeline, or webpacker.
Sinatra - Classy web-development dressed in a DSL (official / canonical repo)
Cuba - Rum based microframework for web development.
CodeBehind Framework - CodeBehind library is a modern backend framework. This library is a programming model based on the MVC structure, which provides the possibility of creating dynamic aspx files in .NET Core and has high serverside independence.
Padrino - Padrino is a full-stack ruby framework built upon Sinatra.
yjit - Optimizing JIT compiler built inside CRuby
Syro - Simple router for web applications
Django - The Web framework for perfectionists with deadlines.
ihp - 🔥 The fastest way to build type safe web apps. IHP is a new batteries-included web framework optimized for longterm productivity and programmer happiness
Ramaze - Ramaze is a simple, light and modular open-source web application framework written in Ruby.