A doc/slides.pdf => doc/slides.pdf +0 -0
A doc/slides.sent => doc/slides.sent +98 -0
@@ 0,0 1,98 @@
+LeanWeb
+
+Why Ruby
+
+Rack
+
+Tilt
+
+Projects built with LeanWeb
+
+Getting started
+ - Install Ruby
+ - Install LeanWeb
+ - Generate a new project
+ - Run dynamically
+ - Build static files
+
+Ruby installation
+ apt install ruby-full # Debian based
+ pacman -S ruby # Arch Linux based
+ yum install ruby # RedHat Fedora based
+ pkg install ruby # FreeBSD
+ pkg_add ruby # OpenBSD
+ ruby-build 3.2.2 /usr/local # Various
+ asdf install ruby latest # Various
+
+LeanWeb installation
+ gem install --user-install leanweb
+
+A typical new project
+ leanweb new project
+
+Running Rack
+ bundle exec rackup
+
+Building static files
+ bundle exec rake build_static
+
+Project structure
+ - routes.rb: routes
+ - src/controllers/: controllers
+ - src/views/: views
+ - public/: static files
+ - config.ru: Rack configuration file
+
+routes.rb: Where to access stuff
+
+src/controllers/: Static dynamism
+ *
+
+src/controllers/: Static dynamism
+ *fully dynamic web applications are also supported
+
+src/views/: Parse that document
+
+public/: Directly serving static files
+
+config.ru: Rack configuration file
+
+config.ru: A minimal LeanWeb project
+
+Some other cool stuff
+ - Layouts
+ - Org Mode
+ - Mailing
+
+Controller#render_with_layout
+
+Tilt::EmacsOrg: A native parser for Tilt
+ gem install tilt-emacs_org
+
+LeanMail
+
+What about models?
+
+BYOB
+
+What's next?
+
+My current to do list
+ - upgrade Rack
+ - upgrade Haml (waiting for Tilt release)
+ - don't require to @response.finish
+ - make Rack::Reloader actually reload stuff
+ - namespaces support on routes
+ - mechanism for auth guards?
+ - nested routes?
+ - router: default_get_static = false
+
+Breaking changes expected
+
+How to help?
+- Use
+- Develop
+- Fund
+
+Thanks!
+ Felix Freeman <libsys@hacktivista.org>