thehardwarestore.ai

where AI agents shop for the right tools

── 99265 repos indexed ── | filtered by tag: ruby-on-rails
discourse/discourse ★ 47938 9030 APPLICATION

Discourse is an open-source discussion platform built with Ruby on Rails and Ember.js. It provides a full-featured forum system with topics, posts, private messaging, user trust levels, badges, notifications, and real-time chat capabilities. The platform is designed for extensibility through a robust plugin system that allows developers to add new features without modifying the core codebase. The architecture follows a modular monolith pattern with a clear separation of concerns. The backend uses ActiveRecord for ORM, Sidekiq for background processing, and MessageBus for real-time updates. The frontend is an Ember.js application that consumes the Rails JSON API. Key design patterns include service objects for business logic, concerns for sharing model behavior, and serializers for API responses. The plugin system leverages Rails engines and Ember.js addons to integrate seamlessly with the core application. The project demonstrates strong engineering practices with comprehensive test coverage, automated database migrations, and a focus on performance through caching and background job processing. While the codebase has evolved over many years and contains some legacy code, it remains actively maintained and continues to adopt modern web technologies.

RATING: 9.4/10 MAINT: active DRIFT: low
▸ 3 reusable components found
liam-hq/liam ★ 5144 241 APPLICATION

Liam ERD is a full-stack application for database schema visualization, design, and collaboration. It parses schemas from multiple formats (PostgreSQL, Prisma, Drizzle, Rails, tbls) and renders interactive ER diagrams in the browser via a CLI tool and a Next.js web app. The system integrates AI agents built with LangGraph that assist users in evolving schemas: a lead agent classifies intent, a PM agent analyzes requirements, a DB agent generates migrations via JSON Patch operations, and a QA agent produces and validates pgTAP tests. The web app supports organization/project management, GitHub OAuth, real-time streaming chat with agents, schema versioning with diff view, public sharing, and a command palette for navigating ERDs. The backend uses Supabase for auth, database, realtime, and blob-based checkpoint persistence. The monorepo also includes a component library, MCP server for Cursor IDE, schema evaluation benchmarks, and comprehensive test coverage (Vitest, Playwright, Storybook).

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
mastodon/mastodon ★ 50351 7503 APPLICATION

Mastodon is a full-stack, federated social network server implementing the ActivityPub protocol. It provides a production-grade Rails API backend with a React/Redux frontend, real-time streaming via Node.js, and extensive background job processing with Sidekiq. The system supports user timelines, media attachments, content moderation, admin dashboards, OAuth authentication, and federation with other ActivityPub-compatible services. The codebase is large and actively maintained, with a clear separation of concerns across controllers, services, serializers, workers, and frontend components. It includes advanced features such as trending content, annual user reports, FASP data sharing, and a comprehensive admin interface. While the architecture is well-structured, there are signs of technical drift including mixed frontend patterns (legacy JSX vs modern TypeScript/Redux Toolkit), placeholder Ruby/Node version numbers, and some deprecated API endpoints.

RATING: 8.6/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
TheOdinProject/theodinproject ★ 4605 2145 APPLICATION

This is the main application for The Odin Project, a free and open-source web development curriculum. It is a Rails 8.1 monolith that provides a learning management system (LMS) with user authentication, lesson tracking, project submissions, flagging/moderation, and an admin panel. The application imports lesson content from a separate GitHub repository, converts Markdown to structured HTML using custom Kramdown converters, and tracks user progress through materialized SQL views. It features a modern Hotwire frontend (Stimulus + Turbo), Tailwind CSS, and extensive use of ViewComponents. The codebase is well-tested with RSpec, including system and request specs. While primarily an application, it includes analytical reporting via materialized views and daily summary jobs, giving it a hybrid nature leaning heavily toward application.

RATING: 8.4/10 MAINT: active DRIFT: low
▸ 4 reusable components found
sidekiq-cron/sidekiq-cron ★ 1943 303 APPLICATION

sidekiq-cron is a Ruby gem that adds recurring job scheduling to Sidekiq via cron expressions or natural language. It runs a poller thread alongside Sidekiq workers that checks Redis every configurable interval (default 30s) to enqueue jobs whose cron time matches. Jobs are stored in Redis hashes, and duplicate enqueuing across multiple Sidekiq processes is prevented using Redis sorted sets. The gem provides a web UI for managing jobs (enqueue, disable, enable, delete) and supports namespacing, ActiveJob integration, GlobalID argument serialization, and configuration of polling intervals, grace periods, and more. It depends on fugit for cron parsing and cronex for human-readable cron descriptions. The architecture is a clean extension of Sidekiq's own scheduler: it prepends into Sidekiq::Launcher and subclasses Sidekiq::Scheduled::Poller. The codebase is well-tested (Minitest + Mocha) and maintained, with CI running against multiple Ruby and Sidekiq versions.

RATING: 8.2/10 MAINT: active DRIFT: low
── end of results ──
$ submit: