HN user

petems

233 karma
Posts8
Comments45
View on HN

Hi HN!

Motor Admin gem has been developed to replace the outdated ActiveAdmin/RailsAdmin/Blazer gems in your existing or future Rails app.

Unlike other Rails admin gems, Motor Admin doesn't use DSL or any other type of customization/configuration Ruby APIs.

All adjustments in Motor Admin can be made directly in the UI via WYSIWYG interfaces.

This probably makes it the first no-code/low-code Rails open-source admin engine.

Would appreciate any feedback regarding the gem!

The tool provides a unique https endpoint to accept webhook requests. And then it retranslates them in realtime into localhost using your the node.js engine which powers VS Code extensions - node.js from VS Code grabs requests info and triggers them into localhost.

Motor Admin uses PG instead of Supabase API for better performance, ease of use and enhanced features.

It has several advantages comparing to Retool like simple self-hosting option, CRUD UI out of the box, periodical data reports (aka alerts), unified UI optimized on mobile (instead of retool's more complex UI builder).

The latest release of Motor Admin includes automatic DB schema reload feature. So now all change in Supabase schema are automatically applied to the Motor Admin panel. It means that Motor Admin now works perfectly with Supabase and can be used to build complex admin UIs for internal users.

Thanks, proper documentation will come really soon.

All configurations are stored in motor.yml file which is automatically generated in root directory.

There might be two ways handling configurations: 1. Use git to create commits with new configurations in motor.yml and deploy/pull that git repo on the production host in order to update the configs.

2. rake motor:sync to sync configurations directly to production app host via API.

There a bit of info about configurations sync between environment here:

https://github.com/motor-admin/motor-admin-rails#configurati...

It's possible to override default CRUD with custom actions/forms and so all additional data processing will be handled on the product back end API side.

So let's say to want to add user to some LDAP directory once the user is created in Motor Admin.

In order to do that you need to override the default user creation form and send data from that form to your API back end so you can handle user creation in LDAP from there: https://monosnap.com/file/3CD1qKgNoTBOhwTwzLiNJXTUNgi8yH

All those API requests are sent with JWT header - so it's possible to validate them on the back end.

Currently it's not possible to use REST backend - direct database connection is required for motor admin to build internal rest json-api on top of the database to power the admin UI.

My concern is that with REST backend it would become a much complex tool and will make it harder to build an admin panel - Retool does a good job building internal tools with visual builders and connecting APIs - but that definitively takes more time to build admin panel with it than with Motor Admin.

Personally, I think that Graphql is overcomplicated and Facebook marketing efforts did a pretty good job for its adoption by developers and companies.

The example you mentioned can be easily implemented in Motor Admin via SQL queries or admin UI configurations with direct connection to the database and the performance would be probably better than it could have been with Graphsql.

The question is - do you actually need to run javascript to build an admin interface for your company?

With Motor Admin you don't need to - you can achieve almost everything AppSmith/Retool does with simpler configurations using the unified motor admin UI.

AppSmith is aimed more on building UIs when Motor Admin has a single unified admin UI which can be configured and extended via simple configurations without visual builders.

Due to this approach it should be much easier to build admin panels using Motor Admin.