updated readme
[leap_website.git] / README
1 About this web application
2 ============================
3
4 The LEAP public website is lightweight rails application that just mostly
5 serves up (semi) static templates.
6
7 No databases are used or harmed in the making of this website.
8
9 The goal with this web app is to be as flexible and lightweight as possible,
10 and to support stellar localization.
11
12 There are numerous ruby tools to build static websites, but I found them to
13 not be good for localization and to be too inflexible.
14
15 Installation
16
17     sudo apt-get install ruby ruby-dev rubygems
18     gem install bundler
19     git clone git://leap.se/leap_website
20     cd leap_website
21     bundle
22
23 Running in development mode
24
25     cd leap_website
26     rails server
27
28 Console examples
29
30     rails console
31     rails console production
32     rails dbconsole
33
34 Rake takes
35
36     rake doc:app
37
38 Running in production (with webrick)
39
40     bundle exec rake assets:precompile
41     RAILS_ENV=production rails server
42
43
44 Modifying pages
45 ======================================
46
47 Edit the HAML files found in leap_website/pages
48
49
50 Deploying
51 ======================================
52
53 Manually
54 ----------------
55
56     rsync -a leap_website server:~
57     ssh server
58     cd leap_website
59     bundle install --deployment
60
61 With Capistrano
62 ---------------------
63
64     Edit config/deploy.rb
65     cap setup
66     cap deploy
67
68 Running with Apache
69 ------------------------
70
71 Install Passenger (mod_rack)
72
73    sudo apt-get install libapache2-mod-passenger
74    
75 Configure Apache
76     
77     <VirtualHost *:80>
78       ServerName leap.se
79       DocumentRoot /home/leap/leap_website/public
80       <Directory /home/leap/leap_website/public>
81         Allow from all
82         Options -MultiViews
83       </Directory>
84     </VirtualHost>
85
86
87 Development
88 ==============================
89
90 If you change a sass source file, you must run:
91
92   rake assets:precompile RAILS_ENV=production
93
94 This app uses precompiled assets.
95
96
97 Development Notes
98 =============================
99
100 Search
101 ---------------------------
102
103 Maybe we should add search. 
104
105 This appears to be the most appropriate search tool to use for this static webapp: http://xapian.org/docs/bindings/ruby/
106
107 Some notes on how flask does a similar thing::
108 * http://librelist.com/browser//flask/2012/3/21/maillinglist-archive-searchable/#ff1d34246a16845c410d2c9a411f5829
109 * https://github.com/mitsuhiko/flask/blob/website/flask_website/search.py
110 * https://github.com/mitsuhiko/flask/blob/website/flask_website/views/mailinglist.py
111
112 pure ruby, for ar: https://github.com/dougal/acts_as_indexed/
113
114 Other static CMS in ruby
115 -----------------------------
116
117 * http://nestacms.com/
118 * https://github.com/gma/nesta
119 * https://github.com/gma/nesta-rails
120 * https://github.com/quickleft/regulate -- git, engine, cms, rails
121
122