melhor estrutura de pasta para atrevimento em sinatra

usar sass no Sinatra é muito fácil de implementar. sinatra é um ótimo framework vem com

faça o que quiser comigo

e eu gosto!

agora eu quero compartilhar alguns truques como configurar o sass no sinatra com a melhor maneira, sem joias.
seu diretório de aplicativos será semelhante a este:

[apps directory]
| - app.rb
| - [public]
| - | - [bootstrap]
| - [assets]
| - | - [views]
| - - - | - layout.erb
| - | - [sass]
| - - - | - main.scss

sass& viewspasta estão dentro da assetspasta. agora diremos ao sinatra para usar nosso erbarquivo e o scssarquivo corretamente.

# app.rb 
require "sinatra"
configure
do
set :public_folder , "public"
set :views , "assets"
set :erb , :layout => :"views/layout"
end

get "/sass.css" do
scss
:"sass/main"
end
# you should at <link href="/sass.css" .. to your template file.
# change the `sass.css` with whatever name that you prefer.

o que está acontecendo no configurebloco?

set :public_folder , "public"'definir o nome da pasta pública, o padrão é público este é um lugar onde você coloca algum bootstrap ou outro kit de ferramentas de front-end.

set :views , "assets"defina o nome da pasta do modelo. este é um lugar para todos os arquivos de template e sass.

set :erb , :layout => :"views/layout"definido globalmente para o modelo erb para usar o mecanismo de layout views/layout.erb.

quando você usa namespaceextensão, o erbmodelo de configuração global não funciona.
você deve adicionar dentro do bloco. como isso:

namespace "/login/?" do
get do
erb
:"views/auth/login", :layout => :"views/layout"
end

post
do
# do whatever
end
end