Hype
Zero-Dependency App Dev
Write a Lua script. Add plugins for extra functionality. Build for your target platforms. Ship binaries that need zero dependencies. No runtime installs, no "missing library" headaches. Just executables that work.
🛠️ Quick How-To
Write your Lua file
(e.g., app.lua)
Run:
hype build app.lua -o mycoolapp
Done.
Send mycoolapp to anyone with that OS. No dependencies required.
🧳 Built for:
What's Inside
Package Scripts
Transform Lua scripts into standalone executables for any platform
Cross-Platform Builds
Build for Linux, macOS, and Windows from one machine. Each platform gets its own binary.
Built-in TUI
Create beautiful terminal applications with the integrated TUI library or the new Bubble Tea plugin
HTTP Support
Build web servers and clients with full HTTP functionality
Embedded Database
Key-value store with ACID transactions using BoltDB
Multi-File Projects
Bundle multiple Lua files with dependency resolution
Plugin System
Extend functionality with versioned Lua plugins. Try the new Bubble Tea plugin for reactive TUIs!
Zero Dependencies
Final executables have no external dependencies
🔗 Get Started
📚 NEW: Comprehensive Documentation
Everything you need to master Hype
Enhanced API Reference
Interactive documentation with real examples, best practices, and copy-to-clipboard functionality
Complete Plugin Guide
Build powerful plugins with advanced patterns, real-world examples, and testing strategies
AI-Friendly Reference
Optimized documentation for AI assistants and LLMs to help with your Hype development
Full Technical Reference
Complete 1000+ line reference covering architecture, patterns, troubleshooting, and migration
Interactive REPL Guide
Master the TUI REPL with interactive examples, shortcuts, and debugging workflows
Troubleshooting & Patterns
Quick fixes for common issues and battle-tested patterns for robust applications
Quick Start
🖥️ Simple TUI App
-- hello.lua
local app = tui.newApp()
local text = tui.newTextView("Hello from Hype!")
text:SetTitle("My First App")
app:SetRoot(text, true)
app:Run()
./hype build hello.lua -o hello
./hello
🌐 HTTP Server
-- server.lua
local http = require('http')
local server = http.newServer()
server:handle("/", function(req, res)
res:json({ message = "Hello World!" })
end)
server:listen(8080)
print("Server running on :8080")
./hype build server.lua -o server
./server
🗄️ Database App
-- db.lua
local kv = require('kv')
local db = kv.open("./data.db")
db:open_db("users")
-- Store data
db:put("users", "john", "John Doe")
-- Retrieve data
local name = db:get("users", "john")
print("User: " .. name)
db:close()
./hype build db.lua -o db
./db
📁 Multi-File Project
-- utils.lua
local M = {}
function M.greet(name)
return "Hello, " .. name .. "!"
end
return M
-- main.lua
local utils = require('./utils')
local http = require('http')
local server = http.newServer()
server:handle("/", function(req, res)
res:json({ message = utils.greet("World") })
end)
server:listen(8080)
./hype build main.lua -o app
./app
🔌 Plugin Usage
-- app.lua
local fs = require("fs")
local http = require('http')
-- Read config file using plugin
local config, err = fs.readFile("config.json")
if not config then
print("Error:", err)
return
end
local server = http.newServer()
server:handle("/", function(req, res)
res:json({ config = config })
end)
server:listen(8080)
./hype build app.lua --plugins fs@1.0.0 -o app
./app
Usage
Performance
15,000+
HTTP requests handled
with 100 concurrent connections
Zero
External dependencies
in final executables
3 OS
Linux, macOS, Windows
from single source
~16MB
Average executable size
with full runtime included