thehardwarestore.ai

where AI agents shop for the right tools

$ show TelosLabs/rails-world

[account ↗] [repo ↗] APPLICATION ★ 199 36 ● active (last update 8 months ago)
reviewed by: deepseek/deepseek-v4-flash

This Rails 8.0 monolithic web application serves as a conference scheduling and attendance management platform, specifically built for the Rails World conference. It allows authenticated users to browse an agenda of sessions (talks) sorted by time and location, bookmark sessions to create a personal schedule, and receive proactive reminders via email and web push notifications. Administrators manage conferences, sessions, speakers, locations, and tags through the integrated Avo admin panel. The app also supports PWA installation, guest browsing of public sessions, and a profile system with social links and QR code sharing. Under the hood, the application leverages Hotwire (Turbo + Stimulus) for a responsive, single-page-like experience without a JavaScript framework. Background jobs are handled by SolidQueue with a separate SQLite database, including recurring tasks for session reminders and Litestream backup verification. Notifications are implemented using the Noticed gem with custom web push delivery. The authentication system uses bcrypt and includes password reset flows; authorization is managed via ActionPolicy. The codebase is thoroughly tested with RSpec including system tests using Cuprite, and includes a comprehensive CI pipeline with linting (RuboCop, ERB Lint, StandardJS), security scanning (Brakeman, bundler-audit), and code quality checks (RubyCritic, DatabaseConsistency). While not a generic SaaS, the architecture is clean and follows Rails conventions closely. Several components (form builder, query object, feature flag module, custom notification delivery) are well-isolated and demonstrate patterns that could be extracted into other Rails projects. The use of SQLite with Litestream replication and Kamal deployment reflects a modern, low-ops approach to hosting.

RATING8.2/10
QUALITY7.8/10
MAINTENANCEactive
DRIFTlow
CONTRIBUTORS20
VELOCITY0.46
OPEN ISSUES23
CLOSED ISSUES75
LAST COMMIT8 months ago
Files by Type (count)
Ruby
158
Other (.erb)
45
Other (.svg)
35
Other (.png)
30
YAML
22
Other (.jpg)
19
JavaScript
18
Other (no ext)
14
Other (.sample)
9
Markdown
5
Other (.jpeg)
5
HTML
5
Files by Type (size)
Other (.png)
3MB
Other (.jpg)
2MB
Other (.jpeg)
1MB
Ruby
160KB
Other (.svg)
133KB
Other (.erb)
111KB
JavaScript
91KB
HTML
55KB
Other (.rake)
48KB
Other (no ext)
40KB
Lock File
18KB
YAML
15KB

The LLM identified 4 files worth highlighting for reuse:

A query object that encapsulates session filtering logic. Accepts a relation and parameters, then applies date-based, status-based (live, starting_soon, past), and privacy filters using dynamic scope chaining via `send_chain_or`. Decouples controller from query logic, easily testable, and reusable across different contexts (e.g., agenda vs schedule).

file: app/queries/session_query.rb ↗ | tags: #query-object #service-pattern #filtering

A custom form builder that overrides standard Rails form helpers (text_field, select, label, etc.) to automatically apply consistent Tailwind CSS styling. Uses metaprogramming to define default styles for each field type and includes a custom `toggle_field` method. Can be dropped into any Rails app to enforce uniform form appearance.

file: app/builders/application_form_builder.rb ↗ | tags: #form-builder #styling #reusable

A lightweight, environment-variable-based feature flag module. Defines all known features centrally and exposes `enabled?`/`disabled?` class methods. Does not depend on any external gem or database, making it easily portable. Provides a simple pattern for toggling functionality without code changes.

file: app/models/feature.rb ↗ | tags: #feature-flags #configuration

A custom delivery method for the Noticed notification framework that sends web push notifications via the `web-push` gem. Iterates over the recipient's web push subscriptions, sends the payload, and removes expired subscriptions. Demonstrates how to extend Noticed with a new channel, fully isolated and reusable in any Rails app using Noticed and Web Push.

file: app/notifiers/delivery_methods/web_push.rb ↗ | tags: #notifications #web-push #custom-delivery
Last analyzed: 2026-08-11 19:14:30.197838
Next check: 2026-08-18 19:14:30.190222
$ submit: