SlideShare a Scribd company logo
Introduction to Rango
Jakub Šťastný aka Botanicus
Monday, November 30, 2009
About me
• Designer & author fo Rango
• Contributor to many OSS include rSpec,
Merb, Usher, Racksh etc
• http://twitter.com/botanicus
• Currently looking for a job or contract
• http://static.101ideas.cz/CV.html
Monday, November 30, 2009
What is Rango?
• Rack-based lightweight web framework
• As agnostic as possible
• The goal is to provide solid framework for
building sites in Ruby. More robust than
Sinatra, but smaller than Rails or Merb.
Monday, November 30, 2009
Features
• Ruby 1.9-only
• Provides generators, but don’t insist on a
certain structure
• Code reloading by shotgun
• Bundler support
• Inspired by Django & Merb
Monday, November 30, 2009
• Django terminology (template, view = view,
action in controller)
• Very flexible, you can use just whichever
subset of Rango you want and it will work.
• No conventions, just recommendations
Monday, November 30, 2009
Boot Process
• Script init.rb should setup environment
• Work as runner: ./init.rb myscript.rb
• And as a console: ./init.rb -i
• Or both altogether: ./init.rb -i myscript.rb
• Start web server: ./config.ru
• Rewrite arguments: ./config.ru -s thin
Monday, November 30, 2009
Routers
• Usher, Rack-mount
• URLMap, Rack-router
• Rango::UrlHelper for url(:post, id)
• env[“rango.router.params”]
Monday, November 30, 2009
Rendering
• You don’t need controllers for it
• Or just include Rango::RenderMixin
Monday, November 30, 2009
Template Inheritance
• Default values for blocks
• Block can return whichever value
• AJAX
Monday, November 30, 2009
Basic Example
Monday, November 30, 2009
Returning values
Monday, November 30, 2009
AJAX
Monday, November 30, 2009
GenericViews
Monday, November 30, 2009
Monday, November 30, 2009
Monday, November 30, 2009
HTTP Errors Handling
Monday, November 30, 2009
Monday, November 30, 2009
Monday, November 30, 2009
Future
• January 2010 in Rango 0.3: Mountable apps
via Pancake: each app can run standalone or
be used as a library (can be distributed as
gems with assets & templates)
Monday, November 30, 2009
Links
• GitHub: http://github.com/botanicus/rango
• Wiki: http://wiki.github.com/botanicus/rango
• Issues: http://github.com/botanicus/rango/issues
• Blog: http://botanicus.github.com/rango
• Twitter: http://twitter.com/RangoProject
Monday, November 30, 2009
Related Projects: Pupu
• Package manager for media stuff
• JS/CSS frameworks & plugins, icon sets ...
• pupu install autocompleter
• Helper: pupu :autocompleter
• Can handle dependencies
Monday, November 30, 2009
Related Projects:
Simple-templater
• Highly-opinionated
• Reusable hooks
• Redefine partially or the whole
• ~/.simple-templater/rango/project
Monday, November 30, 2009
• Thank you for your attention!
Monday, November 30, 2009

More Related Content

Similar to Rango (20)

PDF
Drupal Course 2012 - Code Driven Development
Attila Cs. Nagy
 
PDF
Drupal 8 Preview for Site Builders
Acquia
 
KEY
Sinatra Heroku You And You - Keynote Format
Adam Lowe
 
PDF
Sinatra Heroku You And You - PDF Format
Adam Lowe
 
PDF
Processing
Cate Huston
 
PDF
Chef - Configuration Management for the Cloud
James Casey
 
PDF
Top 20 Drupal Mistakes newbies make
Iztok Smolic
 
PDF
Mojo+presentation+1
Craig Condon
 
PDF
Performance Strategies
Alexander Meindl
 
PDF
Rango
James Russell
 
PDF
JRubyConf 2009
John Woodell
 
PDF
Nuxeo Iks 2009 11 13
Olivier Grisel
 
PDF
Infrastructure as Code with Chef / Puppet
Edmund Siegfried Haselwanter
 
