excon
ActiveAdmin
excon | ActiveAdmin | |
---|---|---|
1 | 23 | |
1,154 | 9,455 | |
0.2% | 0.1% | |
8.0 | 9.2 | |
about 1 month ago | 3 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.
excon
-
Use Rails
A internal network boundary is probably worth it for heavy jobs, since you usually don't want it to interfere with serving web requests (no matter the tech).
You probably already know what I would say to each of those examples.
> Rails timing out after 30s while allocating 500MB of memory (mostly) in ActiveRecord to compute 5MB of JSON to return to an API caller.
I can make a JS or Go program perform the same way. In fact the exact same thing happened in my shop with Go/Gorm. The key question is: how do you compute the 5mb of JSON? The devil is in those details. We changed the way we computed ours, and the issue was gone.
> 90% of request latency of ~10s spent waiting for downstream services to respond to requests. Most of these could be fired off concurrently (ie `Promise.all` in node). 9s/10s this Rails worker is sitting around doing nothing and eating up ~300MB of memory.
This sounds broken. Why is the worker doing nothing for 9 out of 10s? But like I said earlier, there are a bunch of ways to use HTTP1.1 pipelining to run them concurrently. (https://github.com/excon/excon and https://github.com/HoneyryderChuck/httpx support it, but you can also do that with Net::HTTP I believe) And you can still start threads, which are still concurrent while blocking on IO.
> trying to extract out Authorization to a centralized service (so that other extracted services don't have to call into the monolith in order to make authorization decisions) is a major pain as the monolith now has to make calls out to the centralized auth system to in order to make authz decisions.
This seems unrelated to Rails. Not sure why monolith can't continue handling authorization.
ActiveAdmin
-
Use Rails
Rails is absolutely fantastic for projects below 10,000 lines with 1 or 2 contributors, especially if you want a classic forms-based UI. And you can get a huge amount done under those constraints in Rails.
But as of couple of years ago, Rails came with a number of drawbacks:
1. There was no really viable system of static typing that a significant number of people were enthusiastic about. See https://www.reddit.com/r/ruby/comments/105sdax/whats_the_lat... for a discussion.
2. The lack of static typing meant far less IDE support. Fewer documentation tooltips, less autocompletion, etc.
3. I used to do a lot of Rails consulting. And whenever I had to drop into a codebase with more than 50,000 lines or 5 active developers, it was generally a painful slog. Too many weird Rails plugins that stopped being maintained, too much magic, too many nasty surprises while refactoring.
Basically, smaller Rails projects were an absolute delight. Larger Rails projects, though, tended to feel more like a swamp. Tools like https://activeadmin.info/ could tip the balance where applicable.
I still think that small Rails projects are fantastic, and I don't think anything since has remotely matched Rails' productivity within that niche. There's just too much mature tooling, and much of it works together seamlessly. But not too many projects want classic multi-page apps right now, and small projects often grow up to be big projects.
-
Ask HN: Why aren't Django Admin style dashboards popular in other frameworks?
Can you clarify what's the "tremendous value" you're getting out of the Django admin?
At Heii On-Call https://heiioncall.com/ we are using Active Admin https://activeadmin.info/ for Ruby on Rails, which seems quite similar to the Django admin. In my experience, it's mostly useful as a fairly basic read-only view of what's in the database. In Rails, it's so easy to whip together a custom view that we tend to do that, and the Active Admin is nice to have but I wouldn't say "tremendous value".
-
Top 5 Ruby on Rails Gems
Github Link : https://github.com/activeadmin/activeadmin
-
View code coverage (active_admin and orther .arb file)
for those who know [https://activeadmin.info/](https://activeadmin.info/) it uses a file format [https://github.com/activeadmin/arbre](https://github.com/activeadmin/arbre)
-
Show HN: Build Ruby on Rails apps 10x faster – Avo
Very neat! My first thought was that this was a competitor to https://bullettrain.co/.
Looking into it a bit more, it seems more aimed at building admin panels than whole apps. I guess it competes against tools like https://activeadmin.info/?
-
From partials to ViewComponents: writing reusable front-end code in Rails
We briefly considered migrating to a full-grown Rails admin interface, such as ActiveAdmin, RailsAdmin, Administrate or Avo. We especially liked Avo which is built on a very modern stack similar to ours (Tailwind + Hotwire + ViewComponents). In the end, we didn’t go this route as we found some of the options a bit too restrictive (even though Avo is very flexible) and we did not feel like trying to amend it to our needs. For example, Avo renders forms in a 1-field-per-row layout while we wanted something more similar to the Tailwind UI Stacked form layout. Nevertheless, we found a great deal of inspiration in the Avo code and its design principles.
-
Ask HN: Easiest way to build a CRUD app
I second Rails. It's incredibly polished and has really good gems to speed up dev. ActiveAdmin is a great gem if you need to quickly make an admin dashboard. It was useful when I had a small consultancy.
https://activeadmin.info/
- Eager to help a Junior without experience?
-
Admin Framework for Rails
See an example: https://activeadmin.info It provides a fast way to create back office functionality.
-
We built an open-source platform (3k stars on GitHub) for building & deploying react based internal tools.
[1] https://activeadmin.info/
What are some alternatives?
Faraday - Simple, but flexible HTTP client library, with support for multiple backends.
RailsAdmin - RailsAdmin is a Rails engine that provides an easy-to-use interface for managing your data
httparty - :tada: Makes http fun again!
Administrate - A Rails engine that helps you put together a super-flexible admin dashboard.
Typhoeus - Typhoeus wraps libcurl in order to make fast and reliable requests.
Trestle - A modern, responsive admin framework for Ruby on Rails
RESTClient - Simple HTTP and REST client for Ruby, inspired by microframework syntax for specifying actions.
Avo - Build Ruby on Rails apps 10x faster
Http Client - 'httpclient' gives something like the functionality of libwww-perl (LWP) in Ruby.
go-admin - A golang framework helps gopher to build a data visualization and admin panel in ten minutes
HTTP - HTTP (The Gem! a.k.a. http.rb) - a fast Ruby HTTP client with a chainable API, streaming support, and timeouts
ActiveScaffold - Save time and headaches, and create a more easily maintainable set of pages, with ActiveScaffold. ActiveScaffold handles all your CRUD (create, read, update, delete) user interface needs, leaving you more time to focus on more challenging (and interesting!) problems.