gidget¶ ↑
The smallest taco-loving blog engine in the world!
Gidget is a minimalist blog engine designed to run on Heroku with a Git-based workflow. It is built upon Sinatra and uses haml and rdiscount for templating and markup. It was largely inspired by Toto, however Gidget is built on top of a DSL to minimize and simplify the code.
Basic Structure¶ ↑
-
Sinatra based server
-
A File Mapper to help map requests to pages, posts, and tags
-
A class to handle page information
-
A class to handle post information
Templates¶ ↑
<This section is being rewritten>
Page/Post Creation¶ ↑
<This section is being rewritten>
Settings¶ ↑
Gidget uses Sinatra’s built-in setting support. Settings can be set in your config.ru during creation of the Gidget server:
gidget = Gidget::Server.new do set :title, "My Awesome Blog" set :author, "Your Name Goes Here" set :page_size, 10 end run gidget
Settings can then be accessed from within templates by using the settings object:
!!! 5 %html %head %title= settings.title
Getting Started¶ ↑
The following comands install the Gidget gem, create a Gidget app, and then start the app:
gem install gidget gidget my-gidget-app cd my-gidget-app rackup
At this point you should be able to view your blog by visiting: localhost:9292
Adding Source Control¶ ↑
Before you can host yoru app on Heroku, you must be using Git for source control. Run the following from your app directory to create a new git repository and add all your app code to it:
git init git add * git commit -a -m "Initial load"
Deploy To Heroku¶ ↑
In order to deploy an app to Heroku you must have an account with them. Once you have your account, deploying to Heroku is super easy thanks to their gem:
gem install heroku heroku create git push heroku master heroku open
Congrats! You now have your own blog running on the world wide web!
TO BE DONE¶ ↑
-
Cleanup stub contents
-
Come up with a decent base theme
Contributing to gidget¶ ↑
-
Check out the latest master to make sure the feature hasn’t been implemented or the bug hasn’t been fixed yet
-
Check out the issue tracker to make sure someone already hasn’t requested it and/or contributed it
-
Fork the project
-
Start a feature/bugfix branch
-
Commit and push until you are happy with your contribution
-
Make sure to add tests for it. This is important so I don’t break it in a future version unintentionally.
-
Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.
Copyright¶ ↑
Copyright © 2010 hasmanytrees. See LICENSE.txt for further details.