PDF
Functional Java Script - Webtechcon 2009
wolframkriesing
 
PDF
Django
Ksd Che
 
PDF
Jrubykaigi 2010
John Woodell
 
PPTX
Modern web technologies
Simeon Prusiyski
 
PDF
Twig & D8 - DrupalCamp Baltics 2013 - Tallinn
Sir-Arturio
 
PDF
Stackato v4
Jonas Brømsø
 
PDF
Off the Treadmill: Building a Drupal Platform for Your Organization
Rick Vugteveen
 
Drupal Course 2012 - Code Driven Development
Attila Cs. Nagy
 
Drupal 8 Preview for Site Builders
Acquia
 
Sinatra Heroku You And You - Keynote Format
Adam Lowe
 
Sinatra Heroku You And You - PDF Format
Adam Lowe
 
Processing
Cate Huston
 
Chef - Configuration Management for the Cloud
James Casey
 
Top 20 Drupal Mistakes newbies make
Iztok Smolic
 
Mojo+presentation+1
Craig Condon
 
Performance Strategies
Alexander Meindl
 
JRubyConf 2009
John Woodell
 
Nuxeo Iks 2009 11 13
Olivier Grisel
 
Infrastructure as Code with Chef / Puppet
Edmund Siegfried Haselwanter
 
Functional Java Script - Webtechcon 2009
wolframkriesing
 
Django
Ksd Che
 
Jrubykaigi 2010
John Woodell
 
Modern web technologies
Simeon Prusiyski
 
Twig & D8 - DrupalCamp Baltics 2013 - Tallinn
Sir-Arturio
 
Stackato v4
Jonas Brømsø
 
Off the Treadmill: Building a Drupal Platform for Your Organization
Rick Vugteveen
 

More from elliando dias (20)

PDF
Clojurescript slides
elliando dias
 
PDF
Why you should be excited about ClojureScript
elliando dias
 
PDF
Functional Programming with Immutable Data Structures
elliando dias
 
PPT
Nomenclatura e peças de container
elliando dias
 
PDF
Geometria Projetiva
elliando dias
 
PDF
Polyglot and Poly-paradigm Programming for Better Agility
elliando dias
 
PDF
Javascript Libraries
elliando dias
 
PDF
How to Make an Eight Bit Computer and Save the World!
elliando dias
 
PDF
Ragel talk
elliando dias
 
PDF
A Practical Guide to Connecting Hardware to the Web
elliando dias
 
PDF
Introdução ao Arduino
elliando dias
 
PDF
Minicurso arduino
elliando dias
 
PDF
Incanter Data Sorcery
elliando dias
 
PDF
Fab.in.a.box - Fab Academy: Machine Design
elliando dias
 
PDF
The Digital Revolution: Machines that makes
elliando dias
 
PDF
Hadoop + Clojure
elliando dias
 
PDF
Hadoop - Simple. Scalable.
elliando dias
 
PDF
Hadoop and Hive Development at Facebook
elliando dias
 
PDF
Multi-core Parallelization in Clojure - a Case Study
elliando dias
 
PDF
From Lisp to Clojure/Incanter and RAn Introduction
elliando dias
 
Clojurescript slides
elliando dias
 
Why you should be excited about ClojureScript
elliando dias
 
Functional Programming with Immutable Data Structures
elliando dias
 
Nomenclatura e peças de container
elliando dias
 
Geometria Projetiva
elliando dias
 
Polyglot and Poly-paradigm Programming for Better Agility
elliando dias
 
Javascript Libraries
elliando dias
 
How to Make an Eight Bit Computer and Save the World!
elliando dias
 
Ragel talk
elliando dias
 
A Practical Guide to Connecting Hardware to the Web
elliando dias
 
Introdução ao Arduino
elliando dias
 
Minicurso arduino
elliando dias
 
Incanter Data Sorcery
elliando dias
 
Fab.in.a.box - Fab Academy: Machine Design
elliando dias
 
The Digital Revolution: Machines that makes
elliando dias
 
Hadoop + Clojure
elliando dias
 
Hadoop - Simple. Scalable.
elliando dias
 
