Handcrafted's Foundation Application, a clean starting point for every app
JavaScript Ruby
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
config
db
features
lib
log
public
script
spec
tmp
vendor
vlad
.gitignore
LICENSE
README.textile
Rakefile
TODO.textile

README.textile

Handcrafted Foundation

Handcrafted is a small team of Ruby on Rails developers (mainly Josh Owens and Adam Stacoviak). We focus on creating smart, usable web sites built on a foundation of clean, extensible, handcrafted code. We eat our own dog food, we use Foundation as our core starting point to ensure consistency through-out our applications. We bake all our goodness in here. Once.

Foundation is built with certain specific standards and opinions in mind. We were tired of re-writing and copy & pasting the same code over and over from project to project. Then git came along. Git helped us realize there was a better way.

Key Concepts

  • Make the app extensible by offering smart hooks for engines and plugins to add functionality
  • Keep the code clean. Break repeating code out into partials and re-use as needed
  • Write semantic HTML/Haml. Of course clean, organized CSS/Sass goes with that. And with the help of Compass, we get to ensure that we keep our CSS/Sass DRY
  • Tests, tests, tests. If you aren’t testing. You are wrong.

Opinionated Choices

Gotchas

  • We try to use “Markers” in key files, such as routes and application.js. We do this to ensure that continued foundation development doesn’t trample continued application development
  • Don’t annotate the base Foundation application. You should only be annotating the models in your real application

Installation Steps (development)

1. mkdir My-Foundation-App
2. cd My-Foundation-App
3. git init
4. git remote add foundation git://github.com/handcrafted/foundation.git
5. git pull foundation master
6. git remote add origin git@github.com:me/my-foundation-app.git
7. cp config/database.example.yml config/database.yml
8. Confirm database setup in config/database.yml
9. sudo gem sources -a http://gemcutter.org/
10. sudo gem install chronic
11. rake gems:install
12. rake db:create
13. rake db:migrate
14. rake db:seed
15. compass

License

See LICENSE file