Class: RailsAiBridge::Serializers::Formatters::Sections::ConventionsFormatter

Inherits:
SectionFormatter show all
Defined in:
lib/rails_ai_bridge/serializers/formatters/sections/conventions_formatter.rb

Overview

Renders the App Conventions & Architecture section.

See Also:

  • Formatters::Providers::SectionFormatter

Constant Summary collapse

ARCH_LABELS =
{
  'api_only' => 'API-only mode (no views/assets)',
  'hotwire' => 'Hotwire (Turbo + Stimulus)',
  'graphql' => 'GraphQL API (app/graphql/)',
  'grape_api' => 'Grape API framework (app/api/)',
  'service_objects' => 'Service objects pattern (app/services/)',
  'form_objects' => 'Form objects (app/forms/)',
  'query_objects' => 'Query objects (app/queries/)',
  'presenters' => 'Presenters/Decorators',
  'view_components' => 'ViewComponent (app/components/)',
  'stimulus' => 'Stimulus controllers (app/javascript/controllers/)',
  'importmaps' => 'Import maps (no JS bundler)',
  'docker' => 'Dockerized',
  'kamal' => 'Kamal deployment',
  'ci_github_actions' => 'GitHub Actions CI'
}.freeze
PATTERN_LABELS =
{
  'sti' => 'Single Table Inheritance (STI)',
  'polymorphic' => 'Polymorphic associations',
  'soft_delete' => 'Soft deletes (paranoia/discard)',
  'versioning' => 'Model versioning/auditing',
  'state_machine' => 'State machines (AASM/workflow)',
  'multi_tenancy' => 'Multi-tenancy',
  'searchable' => 'Full-text search (Searchkick/pg_search/Ransack)',
  'taggable' => 'Tagging',
  'sluggable' => 'Friendly URLs/slugs',
  'nested_set' => 'Tree/nested set structures'
}.freeze

Instance Attribute Summary

Attributes inherited from Base

#context

Method Summary

Methods inherited from SectionFormatter

#call

Methods inherited from Base

#call, #initialize

Constructor Details

This class inherits a constructor from RailsAiBridge::Serializers::Formatters::Base