alerque/cosmo — explained in plain English
Analysis updated 2026-07-17 · repo last pushed 2026-02-05
Generate dynamic HTML pages in a Lua web app where users can customize their own templates safely.
Create configuration files from templates without giving template authors code execution rights.
Build a report or email generation system where non-technical users design templates without security risk.
Let users theme and customize pages in a web application without exposing your system to harmful code.
| alerque/cosmo | 0verflowme/alarm-clock | 0xhassaan/nn-from-scratch | |
|---|---|---|---|
| Stars | — | — | 0 |
| Language | — | CSS | Python |
| Last pushed | 2026-02-05 | 2022-10-03 | — |
| Maintenance | Maintained | Dormant | — |
| Setup difficulty | moderate | easy | moderate |
| Complexity | 2/5 | 2/5 | 4/5 |
| Audience | developer | vibe coder | developer |
Figures from each repo's GitHub metadata at analysis time.
Requires a C compiler toolchain on UNIX-based systems to build from source via LuaRocks.
Cosmo is a templating engine for the Lua programming language that lets you fill in placeholder values in text templates safely. The key benefit is that it provides much of the flexibility of full-powered template systems without the security risks that come from letting templates run arbitrary code. In many template systems, the template itself can contain programming logic, which means anyone who writes or edits a template could potentially run harmful code on your system. Cosmo avoids this by design. It supports nested templates, expressions, and subtemplates, but keeps the template language restricted so it cannot execute arbitrary commands. This makes it suitable for situations where templates might be user-generated or where you want to keep presentation logic safely separated from application logic. You would use Cosmo if you are building an application in Lua that needs to generate dynamic text, such as HTML pages, configuration files, emails, or reports, and you want to let people design or customize those templates without giving them the keys to your entire system. For example, if you are running a web application and want to allow users to theme their own pages, a safe template engine lets them control layout and content without risking a security hole. The project is installed as a Lua "rock," which is the standard package format for Lua libraries. It requires a C compiler toolchain on UNIX-based systems. The README does not go into detail on usage specifics or advanced configuration, it mainly notes that the current version adds support for Lua 5.3 and lists a few historical bug fixes and feature additions from prior releases.
Cosmo is a safe templating engine for Lua that lets you fill in placeholders in text templates without the security risks of templates that can run arbitrary code. Use it to generate dynamic text like HTML pages or emails where template authors shouldn't have full system access.
Maintained — commit in last 6 months (last push 2026-02-05).
Setup difficulty is rated moderate, with roughly 30min to a first successful run.
Mainly developer.
This repo across BitVibe Labs
Verify against the repo before relying on details.