require 'lib/screenshot_generator' require 'ostruct' require 'dotenv' Dotenv.load ### # Compass ### # Change Compass configuration # compass_config do |config| # config.output_style = :compact # end ### # Page options, layouts, aliases and proxies ### # Per-page layout changes: # # With no layout # page "/path/to/file.html", :layout => false # # With alternative layout # page "/path/to/file.html", :layout => :otherlayout # # A path which all have the same layout # with_layout :admin do # page "/admin/*" # end # Proxy pages (https://middlemanapp.com/advanced/dynamic_pages/) # proxy "/this-page-has-no-template.html", "/template-file.html", :locals => { # :which_fake_page => "Rendering a fake page with a local variable" } ### # Helpers ### # Automatic image dimensions on image_tag helper # activate :automatic_image_sizes # Reload the browser automatically whenever files change configure :development do activate :livereload end # Methods defined in the helpers block are available in templates # helpers do # def some_helper # "Helping" # end # end set :css_dir, 'stylesheets' set :js_dir, 'javascripts' set :images_dir, 'images' # Build-specific configuration configure :build do activate :screenshot_generator # For example, change the Compass output style for deployment # activate :minify_css # Minify Javascript on build activate :minify_javascript # Enable cache buster # activate :asset_hash # Use relative URLs activate :relative_assets # Or use a different image path # set :http_prefix, "/Content/images/" end activate :google_analytics do |ga| # Property ID (default = nil) ga.tracking_id = ENV['ANALYTICS_ID'] || 'TEST_GA_TRACKING_ID' # Tracking in development environment (default = true) ga.development = false end activate :deploy do |deploy| deploy.method = :git # Optional Settings # deploy.remote = 'custom-remote' # remote name or git url, default: origin # deploy.branch = 'custom-branch' # default: gh-pages # deploy.strategy = :submodule # commit strategy: can be :force_push or :submodule, default: :force_push # deploy.commit_message = 'custom-message' # commit message (can be empty), default: Automated commit at `timestamp` by middleman-deploy `version` end if ENV['ANALYTICS_ID'] helpers do def themes data.themes.sort_by { |theme| theme['name'] }.map do |theme| OpenStruct.new(theme.merge( slug: theme['name'].parameterize.underscore, digest: Digest::MD5.new.hexdigest(theme['colors']) )) end end end