Class: Binocs::Generators::InstallGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- Binocs::Generators::InstallGenerator
- Includes:
- Rails::Generators::Migration
- Defined in:
- lib/generators/binocs/install/install_generator.rb
Class Method Summary collapse
Instance Method Summary collapse
- #add_route ⇒ Object
- #copy_migrations ⇒ Object
- #create_initializer ⇒ Object
- #show_readme ⇒ Object
- #update_gitignore ⇒ Object
Class Method Details
.next_migration_number(dirname) ⇒ Object
13 14 15 |
# File 'lib/generators/binocs/install/install_generator.rb', line 13 def self.next_migration_number(dirname) ActiveRecord::Generators::Base.next_migration_number(dirname) end |
Instance Method Details
#add_route ⇒ Object
25 26 27 |
# File 'lib/generators/binocs/install/install_generator.rb', line 25 def add_route route "mount Binocs::Engine => '/binocs' unless Rails.env.production?" end |
#copy_migrations ⇒ Object
17 18 19 |
# File 'lib/generators/binocs/install/install_generator.rb', line 17 def copy_migrations migration_template "create_binocs_requests.rb", "db/migrate/create_binocs_requests.rb" end |
#create_initializer ⇒ Object
21 22 23 |
# File 'lib/generators/binocs/install/install_generator.rb', line 21 def create_initializer template "initializer.rb", "config/initializers/binocs.rb" end |
#show_readme ⇒ Object
49 50 51 52 53 54 55 56 57 58 |
# File 'lib/generators/binocs/install/install_generator.rb', line 49 def show_readme say "" say "Binocs installed successfully!", :green say "" say "Next steps:" say " 1. Run migrations: bin/rails db:migrate" say " 2. Start your server: bin/rails server" say " 3. Visit: http://localhost:3000/binocs" say "" end |
#update_gitignore ⇒ Object
29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# File 'lib/generators/binocs/install/install_generator.rb', line 29 def update_gitignore gitignore_path = Rails.root.join(".gitignore") return unless File.exist?(gitignore_path) gitignore_entries = <<~GITIGNORE # Binocs AI Agent files .binocs-context.md .binocs-prompt.md GITIGNORE gitignore_content = File.read(gitignore_path) # Check if already added return if gitignore_content.include?(".binocs-context.md") append_to_file ".gitignore", gitignore_entries say "Updated .gitignore with Binocs entries", :green end |