explaingit

snatchev/lapis

Analysis updated 2026-07-05 · repo last pushed 2015-03-10

LuaAudience · developerComplexity · 3/5DormantLicenseSetup · moderate

TLDR

Lapis is a web framework for building websites and web applications using Lua and MoonScript. It handles routing, page rendering, and web requests, and powers production sites like itch.io.

Mindmap

mindmap
  root((repo))
    What it does
      Builds web apps
      Handles URL routing
      Renders web pages
    Tech stack
      Lua
      MoonScript
    Use cases
      Web applications
      Indie game marketplace
      Package registry site
    Audience
      Lua developers
      MoonScript developers
    License
      MIT open source
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Build a website or web application using Lua or MoonScript.

USE CASE 2

Power a production-level web service with high traffic, like an online marketplace.

USE CASE 3

Create a package registry or catalog site.

USE CASE 4

Handle URL routing and page rendering for a custom web project.

What is it built with?

LuaMoonScript

How does it compare?

snatchev/lapisyufu-onship/a_silky_smooth_ui_for_love2dm2zmforever/atlas
Stars212
LanguageLuaLuaLua
Last pushed2015-03-10
MaintenanceDormant
Setup difficultymoderateeasymoderate
Complexity3/52/52/5
Audiencedeveloperdevelopergeneral

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 30min

Requires familiarity with Lua or MoonScript and likely a web server environment like OpenResty or a compatible Lua environment.

Use, modify, and distribute this software freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

Lapis is a web framework, a toolkit that helps you build websites and web applications, written in the Lua and MoonScript programming languages. It provides the structure and tools developers need to handle things like routing URLs, rendering pages, and managing web requests, so they don't have to build all of that from scratch. The framework is designed to run on top of Lua, a lightweight and fast scripting language. MoonScript, which compiles down to Lua, is also supported for developers who prefer its syntax. Beyond that, the README doesn't go into much detail about specific features or how the internals work. The project links out to a separate documentation site for anyone who wants to dig into the specifics. This framework would appeal to developers who already work with Lua or MoonScript and want a familiar way to build web applications without switching to another language or ecosystem. It has been used to power real-world projects, including itch.io, a well-known indie game marketplace, and a package registry site. That gives a sense that it's capable of supporting production-level traffic and features. The project is open source under the MIT license, which means anyone can use, modify, and distribute it freely. Beyond that, the README is sparse on detail about architecture decisions or tradeoffs, so anyone evaluating it for a project would likely need to explore the external documentation to understand whether it fits their needs.

Copy-paste prompts

Prompt 1
Write a Lapis route that handles a GET request to /hello and returns the text 'Hello World' as the response.
Prompt 2
Create a basic Lapis application with two routes: one for a homepage and one for an about page, rendering simple HTML for each.
Prompt 3
Show me how to set up a Lapis project that connects to a PostgreSQL database and lists rows from a users table on a webpage.
Prompt 4
Convert this Lua Lapis route into MoonScript syntax and explain the differences.

Frequently asked questions

What is lapis?

Lapis is a web framework for building websites and web applications using Lua and MoonScript. It handles routing, page rendering, and web requests, and powers production sites like itch.io.

What language is lapis written in?

Mainly Lua. The stack also includes Lua, MoonScript.

Is lapis actively maintained?

Dormant — no commits in 2+ years (last push 2015-03-10).

What license does lapis use?

Use, modify, and distribute this software freely for any purpose, including commercial use, as long as you keep the copyright notice.

How hard is lapis to set up?

Setup difficulty is rated moderate, with roughly 30min to a first successful run.

Who is lapis for?

Mainly developer.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.