This repository has been archived on 2026-05-05. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
Will Anderson f4abfe6fdc feat: rename crates/ → vessels/ + add El ports per sub-vessel
Belated rename commit for foundation/el-ui — was missed in the
workspace-wide crates→vessels pass earlier today. Same structural
intent as the rename in the other repos: 'crates' is the Rust word,
'vessel' is El's, and the directory rename is the marker that this
slot holds an El buildable unit even if its current contents are
still Rust pending port.

Plus the El ports themselves — manifest.el + src/main.el per sub-
vessel (el-aop, el-auth, el-config, el-i18n, el-identity, el-layout,
el-platform, el-publish, el-secrets, el-services, el-style, el-ui-
compiler). The ui-compiler is a stub: elc only emits C right now;
generating browser-target JS/Wasm is the biggest open language gap
and gets its own project. Until then, el-ui-compiler emits a JS
module that throws elc.backend_missing so callers fail loudly.
Cross-repo path dependencies in Cargo.toml updated to vessels/.
2026-04-30 18:18:39 -05:00

29 lines
961 B
EmacsLisp

// el-ui-compiler Elbrowser-target component compiler.
//
// RUNTIME GAP: This vessel is a STUB. The bootstrap El compiler (`elc`)
// emits C only there is no JavaScript or WebAssembly backend yet. The
// El surface here defines the public contract (`Compiler`,
// `compile_component`, `compile_app`) but the codegen step returns a
// marker module that throws at load time. Once elc gains a JS/Wasm
// backend, swap the stage bodies for real implementations and ship.
//
// The Rust crate (vessels/el-ui-compiler) has the real lexer / parser /
// semantic / codegen pipeline and is the source of truth until the El
// version becomes self-hosting.
vessel "el-ui-compiler" {
version "0.1.0"
description "El→JS component compiler (STUB; awaiting JS backend in elc)"
authors ["Will Anderson <will@neurontechnologies.ai>"]
edition "2026"
}
dependencies {
el-platform "1.0"
}
build {
entry "src/main.el"
output "dist/"
}