The Pretzel suite

TravisCI badge Version badge Code Climate


Welcome to the canonical repo of the Pretzel suite, a tiny web framework inspired by the ideas of Sinatra and Nancy. This framework has some strong opinions on how to structure an application and thus may not be suited for everyone.

If you like convention-over-configuration and building web applications from small building blocks along the lines of the UNIX philosophy, you have come to the right place.

Philosophy

The Pretzel suite is built upon the UNIX philosopy. A piece of software should do one thing and do it well. The Pretzel core itself is a tiny 144 lines in 3 modules. It basically only provides routing, filters and it exposes some Rack middleware.

After that everything is an extension. Even the templating and the status/redirect/session methods. The goal is to create a framework which you can take and stick together the way you need it.

Documentation

The documentation is available in the docs folder. It is sorted by a xx-yy-name pattern, where xx is a major and yy a minor chapter. The documentation takes the approach to teach by example, thus you will get lots of code snippets to visualize how things work.

Bug reports

If you found a bug, feel free to send it in via the issue tracker on the right side. Or, if you know some code, maybe write a patch for it yourself! I usually lint my code with ruby -wc, and I'd ask you to do the same. Also don't forget to write and run tests. Otherwise I may go on neverending rants and we both don't want that.

Who's responsible for this and why?

The dude behind all of this is me, Richard Blechinger. On the internet I'm more commonly known by nicknames "Folis" and "Pretzelhands" (See where the framework name comes from?). I'm a web developer who tries to learn as many things as humanly possible. This is why the Pretzel suite exists, too. It started as endeavour to look at Rack and how it works.

Licensing

MIT everytime all the time. Go ahead and do what you want.