Structure of key application directories
- padrino_app
- app
- assets
- images
- javascripts
- scss
- app.rb
- assets
- app
| module Profile | |
| class App < Padrino::Application | |
| set :root, File.dirname(__FILE__) # Must be set | |
| register Padrino::Rendering | |
| register Padrino::Helpers | |
| enable :sessions | |
| ## | |
| # Assets management | |
| # Compass | |
| register Sinatra::CompassSupport | |
| sass_dir = File.join(File.dirname(__FILE__), 'assets/scss') | |
| Compass.configuration do |c| | |
| c.project_path = root | |
| c.images_dir = "assets/images" | |
| c.http_generated_images_path = "/images" # necessary for sprite generation | |
| c.http_images_path = "/images" | |
| c.cache_dir = '../tmp/sass-cache' # optional | |
| c.sass_options = { | |
| load_paths: [sass_dir] + Compass.sass_engine_options[:load_paths] } # necessary if using SASS partials | |
| end | |
| # Asset Pack | |
| register Sinatra::AssetPack | |
| set :scss, Compass.sass_engine_options # necessary if using SASS partials | |
| assets { | |
| serve '/js', from: 'assets/javascripts' | |
| serve '/css', from: 'assets/scss' | |
| serve '/images', from: 'assets/images' | |
| js :app, [ | |
| '/js/jquery.js', | |
| '/js/jquery-ujs.js', | |
| '/js/app.js' | |
| ] | |
| css :styles, ['/css/styles.css'] | |
| css :ie, ['/css/ie.css'] | |
| js_compression :uglify | |
| css_compression :sass | |
| } | |
| end | |
| end |
Structure of key application directories
| ## Add to your Padrino Gemfile… | |
| # Assets | |
| gem 'sass' | |
| gem 'uglifier' | |
| gem 'sinatra-assetpack' | |
| gem 'sinatra-support', :require => 'sinatra/support/compasssupport' | |
| # Component requirements | |
| gem 'haml' | |
| gem 'compass' | |