Permalink
Browse files

Add scrollspy from Twitter Bootstrap.

  • Loading branch information...
1 parent d0803a3 commit 1a43c810876992bab7742768b5b366865bdd7194 @doubleotoo committed Mar 20, 2012
Showing with 271 additions and 529 deletions.
  1. +12 −1 Gemfile
  2. +23 −0 Gemfile.lock
  3. +0 −261 README
  4. +60 −0 README.md
  5. +8 −9 app/assets/javascripts/application.js
  6. +4 −0 app/assets/javascripts/home.js.coffee
  7. +5 −2 app/assets/stylesheets/{application.css → application.css.scss}
  8. +10 −0 app/assets/stylesheets/base.sass
  9. +3 −0 app/assets/stylesheets/home.css.scss
  10. +5 −0 app/controllers/home_controller.rb
  11. +2 −0 app/helpers/home_helper.rb
  12. +2 −0 app/views/home/index.html.haml
  13. +0 −14 app/views/layouts/application.html.erb
  14. +50 −0 app/views/layouts/application.html.haml
  15. +6 −0 config/initializers/sass.rb
  16. +3 −1 config/routes.rb
  17. +19 −0 public/assets/application-9b92c31432e5e15e322f831acb5bc7e4.js
  18. BIN public/assets/application-9b92c31432e5e15e322f831acb5bc7e4.js.gz
  19. +19 −0 public/assets/application-bab741de25507045bff682d84cef45b1.js
  20. BIN public/assets/application-bab741de25507045bff682d84cef45b1.js.gz
  21. +1 −0 public/assets/application-c499f625af413f3d53e1cc07dcf452e8.css
  22. BIN public/assets/application-c499f625af413f3d53e1cc07dcf452e8.css.gz
  23. +1 −0 public/assets/application.css
  24. BIN public/assets/application.css.gz
  25. +19 −0 public/assets/application.js
  26. BIN public/assets/application.js.gz
  27. BIN public/assets/glyphicons-halflings-16cd9c1e6492843e6e32e0ab12967378.png
  28. BIN public/assets/glyphicons-halflings-white-33137abcd2c204b90921315632a32a69.png
  29. BIN public/assets/glyphicons-halflings-white.png
  30. BIN public/assets/glyphicons-halflings.png
  31. +6 −0 public/assets/manifest.yml
  32. BIN public/assets/rails-e4b51606cd77fda2615e7439907bfc92.png
  33. BIN public/assets/rails.png
  34. +0 −241 public/index.html
  35. +9 −0 test/functional/home_controller_test.rb
  36. +4 −0 test/unit/helpers/home_helper_test.rb
