summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSaku Ytti <saku@ytti.fi>2014-03-01 19:27:44 +0200
committerSaku Ytti <saku@ytti.fi>2014-03-01 19:27:44 +0200
commit465de586078eb40e6d0ae820d9da8a254c181021 (patch)
tree87bbbe5b7732fb58c0b6b77bc2de67caa0318ff4
parent7c2565720c898b0573a5a30db958d8a78577f4a4 (diff)
Switch from CSS to SASS
I probably should figure out how to start rack in the code, so I'd get caching of the SASS (and in future Coffee) files, instead of Sinatra generating them always on the fly
-rw-r--r--Gemfile.lock4
-rw-r--r--TODO.md3
-rw-r--r--lib/oxidized/api/web/public/css/oxidized.css43
-rw-r--r--lib/oxidized/api/web/views/head.haml2
-rw-r--r--lib/oxidized/api/web/views/oxidized.sass51
-rw-r--r--lib/oxidized/api/web/webapp.rb11
-rw-r--r--oxidized.gemspec9
7 files changed, 66 insertions, 57 deletions
diff --git a/Gemfile.lock b/Gemfile.lock
index e40712b..3003aa8 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -1,11 +1,12 @@
PATH
remote: .
specs:
- oxidized (0.0.30)
+ oxidized (0.0.33)
grit
haml
net-ssh
puma
+ sass
sequel
sinatra
sinatra-contrib
@@ -33,6 +34,7 @@ GEM
rack
rack-test (0.6.2)
rack (>= 1.0)
+ sass (3.2.14)
sequel (4.7.0)
sinatra (1.4.4)
rack (~> 1.4)
diff --git a/TODO.md b/TODO.md
index 5913e84..74ac8c0 100644
--- a/TODO.md
+++ b/TODO.md
@@ -8,9 +8,6 @@
# config
* save keys as strings, load as symbols?
-# REST API
- * figure out if is somehow possible to run rack/puma/sinatra stack with oxidized select()
-
# other
should it offer cli mass config-pusher? (I think not, I have ideas for such
program and I'm not sure if synergies are high enough for shared code without
diff --git a/lib/oxidized/api/web/public/css/oxidized.css b/lib/oxidized/api/web/public/css/oxidized.css
deleted file mode 100644
index 9df98c6..0000000
--- a/lib/oxidized/api/web/public/css/oxidized.css
+++ /dev/null
@@ -1,43 +0,0 @@
-body {
- background: #fdf6e3;
- color: #002b36;
-}
-
-a:link {
- color: #dc322f;
- text-decoration: none;
-}
-
-a:visited {
-}
-
-a:hover {
- color: #d33682;
- text-decoration: underline;
-}
-
-a:active {
-}
-
-.center {
- margin-left: auto;
- margin-right: auto;
- text-align: center;
-}
-
-th {
- color: #2aa198;
-}
-
-tr.odd {
- background: #eee8d5;
-}
-
-tr.even {
- background: #fdf6e3;
-}
-
-tr:hover {
- background: #586e75;
- color: #fdf6e3;
-}
diff --git a/lib/oxidized/api/web/views/head.haml b/lib/oxidized/api/web/views/head.haml
index 1619512..55fdb7c 100644
--- a/lib/oxidized/api/web/views/head.haml
+++ b/lib/oxidized/api/web/views/head.haml
@@ -1,3 +1,3 @@
%head
%title oxidized
- %link{:rel=>'stylesheet', :href=>'/css/oxidized.css'}
+ %link{:rel=>'stylesheet', :href=>'/stylesheets/oxidized.css'}
diff --git a/lib/oxidized/api/web/views/oxidized.sass b/lib/oxidized/api/web/views/oxidized.sass
new file mode 100644
index 0000000..39d090f
--- /dev/null
+++ b/lib/oxidized/api/web/views/oxidized.sass
@@ -0,0 +1,51 @@
+$font-stack: Helvetica, sans-serif
+$base03: #002b36
+$base02: #073642
+$base01: #586e75
+$base00: #657b83
+$base0: #839496
+$base1: #93a1a1
+$base2: #eee8d5
+$base3: #fdf6e3
+$yellow: #b58900
+$orange: #cb4b16
+$red: #dc322f
+$magenta: #d33682
+$violet: #6c71c4
+$blue: #268bd2
+$cyan: #2aa198
+$green: #859900
+
+body
+ font: 100% $font-stack
+ color: $base03
+ background: $base3
+
+a:link
+ color: $red
+ text-decoration: none
+
+// a:visited
+// a:active
+
+a:hover
+ color: $magenta
+ text-decoration: underline
+
+.center
+ margin-left: auto
+ margin-right: auto
+ text-align: center
+
+th
+ color: $cyan
+
+tr.odd
+ background: $base2
+
+tr.even
+ background: $base3
+
+tr:hover
+ background: $base01
+ color: $base3
diff --git a/lib/oxidized/api/web/webapp.rb b/lib/oxidized/api/web/webapp.rb
index 4cec200..3d66ba8 100644
--- a/lib/oxidized/api/web/webapp.rb
+++ b/lib/oxidized/api/web/webapp.rb
@@ -1,7 +1,7 @@
require 'sinatra/base'
require 'sinatra/json'
require 'haml'
-require 'pp'
+require 'sass'
module Oxidized
module API
class WebApp < Sinatra::Base
@@ -68,10 +68,11 @@ module Oxidized
out :node
end
- #get '/node/:node' do
- # @data = nodes.show params[:node]
- # out
- #end
+ get '/stylesheets/*.css' do
+ sass params[:splat].first.to_sym
+ end
+
+ private
def out template=:default
if @json or params[:format] == 'json'
diff --git a/oxidized.gemspec b/oxidized.gemspec
index db9c761..9e2e8cf 100644
--- a/oxidized.gemspec
+++ b/oxidized.gemspec
@@ -1,6 +1,6 @@
Gem::Specification.new do |s|
s.name = 'oxidized'
- s.version = '0.0.31'
+ s.version = '0.0.33'
s.platform = Gem::Platform::RUBY
s.authors = [ 'Saku Ytti' ]
s.email = %w( saku@ytti.fi )
@@ -12,13 +12,14 @@ Gem::Specification.new do |s|
s.executables = %w( oxidized )
s.require_path = 'lib'
- s.add_dependency 'sequel'
- s.add_dependency 'sqlite3'
s.add_dependency 'net-ssh'
+ s.add_dependency 'sqlite3'
s.add_dependency 'grit'
+ s.add_dependency 'sequel'
s.add_dependency 'sinatra'
s.add_dependency 'sinatra-contrib'
- s.add_dependency 'haml'
s.add_dependency 'puma'
+ s.add_dependency 'haml'
+ s.add_dependency 'sass'
end