Hadoop and Hive Development at Facebook
elliando dias
 
Multi-core Parallelization in Clojure - a Case Study
elliando dias
 
From Lisp to Clojure/Incanter and RAn Introduction
elliando dias
 
Ad

Recently uploaded (20)

PDF
Agentic Artificial Intelligence (AI) and its growing impact on business opera...
Alakmalak Technologies Pvt. Ltd.
 
PDF
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
PPTX
The Yotta x CloudStack Advantage: Scalable, India-First Cloud
ShapeBlue
 
PDF
introduction to computer hardware and sofeware
chauhanshraddha2007
 
PDF
OpenInfra ID 2025 - Are Containers Dying? Rethinking Isolation with MicroVMs.pdf
Muhammad Yuga Nugraha
 
PPTX
Extensions Framework (XaaS) - Enabling Orchestrate Anything
ShapeBlue
 
PDF
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
PDF
HR agent at Mediq: Lessons learned on Agent Builder & Maestro by Tacstone Tec...
UiPathCommunity
 
PDF
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
PPTX
AI Code Generation Risks (Ramkumar Dilli, CIO, Myridius)
Priyanka Aash
 
PDF
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
PDF
UiPath vs Other Automation Tools Meeting Presentation.pdf
Tracy Dixon
 
PDF
Women in Automation Presents: Reinventing Yourself — Bold Career Pivots That ...
DianaGray10
 
PDF
Bitcoin+ Escalando sin concesiones - Parte 1
Fernando Paredes García
 
PDF
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
PDF
Integrating IIoT with SCADA in Oil & Gas A Technical Perspective.pdf
Rejig Digital
 
PPTX
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
PDF
Meetup Kickoff & Welcome - Rohit Yadav, CSIUG Chairman
ShapeBlue
 
PPTX
python advanced data structure dictionary with examples python advanced data ...
sprasanna11
 
PDF
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
Agentic Artificial Intelligence (AI) and its growing impact on business opera...
Alakmalak Technologies Pvt. Ltd.
 
RAT Builders - How to Catch Them All [DeepSec 2024]
malmoeb
 
The Yotta x CloudStack Advantage: Scalable, India-First Cloud
ShapeBlue
 
introduction to computer hardware and sofeware
chauhanshraddha2007
 
OpenInfra ID 2025 - Are Containers Dying? Rethinking Isolation with MicroVMs.pdf
Muhammad Yuga Nugraha
 
Extensions Framework (XaaS) - Enabling Orchestrate Anything
ShapeBlue
 
Lecture A - AI Workflows for Banking.pdf
Dr. LAM Yat-fai (林日辉)
 
HR agent at Mediq: Lessons learned on Agent Builder & Maestro by Tacstone Tec...
UiPathCommunity
 
GDG Cloud Munich - Intro - Luiz Carneiro - #BuildWithAI - July - Abdel.pdf
Luiz Carneiro
 
AI Code Generation Risks (Ramkumar Dilli, CIO, Myridius)
Priyanka Aash
 
Ampere Offers Energy-Efficient Future For AI And Cloud
ShapeBlue
 
UiPath vs Other Automation Tools Meeting Presentation.pdf
Tracy Dixon
 
Women in Automation Presents: Reinventing Yourself — Bold Career Pivots That ...
DianaGray10
 
Bitcoin+ Escalando sin concesiones - Parte 1
Fernando Paredes García
 
NewMind AI Weekly Chronicles – July’25, Week III
NewMind AI
 
Integrating IIoT with SCADA in Oil & Gas A Technical Perspective.pdf
Rejig Digital
 
Agile Chennai 18-19 July 2025 Ideathon | AI Powered Microfinance Literacy Gui...
AgileNetwork
 
Meetup Kickoff & Welcome - Rohit Yadav, CSIUG Chairman
ShapeBlue
 
python advanced data structure dictionary with examples python advanced data ...
sprasanna11
 
State-Dependent Conformal Perception Bounds for Neuro-Symbolic Verification
Ivan Ruchkin
 
Ad

Rango