🪐 Orbit - a Gemini app framework for Elixir
A simple framework for a simple protocol.
🚧 🚧 🚧 Alpha software - under active delopment 🚧 🚧 🚧
Orbit borrows a lot of ideas from Plug and Phoenix.
The foundation consists of:
Orbit.Capsule- TLS endpoint that accepts incoming connections (likePhoenix.Endpointandcowboycombined)Orbit.Request- encapsulates the request-response lifecyle (likePlug.Conn)
Your application implements:
Orbit.Pipe- the behaviour for request middleware (likePlug)Orbit.Router- defines pipelines and routesOrbit.Controller- processes requests and render viewsOrbit.View- renders Gemtext content
Some additional niceties:
Orbit.Static- serves up static contentOrbit.Status- applies response status codes
There's still a lot TODO!
See the GitHub project for the latest progress.
Installation
Orbit can be added to any existing application, including a Phoenix one.
See the Quick Start guide for installation instructions.