The official README covers some of what motivated us to release this,
Internally we use a lot of Tailwind CSS. Nothing seems to beat Jinja/Alpine/Tailwind.
The opalstack homepage is built with a very similar stack to Ruffins.
We wanted to provide a similar build experience to our users
which lead to the development of Ruffins Generator.
We use a very similar stack to build our home page. (https://opalstack.com/) And being a long time Django/Jinja dev I really fell in love with Tailwind/Alpine.js, but needed jinja for 1 or 2 things. Did not need the database or back end. In fact I wanted a static only solution. The idea is to be a 'front end only Django, for building static sites with Tailwind/Alpine'. When I found DaisyUI that was icing on the cake.
Ruffins is named after Kermit Ruffins who I and another founder met at a trade expo.
I have been working on some demo pages to provide on the community as well, They are not quite ready for public consumption yet. I will update this thread when I publish them, and will make an effort to get it done soon.
The directory structure is as follows,
├── README (the readme file)
├── generate (the site generation script)
├── package.json (node dependencies)
├── requirements.txt (python dependencies)
├── tailwind.config.js (tailwind config)
├── collect (static file collection)
│ └── image.png
├── templates (jinja2 templates)
│ └── index.html
├── www (website root, where files end up after generate is ran)
│ ├── image.png
│ └── index.html
├── node (the node.js directory)
│ └── bin
│ ├── npm
│ ├── npx
│ └── node (binary)
└── node_modules, node.tar.xz, package-lock.json, tmp (node.js support files)
To build an app you would edit the templates in the
templates directory and run 'generate' which will compile the jinja into html and place it within
There are 2 apps for a single setup as well, the generator and the output symlink. You would route the symlink app to your website. The first app is backend only.
Some familiarity with Jinja/Tailwind/DaisyUI/Alpine JS will help, and referencing their official documentation for more info would be a good idea. The whole thing is basically an installer/wrapper for those projects.