Rails 3.2 and Bootstrap - it has never been easier to write compelling interfaces!

Recently, Twitter released version 2.0.0 of Bootstrap. "Simple and flexible HTML, CSS, and Javascript for popular user interface components and interactions" - that's the intro on their Github page. Pretty cool! And even better, thanks to Thomas McDonald and his bootstrap-sass gem we can be up and running in a couple of minutes!

Omniauth pure: Authentication with Facebook, Google, Google Apps, Twitter, Github, AOL, MyOpenID, ...

This article will demonstrate how to set up a multi-provider authentication using the fabulous Omniauth gem. Users will be able to add multiple providers to their account and views for sign-in, sign-up and management of linked accounts are provided. The full source code is available on Github as a basis for your own projects.

The Power of Ajax featuring Prototype and JQuery

This article will demonstrate the use of asynchronous Javascript (Ajax) to generate a better user experience. Three common use cases - adding a new task, deleting a task and editing a task using an in-place-edit - will explained in detail for both the Prototype and the JQuery framework. As required by many real world applications, new tasks will be inserted at the correct position in ordered lists. For in-place-edit the Ajax.InPlaceEditor (Prototype) and best_in_place (JQuery) will be used.

CommunityGuides 12/12 - Deployment on Heroku

Heroku offers a cloud based hosting solution with git. While basic usage is free you can upgrade to more power or storage within minutes. Heroku add-ons provide a convenient way to add more features to your application anytime. This section will briefly discuss the necessary steps to deploy an application like CommunityGuides on Heroku.

CommunityGuides 10/12 - Customizing Devise

This chapter is dedicated to various customizations of Devise. First configuration settings and custom Devise views will be explained. The user model will be extended by countries and overwriting of existing Devise controllers will be highlighted. The chapter will be concluded by the integration of reCAPTCHA into the Devise sign-up page.

CommunityGuides 9/12 - The backend

The previous chapters were dedicated to set up the front end and to enable users to read, create, edit and submit articles. This chapter will feature the implementation of the backend, especially approving or rejecting submitted articles.

CommunityGuides 8/12 - Search and Pagination

Search and pagination are common tasks in Rails applications. This chapter will demonstrate how to add a simple search form to the main article index and it will show how to add a gem to both articles and comments that does the pagination for us. The rest of the article will deal with improvements to the navigation and the inclusion of textile and syntax highlighting.

CommunityGuides 7/12 - Adding Ratings

Adding ratings is quite similar to adding comments. The task will be used to explore calculations in the models that run directly on database level and to add some sweat CSS styles to visualize ratings based on one single image.

CommunityGuides 6/12 - Adding Comments to Articles

Adding comments to articles will be the task of this chapter. Topics covered will be has_many/belong_to relationships, nested routes and writing controllers from scratch without using scaffolding. The chapter is concluded by writing a Rails helper to embed avatars using Gravatar.

CommunityGuides 4/12 - Relations, Validations, Unit Tests, Security

Modeling relations is crucial in Rails applications. This chapter will introduce relations between models, validations and unit tests. Later the difference between authentication and authorization will be highlighted. The chapter will be concluded by mass assignment and related security issues.

CommunityGuides 2/12 - Model-View-Controller Principle, Routes and Tests

Understanding the Model-View-Controller principle and Rails routing is fundamental to Rails development. This chapter will give a brief overview followed by the introduction of Test Driven Development. At the end of the chapter the existing tests that broke after installing Devise will be fixed.

CommunityGuides 1/12 - Introduction, Authentication with Devise

CommunityGuides is a platform to share knowledge on Ruby on Rails. While creating CommunityGuides I documented the whole process of creation. CommunityGuides 1-12 is a series of articles that demonstrate how CommunityGuides has been planned, coded and deployed. I will highlight several aspects of Rails programming and will include links to a lot of online resources for further reading.