Learn how to integrate Trifle::Docs as a standalone Sinatra application.
Standalone Sinatra App
Trifle::Docs as a standalone Sinatra app works great. This website you're reading is running as standalone Sinatra app.
Now, to be fair, this kinda defeats the purpose of using
Trifle::Docs over Static Site Generator. Coz, after all, you're not really integrating the documentation anywhere. On the other side, maybe you just prefer
Trifle::Docs simplicity and templating over SSG like Jekyll or Hugo. Who knows. Who am I to judge.
You're gonna have to write a simple Sinatra App first.
#!/usr/bin/env ruby # frozen_string_literal: true require 'bundler/setup' require 'trifle/docs' require 'puma' Trifle::Docs.configure do |config| config.path = File.join(__dir__, 'docs') config.views = File.join(__dir__, 'templates') config.register_harvester(Trifle::Docs::Harvester::Markdown) config.register_harvester(Trifle::Docs::Harvester::File) end Trifle::Docs::App.run!
That was it. It's super simple. Just single
Trifle::Docs.configure block and then run
Trifle::Docs come with sinatra app bundled in.
You're gonna have to write some Markdown files. Thats totally in your area. Please reffer to
Harvester::Markdown for additional details. Follow folder structure documentation.
As a developer you're gonna need to write (at least) two
ERB templates. One for the
layout.erb and one for the
page.erb. You get couple attributes available inside of these templates that you can use to build up menus, breadcrumbs, content and whatnot. Please refer to templates/sinatra_app documentation.