View
@@ -11,9 +11,20 @@ gem 'sqlite3'
# Gems used only for assets and not required
# in production environments by default.
group :assets do
- gem 'sass-rails', '~> 3.1.4'
gem 'coffee-rails', '~> 3.1.1'
gem 'uglifier', '>= 1.0.3'
+
+ gem 'haml-rails'
+
+ # CSS
+ gem 'sass-rails', '~> 3.1.4'
+ gem 'compass', :git => 'https://github.com/chriseppstein/compass.git', :tag => 'v0.12.alpha.2'
+ #gem 'anjlab-bootstrap-rails', :require => 'bootstrap-rails',
+ # :git => 'https://github.com/anjlab/bootstrap-rails.git',
+ # :ref => '028a81746f'
+ #gem 'compass-twitter-bootstrap', :git => 'http://github.com/vwall/compass-twitter-bootstrap.git',
+ # :ref => '1a7b5ce54e'
+ gem 'compass_twitter_bootstrap'
end
gem 'jquery-rails'
View
@@ -1,3 +1,13 @@
+GIT
+ remote: https://github.com/chriseppstein/compass.git
+ revision: c2671e271c32b8c2f7bef9600377bd5bf0ab9554
+ tag: v0.12.alpha.2
+ specs:
+ compass (0.12.alpha.2.aab827f)
+ chunky_png (~> 1.2)
+ fssm (>= 0.2.7)
+ sass (~> 3.1)
+
GEM
remote: http://rubygems.org/
specs:
@@ -32,16 +42,26 @@ GEM
ansi (1.4.2)
arel (2.2.3)
builder (3.0.0)
+ chunky_png (1.2.5)
coffee-rails (3.1.1)
coffee-script (>= 2.2.0)
railties (~> 3.1.0)
coffee-script (2.2.0)
coffee-script-source
execjs
coffee-script-source (1.2.0)
+ compass_twitter_bootstrap (2.0.1.2)
+ compass
erubis (2.7.0)
execjs (1.3.0)
multi_json (~> 1.0)
+ fssm (0.2.8.1)
+ haml (3.1.4)
+ haml-rails (0.3.4)
+ actionpack (~> 3.0)
+ activesupport (~> 3.0)
+ haml (~> 3.0)
+ railties (~> 3.0)
hike (1.2.1)
i18n (0.6.0)
jquery-rails (1.0.19)
@@ -110,6 +130,9 @@ PLATFORMS
DEPENDENCIES
coffee-rails (~> 3.1.1)
+ compass!
+ compass_twitter_bootstrap
+ haml-rails
jquery-rails
rails (= 3.1.1)
sass-rails (~> 3.1.4)
View
@@ -1,261 +0,0 @@
-== Welcome to Rails
-
-Rails is a web-application framework that includes everything needed to create
-database-backed web applications according to the Model-View-Control pattern.
-
-This pattern splits the view (also called the presentation) into "dumb"
-templates that are primarily responsible for inserting pre-built data in between
-HTML tags. The model contains the "smart" domain objects (such as Account,
-Product, Person, Post) that holds all the business logic and knows how to
-persist themselves to a database. The controller handles the incoming requests
-(such as Save New Account, Update Product, Show Post) by manipulating the model
-and directing data to the view.
-
-In Rails, the model is handled by what's called an object-relational mapping
-layer entitled Active Record. This layer allows you to present the data from
-database rows as objects and embellish these data objects with business logic
-methods. You can read more about Active Record in
-link:files/vendor/rails/activerecord/README.html.
-
-The controller and view are handled by the Action Pack, which handles both
-layers by its two parts: Action View and Action Controller. These two layers
-are bundled in a single package due to their heavy interdependence. This is
-unlike the relationship between the Active Record and Action Pack that is much
-more separate. Each of these packages can be used independently outside of
-Rails. You can read more about Action Pack in
-link:files/vendor/rails/actionpack/README.html.
-
-
-== Getting Started
-
-1. At the command prompt, create a new Rails application:
- <tt>rails new myapp</tt> (where <tt>myapp</tt> is the application name)
-
-2. Change directory to <tt>myapp</tt> and start the web server:
- <tt>cd myapp; rails server</tt> (run with --help for options)
-
-3. Go to http://localhost:3000/ and you'll see:
- "Welcome aboard: You're riding Ruby on Rails!"
-
-4. Follow the guidelines to start developing your application. You can find
-the following resources handy:
-
-* The Getting Started Guide: http://guides.rubyonrails.org/getting_started.html
-* Ruby on Rails Tutorial Book: http://www.railstutorial.org/
-
-
-== Debugging Rails
-
-Sometimes your application goes wrong. Fortunately there are a lot of tools that
-will help you debug it and get it back on the rails.
-
-First area to check is the application log files. Have "tail -f" commands
-running on the server.log and development.log. Rails will automatically display
-debugging and runtime information to these files. Debugging info will also be
-shown in the browser on requests from 127.0.0.1.
-
-You can also log your own messages directly into the log file from your code
-using the Ruby logger class from inside your controllers. Example:
-
- class WeblogController < ActionController::Base
- def destroy
- @weblog = Weblog.find(params[:id])
- @weblog.destroy
- logger.info("#{Time.now} Destroyed Weblog ID ##{@weblog.id}!")
- end
- end
-
-The result will be a message in your log file along the lines of:
-
- Mon Oct 08 14:22:29 +1000 2007 Destroyed Weblog ID #1!
-
-More information on how to use the logger is at http://www.ruby-doc.org/core/
-
-Also, Ruby documentation can be found at http://www.ruby-lang.org/. There are
-several books available online as well:
-
-* Programming Ruby: http://www.ruby-doc.org/docs/ProgrammingRuby/ (Pickaxe)
-* Learn to Program: http://pine.fm/LearnToProgram/ (a beginners guide)
-
-These two books will bring you up to speed on the Ruby language and also on
-programming in general.
-
-
-== Debugger
-
-Debugger support is available through the debugger command when you start your
-Mongrel or WEBrick server with --debugger. This means that you can break out of
-execution at any point in the code, investigate and change the model, and then,
-resume execution! You need to install ruby-debug to run the server in debugging
-mode. With gems, use <tt>sudo gem install ruby-debug</tt>. Example:
-
- class WeblogController < ActionController::Base
- def index
- @posts = Post.all
- debugger
- end
- end
-
-So the controller will accept the action, run the first line, then present you
-with a IRB prompt in the server window. Here you can do things like:
-
- >> @posts.inspect
- => "[#<Post:0x14a6be8
- @attributes={"title"=>nil, "body"=>nil, "id"=>"1"}>,
- #<Post:0x14a6620
- @attributes={"title"=>"Rails", "body"=>"Only ten..", "id"=>"2"}>]"
- >> @posts.first.title = "hello from a debugger"
- => "hello from a debugger"
-
-...and even better, you can examine how your runtime objects actually work:
-
- >> f = @posts.first
- => #<Post:0x13630c4 @attributes={"title"=>nil, "body"=>nil, "id"=>"1"}>
- >> f.
- Display all 152 possibilities? (y or n)
-
-Finally, when you're ready to resume execution, you can enter "cont".
-
-
-== Console
-
-The console is a Ruby shell, which allows you to interact with your
-application's domain model. Here you'll have all parts of the application
-configured, just like it is when the application is running. You can inspect
-domain models, change values, and save to the database. Starting the script
-without arguments will launch it in the development environment.
-
-To start the console, run <tt>rails console</tt> from the application
-directory.
-
-Options:
-
-* Passing the <tt>-s, --sandbox</tt> argument will rollback any modifications
- made to the database.
-* Passing an environment name as an argument will load the corresponding
- environment. Example: <tt>rails console production</tt>.
-
-To reload your controllers and models after launching the console run
-<tt>reload!</tt>
-
-More information about irb can be found at:
-link:http://www.rubycentral.org/pickaxe/irb.html
-
-
-== dbconsole
-
-You can go to the command line of your database directly through <tt>rails
-dbconsole</tt>. You would be connected to the database with the credentials
-defined in database.yml. Starting the script without arguments will connect you
-to the development database. Passing an argument will connect you to a different
-database, like <tt>rails dbconsole production</tt>. Currently works for MySQL,
-PostgreSQL and SQLite 3.
-
-== Description of Contents
-
-The default directory structure of a generated Ruby on Rails application:
-
- |-- app
- | |-- assets
- | |-- images
- | |-- javascripts
- | `-- stylesheets
- | |-- controllers
- | |-- helpers
- | |-- mailers
- | |-- models
- | `-- views
- | `-- layouts
- |-- config
- | |-- environments
- | |-- initializers
- | `-- locales
- |-- db
- |-- doc
- |-- lib
- | `-- tasks
- |-- log
- |-- public
- |-- script
- |-- test
- | |-- fixtures
- | |-- functional
- | |-- integration
- | |-- performance
- | `-- unit
- |-- tmp
- | |-- cache
- | |-- pids
- | |-- sessions
- | `-- sockets
- `-- vendor
- |-- assets
- `-- stylesheets
- `-- plugins
-
-app
- Holds all the code that's specific to this particular application.
-
-app/assets
- Contains subdirectories for images, stylesheets, and JavaScript files.
-
-app/controllers
- Holds controllers that should be named like weblogs_controller.rb for
- automated URL mapping. All controllers should descend from
- ApplicationController which itself descends from ActionController::Base.
-
-app/models
- Holds models that should be named like post.rb. Models descend from
- ActiveRecord::Base by default.
-
-app/views
- Holds the template files for the view that should be named like
- weblogs/index.html.erb for the WeblogsController#index action. All views use
- eRuby syntax by default.
-
-app/views/layouts
- Holds the template files for layouts to be used with views. This models the
- common header/footer method of wrapping views. In your views, define a layout
- using the <tt>layout :default</tt> and create a file named default.html.erb.
- Inside default.html.erb, call <% yield %> to render the view using this
- layout.
-
-app/helpers
- Holds view helpers that should be named like weblogs_helper.rb. These are
- generated for you automatically when using generators for controllers.
- Helpers can be used to wrap functionality for your views into methods.
-
-config
- Configuration files for the Rails environment, the routing map, the database,
- and other dependencies.
-
-db
- Contains the database schema in schema.rb. db/migrate contains all the
- sequence of Migrations for your schema.
-
-doc
- This directory is where your application documentation will be stored when
- generated using <tt>rake doc:app</tt>
-
-lib
- Application specific libraries. Basically, any kind of custom code that
- doesn't belong under controllers, models, or helpers. This directory is in
- the load path.
-
-public
- The directory available for the web server. Also contains the dispatchers and the
- default HTML files. This should be set as the DOCUMENT_ROOT of your web
- server.
-
-script
- Helper scripts for automation and generation.
-
-test
- Unit and functional tests along with fixtures. When using the rails generate
- command, template test files will be generated for you and placed in this
- directory.
-
-vendor
- External libraries that the application depends on. Also includes the plugins
- subdirectory. If the app has frozen rails, those gems also go here, under
- vendor/rails/. This directory is in the load path.
View
@@ -0,0 +1,60 @@
+$ rvm ruby-1.9.2-p290@justintoo.com-rails
+$ rvm do gem install bundler
+
+
+Rails 3, Compass, and (Twitter) Bootstrap
+http://nepalonrails.tumblr.com/post/13957284625/revisited-rails-3-1-x-with-compass-sass-and
+
+```sass
+/*
+ * This is a manifest file that'll automatically include all the stylesheets available in this directory
+ * and any sub-directories. You're free to add application-wide styles to this file and they'll appear at
+ * the top of the compiled file, but it's generally better to create a new file per style scope.
+ *= require_self
+*/
+@import "compass_twitter_bootstrap";
+@import "compass/css3";
+@import "base";
+```
+
+```javascript
+// This is a manifest file that'll be compiled into including all the files listed below.
+// Add new JavaScript/Coffee code in separate files in this directory and they'll automatically
+// be included in the compiled file accessible from http://example.com/assets/application.js
+// It's not advisable to add code directly here, but if you do, it'll appear at the bottom of the
+// the compiled file.
+//
+//= require jquery
+//= require jquery_ujs
+//= require_tree .
+//= require bootstrap-alerts
+//= require bootstrap-dropdown
+//= require bootstrap-modal
+// Twipsy has to be loaded before popover,
+// otherwise causes a JS error.
+//= require bootstrap-twipsy
+//= require bootstrap-popover
+//= require bootstrap-scrollspy
+//= require bootstrap-tabs
+```
+
+``` bash
+$ RAILS_ENV=development bundle exec rake assets:precompile
+$ RAILS_ENV=production bundle exec rake assets:precompile
+```
+
+Important: If you add a new Javascript or CSS file, you must compile the code so it will be
+available in public/assets for production.
+
+Gemfile::
+
+ gem "haml-rails"
+
+ ```bash
+ $ rails generate controller home index
+ ```
+
+ * Creates Home#index
+ Controller named Home with a method called index
+
+
Oops, something went wrong.

0 comments on commit 1a43c81

Please sign in to comment.