Sinatra
lucasleecr opened this issue · 0 comments
lucasleecr commented
Link to the codebase
https://github.com/sinatra/sinatra
Which release/version did you read?
2.0.0 (https://github.com/sinatra/sinatra/releases/tag/v2.0.0)
Why it is a good project to read?
- Classic ruby based web framework. Large user base.
Starting point
lib/sinatra/main.rb (https://github.com/sinatra/sinatra/blob/v2.0.0/lib/sinatra/main.rb)
Reading order
main.rb (for stand-alone application)
base.rb (for sub-classing)
Interesting parts
- Integration with rack and its plugins
- Integration with template engines
Any parts should be skipped?
No
Any other tips?
- Create a demo Sinatra application, set debuggers in the Sinatra library, and step through the code.
- Learn rack https://github.com/rack/rack, which is more lower-level
- Sinatra documentation is very good. Make sure you read it.