vorma

package module
v0.85.0-pre.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 29, 2026 License: BSD-3-Clause Imports: 7 Imported by: 0

README

Vorma Framework

Vorma banner

The Next.js of Golang, powered by Vite.

vorma.dev | github.com | pkg.go.dev | npmjs.com | x.com

Quick Start

npm create vorma@latest

What is Vorma?

Vorma is a lot like Next.js, Remix, or TanStack Start, but it uses Go on the backend, with your choice of React, Solid, or Preact on the frontend.

It has nested routing, effortless end-to-end type safety (including Link components!), parallel-executed route loaders, and much, much more.

It's deeply integrated with Vite to give you full hot module reloading at dev-time.

Get Started

If you want to dive right in, just open a terminal and run npm create vorma@latest and follow the prompts.

If you'd prefer to read more first, take a peek at our docs.

Status

Vorma's underlying tech has reached a good degree of stability, but its APIs are still evolving. Sub-1.0 releases may contain breaking changes. If you ever need help upgrading to the latest version, feel free to file an issue on GitHub or reach out on X.

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	MustGetPort            = wave.MustGetPort
	GetIsDev               = wave.GetIsDev
	SetModeToDev           = wave.SetModeToDev
	IsJSONRequest          = vormaruntime.IsJSONRequest
	VormaBuildIDHeaderKey  = vormaruntime.VormaBuildIDHeaderKey
	EnableThirdPartyRouter = mux.InjectTasksCtxMiddleware
)

Re-exported functions

Functions

func Internal__GetCurrentNPMVersion

func Internal__GetCurrentNPMVersion() string

Types

type Action

type Action[I any, O any] = mux.TaskHandler[I, O]

Type aliases for public API

func NewAction

func NewAction[I any, O any, CtxPtr ~*Ctx, Ctx any](
	app *Vorma,
	m string,
	p string,
	f func(CtxPtr) (O, error),
	decorateCtx func(*mux.ReqData[I]) CtxPtr,
) *Action[I, O]

type ActionFunc

type ActionFunc[Ctx any, I any, O any] = func(*Ctx) (O, error)

Type aliases for public API

type ActionReqData

type ActionReqData[I any] = vormaruntime.ActionReqData[I]

Type aliases for public API

type ActionsRouter

type ActionsRouter = vormaruntime.ActionsRouter

Type aliases for public API

type ActionsRouterOptions

type ActionsRouterOptions = vormaruntime.ActionsRouterOptions

Type aliases for public API

type AdHocType

type AdHocType = tsgen.AdHocType

Type aliases for public API

type FormData

type FormData = vormaruntime.FormData

Type aliases for public API

type HeadEls

type HeadEls = headels.HeadEls

Type aliases for public API

type Loader

type Loader[O any] = mux.TaskHandler[None, O]

Type aliases for public API

func NewLoader

func NewLoader[O any, CtxPtr ~*Ctx, Ctx any](
	app *Vorma,
	p string,
	f func(CtxPtr) (O, error),
	decorateCtx func(*LoaderReqData) CtxPtr,
) *Loader[O]

type LoaderError

type LoaderError = vormaruntime.LoaderError

Type aliases for public API

type LoaderFunc

type LoaderFunc[Ctx any, O any] = func(*Ctx) (O, error)

Type aliases for public API

type LoaderReqData

type LoaderReqData = vormaruntime.LoaderReqData

Type aliases for public API

type LoadersRouter

type LoadersRouter = vormaruntime.LoadersRouter

Type aliases for public API

type LoadersRouterOptions

type LoadersRouterOptions = vormaruntime.LoadersRouterOptions

Type aliases for public API

type None

type None = mux.None

Type aliases for public API

type Vorma

type Vorma = vormaruntime.Vorma

Type aliases for public API

func NewVormaApp

func NewVormaApp(o VormaAppConfig) *Vorma

type VormaAppConfig

type VormaAppConfig = vormaruntime.VormaAppConfig

Type aliases for public API

Directories

Path Synopsis
This package is not meant to be called directly by users.
This package is not meant to be called directly by users.
internal
scripts/buildts command
scripts/bumper command
scripts/sum command
kit
bytesutil
Package bytesutil provides utility functions for byte slice operations.
Package bytesutil provides utility functions for byte slice operations.
cryptoutil
Package cryptoutil provides utility functions for cryptographic operations.
Package cryptoutil provides utility functions for cryptographic operations.
csrf
Package csrf provides a robust, stateless, and layered CSRF protection middleware for Go.
Package csrf provides a robust, stateless, and layered CSRF protection middleware for Go.
fsutil
Package fsutil provides utility functions for working with the filesystem.
Package fsutil provides utility functions for working with the filesystem.
genericsutil
Package genericsutil provides helpers for implementing type erasure patterns
Package genericsutil provides helpers for implementing type erasure patterns
id
lru
Package lru implements a generic Least Recently Used (LRU) cache with support for "spam" items and TTL (Time-To-Live).
Package lru implements a generic Least Recently Used (LRU) cache with support for "spam" items and TTL (Time-To-Live).
mux
securebytes
This package assumes that the caller's use case is not sensitive to timing attacks.
This package assumes that the caller's use case is not sensitive to timing attacks.
securestring
This package assumes that the caller's use case is not sensitive to timing attacks.
This package assumes that the caller's use case is not sensitive to timing attacks.
set
signedcookie
Deprecated: Use github.com/vormadev/vorma/kit/cookies instead.
Deprecated: Use github.com/vormadev/vorma/kit/cookies instead.
tasks
A "Task", as used in this package, is simply a function that takes in input, returns data (or an error), and runs a maximum of one time per execution context / input value pairing, even if invoked repeatedly during the lifetime of the execution context.
A "Task", as used in this package, is simply a function that takes in input, returns data (or an error), and runs a maximum of one time per execution context / input value pairing, even if invoked repeatedly during the lifetime of the execution context.
validate
Package validate provides a simple way to validate and parse data from HTTP requests.
Package validate provides a simple way to validate and parse data from HTTP requests.
lab
fsmarkdown
buyer beware
buyer beware
jsonschema
NOTE:
NOTE:
parseutil
NOTE:
NOTE:
rpc
timer
Package timer provides a simple timer for measuring the duration of code execution.
Package timer provides a simple timer for measuring the duration of code execution.
xyz
buyer beware
buyer beware
Package wave provides runtime services for Wave applications.
Package wave provides runtime services for Wave applications.
tooling
Package tooling provides build-time and dev-time functionality for Wave.
Package tooling provides build-time and dev-time functionality for Wave.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL