Module: Ella

Defined in:
lib/ella.rb,
lib/ella/cli.rb,
lib/ella/log.rb,
lib/ella/test.rb,
lib/ella/server.rb,
lib/ella/version.rb,
lib/ella/pipeline.rb,
lib/ella/template.rb,
lib/ella/generator.rb,
lib/ella/controller.rb,
lib/ella/name_formatter.rb,
lib/ella/generator/destroyer.rb,
lib/ella/generator/view_generator.rb,
lib/ella/generator/model_generator.rb,
lib/ella/generator/config_generator.rb,
lib/ella/generator/gemfile_generator.rb,
lib/ella/generator/project_generator.rb,
lib/ella/generator/rackfile_generator.rb,
lib/ella/generator/controller_generator.rb

Overview

Extra-special Message


I started making Ella because I found writing my own quick asset pipelines was much easier and faster and more bug-free than the “modern” and “correct” solutions. YAGNI should be a major cornerstorne of Ella.

Rake may be considered iff this file ever becomes overly-complicated or slow, but I want to make sure that an easy pipeline is available by default. The user can set up another pipeline if they need something more complicated.

– kmc

Defined Under Namespace

Classes: CLI, ConfigGenerator, Controller, ControllerGenerator, Destroyer, GemfileGenerator, Generator, Log, ModelGenerator, NameFormatter, Pipeline, ProjectGenerator, RackfileGenerator, Server, Template, Test, ViewGenerator

Constant Summary collapse

VERSION =
'0.1.3'

Class Method Summary collapse

Class Method Details

.abort(message) ⇒ Object

This custom function exists because, ideally, the program will always abort with a logged message.



28
29
30
31
# File 'lib/ella.rb', line 28

def self.abort(message)
  Log.error(message)
  Kernel.abort
end

.find_rootObject

Most of what Ella does requires a valid Ella project, however, the user could potentially be in a subdirectory.



35
36
37
38
39
40
41
42
43
44
# File 'lib/ella.rb', line 35

def self.find_root
  until Dir.entries(Dir.pwd).include?('main.rb')
    if Dir.pwd == '/'
      puts 'Error! This is not a valid Ella project directory!'
      exit!
    else
      Dir.chdir('..')
    end
  end
end