Sputnik is a collection of modules packaged as "rocks". This page tells you what the different rocks do.

Sputnik is organized as a collection of "rocks" - bundles of Lua code installable via LuaRocks. Sputnik uses three types of rocks:

  • Third party (someone else built them, we use them)
  • General-purpose rocks that we built
  • Sputnik and its' plugins (we build them, and they are Sputnik-specific), those all start with "sputnik", e.g., "sputnik-tickets".

Note that some of those are rocks in the making and are not actually available in any luarocks repository.

Core Sputnik Rocks

Sputnik's rocks used for the basic setup.

  • sputnik - the main rock, which provides all the "business logic"
    • This is what you install with luarocks: luarocks install sputnik. All other rocks will get pulled automatically.
  • versium - provides storage
    • This will soon be split into two rocks: "versium" for the low-level storage and "saci" for the higher level object-to-string mapping.
  • colors - color calculation
    • A simple module that we use for calculating color schemes
  • xssfilter - (not available yet) a package for ensuring that HTML is safe against cross-site scripting.

External Rocks for Basic Installation

Required by "sputnik"

  • markdown - a module for converting text to HTML
  • md5 - a crypto library we use to do MD5 sums
  • cosmo - a template library
    • Cosmo was born as a part of Sputnik but is now maintained separately by Fábio Mascarenhas. We treat it as an external module now.

Required by "versium"

Optional Rocks and Their Dependencies

Storage Modules for Versium

  • sputnik-svn - a connector to an Subversion backend
    • requires "luasvn" rock (external)
  • sputnik-mysql - a connector to an MySQL database backend
    • requires "luasql" rock (external)

Markup Modules

  • sputnik-pod - a plugin to use POD instead of Markdown
    • requires "pod" (external)
  • sputnik-medialike - a plugin to use a Wikipedia-like markup instead of Markdown
    • requires "medialike" which is now hosted with us but will probably become external

Etc.

  • sputnik-search - a plugin to support search via Google API
  • sputnik-tickets - a plugin for bug tracking - see Tickets

Demos

  • sputnik-album - a plugin writing service for making Sputnik work like an album
  • sputnik-mbox - a plugin resumes for using Sputnik to display mailing list archives
  • sputnik-worldclock - a plugin to show a live world clock
Powered by Sputnik | XHTML 1.1