No description
- Assembly 83.1%
- Go 13.9%
- TypeScript 2.7%
- CSS 0.2%
| .forgejo/workflows | ||
| bootstrap-compiler | ||
| bootstrap-language-server | ||
| compiler | ||
| deploy | ||
| docs | ||
| packages | ||
| scripts | ||
| vscode-extension | ||
| website | ||
| .dockerignore | ||
| .gitignore | ||
| CLAUDE.md | ||
| NAMING_REVIEW.md | ||
| README.md | ||
| REVIEW_1.md | ||
Vyi
A small systems language: value semantics, typed absence, parkable compile-time evaluation. Compiles to WebAssembly and native linux. Early alpha.
Install
Prebuilt linux/amd64 and linux/arm64 binaries (plus the standard library)
are published by CI. Install with:
curl -fsSL https://forgejo.roberthurst.ca/robert/Vyi/raw/branch/master/scripts/install.sh | bash
# remove later:
# curl -fsSL …/install.sh | bash -s -- --uninstall
That installs into ~/.local by default:
| Path | Contents |
|---|---|
~/.local/bin/vyi |
compiler CLI |
~/.local/bin/vyi-language-server |
LSP server |
~/.local/share/vyi/ |
standard library ($PREFIX/share/vyi) |
Ensure ~/.local/bin is on your PATH. Pin a release with
VYI_VERSION=v0.1.0 (once tagged), or a custom prefix with PREFIX=/usr/local.
Artifacts live in the Forgejo generic package registry:
https://forgejo.roberthurst.ca/api/packages/robert/generic/vyi/<version>/
vyi-linux-amd64
vyi-linux-arm64
vyi-language-server-linux-amd64
vyi-language-server-linux-arm64
vyi-stdlib.tar.gz
<version> is latest for builds from master, or a tag name such as v0.1.0.
Build from source
cd bootstrap-compiler
go build -o vyi ./cmd/vyi
./vyi run --packages ../packages path/to/main.vyi
Language server:
cd bootstrap-language-server
go build -o vyi-language-server .
Verification gate (from bootstrap-compiler/):
go build ./... && go test ./... -count=1
go test ./transform/ -run Test_Transform_E2E_Native -count=1
Repository layout
| Path | What |
|---|---|
bootstrap-compiler/ |
Go bootstrap compiler (vyi CLI, transform, backends, e2e) |
bootstrap-language-server/ |
LSP binary (depends on the compiler module) |
packages/ |
Standard library (@core, @io, @mem, …) |
website/ |
Language site, playground, learn course |
vscode-extension/ |
VS Code extension |
docs/ |
Language documentation |
scripts/install.sh |
User install script |
deploy/ |
Production compose for the website |
Website
./website/run.sh # dev: API :8080 + Vite :5173
docker build -f website/Dockerfile -t vyi-website .
Production image: forgejo.roberthurst.ca/robert/vyi-website:latest →
vyi.roberthurst.ca.