$ show TelosLabs/rails-world
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.
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).
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.
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.
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.