Sputnik (software)
The Sputnik Wiki is a lightweight, cross-platform example of the wiki software application type. It is written in Lua and runs over multiple web servers (Apache/CGI and Kepler/Xavante). A basic Sputnik wiki runs in AbOUT 2000 LOC complete. The product's extensibility and configurability allows it to be morphed into other types of webapps, such as a photo album, bug tracker (in 120 lines of code), blog, or calendar.
Features
Differentiating features (among Wikis) include:
- A Sputnik/Kepler installation uses 1Mb.
- No-compile installation
- Sputnik ships with the webapp stack included.
- Lua installation not required
- root/Administrator not required
Architecture
The Webapp architecture stacks up like this:
- Configuration managed by configuration nodes, which perform actions sent to them as much as describe configuration.
- Plugins via LuaRocks (Markup, Storage, Authentication/CAPTCHA, etc.)
- Cosmo templates
- Markup: Markdown, Medialike, or POD
- Saci document storage system, somewhat similar to a CMS.
- Versuim storage management API.
- Storage options: Database (SQLite3 or MySQL) and Git
- Kepler
- Xavante, an http server using Copas (below)
- Copas
- LuaSocket
- Lua
License
The Sputnik team grants use of the product under an Open Source MIT-styled (attribution) license.
External links
- Sputnik project web site
- Sputnik sandbox