diff options
| author | Leitwolf11 | 2026-08-10 00:57:45 +0300 |
|---|---|---|
| committer | Leitwolf11 | 2026-08-10 00:57:45 +0300 |
| commit | 86e4d179c9201c77e353e888fa6732af3fa7e8d6 (patch) | |
| tree | ec7c0e8ff02844147a117bc3e4dc6b10f146333e /frontend | |
| parent | 9be05a7f0ca555d61033d0feadff34b68ad6255c (diff) | |
| download | website-86e4d179c9201c77e353e888fa6732af3fa7e8d6.tar.gz | |
Refresh the public Visual X# website for the renewed compiler and ViGet host: replace stale xss-lang links with Progmasoft repositories, move public source and executable examples to .vxs/.vxse and vxs CLI naming, describe the Haskell plus C++20 Typed AST to Core to Xpp to Xmm pipeline, remove the obsolete public XLIL Java catalog and publish the canonical Xmm writer, Xmm reader, and C FFI package names, rename repo.xsharp-lang.xyz to viget.xsharp-lang.xyz across frontend redirects, backend host validation, OAuth documentation, and nginx, and update registry branding without changing API routes.
Diffstat (limited to 'frontend')
| -rw-r--r-- | frontend/package-lock.json | 4 | ||||
| -rw-r--r-- | frontend/package.json | 2 | ||||
| -rw-r--r-- | frontend/public/scripts/auth-flow.v2.js | 8 | ||||
| -rw-r--r-- | frontend/public/scripts/dashboard.v1.js | 6 | ||||
| -rw-r--r-- | frontend/src/components/AuthPanel.astro | 18 | ||||
| -rw-r--r-- | frontend/src/components/RepositoryHeader.astro | 14 | ||||
| -rw-r--r-- | frontend/src/content/java/xlil.md | 73 | ||||
| -rw-r--r-- | frontend/src/pages/index.astro | 86 | ||||
| -rw-r--r-- | frontend/src/pages/java/index.astro | 55 | ||||
| -rw-r--r-- | frontend/src/pages/java/xlil/index.astro | 75 | ||||
| -rw-r--r-- | frontend/src/pages/repo/dashboard/index.astro | 6 | ||||
| -rw-r--r-- | frontend/src/pages/repo/index.astro | 18 | ||||
| -rw-r--r-- | frontend/src/pages/repo/login/index.astro | 2 | ||||
| -rw-r--r-- | frontend/src/pages/repo/recover/index.astro | 2 | ||||
| -rw-r--r-- | frontend/src/pages/repo/register/index.astro | 2 |
15 files changed, 120 insertions, 251 deletions
diff --git a/frontend/package-lock.json b/frontend/package-lock.json index b79ae0d..ce598f2 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -1,11 +1,11 @@ { - "name": "@xss-lang/website", + "name": "@visual-xsharp/website", "version": "1.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "@xss-lang/website", + "name": "@visual-xsharp/website", "version": "1.0.0", "license": "AGPL-3.0-or-later", "dependencies": { diff --git a/frontend/package.json b/frontend/package.json index e5cfcf4..b713669 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -1,5 +1,5 @@ { - "name": "@xss-lang/website", + "name": "@visual-xsharp/website", "version": "1.0.0", "private": true, "type": "module", diff --git a/frontend/public/scripts/auth-flow.v2.js b/frontend/public/scripts/auth-flow.v2.js index 4bab52f..f8b9c69 100644 --- a/frontend/public/scripts/auth-flow.v2.js +++ b/frontend/public/scripts/auth-flow.v2.js @@ -87,7 +87,7 @@ function initializeGoogleVerification() { if (!emailInput.checkValidity()) return; email = requestedEmail; showStep("code"); - showAlert("Google sign-in succeeded. Check your email for the X# verification code."); + showAlert("Google sign-in succeeded. Check your email for the Visual X# verification code."); window.history.replaceState({}, "", window.location.pathname); } @@ -127,7 +127,7 @@ form?.addEventListener("submit", async (event) => { } const response = await request("login", { email, password }); if (!response.ok) return explainFailure(response); - window.location.assign("https://repo.xsharp-lang.xyz/dashboard/"); + window.location.assign("https://viget.xsharp-lang.xyz/dashboard/"); return; } @@ -144,7 +144,7 @@ form?.addEventListener("submit", async (event) => { } const response = await request("verify-email", { email, code }); if (!response.ok) return explainFailure(response); - window.location.assign("https://repo.xsharp-lang.xyz/dashboard/"); + window.location.assign("https://viget.xsharp-lang.xyz/dashboard/"); return; } @@ -155,7 +155,7 @@ form?.addEventListener("submit", async (event) => { } const response = await request("recovery/complete", { email, code: recoveryCode, password }); if (!response.ok) return explainFailure(response); - window.location.assign("https://repo.xsharp-lang.xyz/dashboard/"); + window.location.assign("https://viget.xsharp-lang.xyz/dashboard/"); }); initializeGoogleVerification(); diff --git a/frontend/public/scripts/dashboard.v1.js b/frontend/public/scripts/dashboard.v1.js index 82286d5..b6038d0 100644 --- a/frontend/public/scripts/dashboard.v1.js +++ b/frontend/public/scripts/dashboard.v1.js @@ -67,7 +67,7 @@ async function revokeToken(id) { async function initialize() { const response = await fetch("/api/v1/auth/me", { credentials: "include" }); if (response.status === 401) { - window.location.replace("https://repo.xsharp-lang.xyz/login/"); + window.location.replace("https://viget.xsharp-lang.xyz/login/"); return; } if (!response.ok) return showAlert("Account information could not be loaded.", true); @@ -90,7 +90,7 @@ async function initialize() { root?.querySelector("[data-signout]")?.addEventListener("click", async () => { await fetch("/api/v1/auth/logout", { method: "POST", credentials: "include" }); - window.location.assign("https://repo.xsharp-lang.xyz/login/"); + window.location.assign("https://viget.xsharp-lang.xyz/login/"); }); root?.querySelector("[data-token-open]")?.addEventListener("click", () => dialog?.showModal()); dialog?.querySelector("[data-token-close]")?.addEventListener("click", () => dialog?.close()); @@ -122,7 +122,7 @@ deleteForm?.addEventListener("submit", async (event) => { showAlert("The account could not be deleted.", true); return; } - window.location.replace("https://repo.xsharp-lang.xyz/?account=deleted"); + window.location.replace("https://viget.xsharp-lang.xyz/?account=deleted"); }); tokenForm?.addEventListener("submit", async (event) => { diff --git a/frontend/src/components/AuthPanel.astro b/frontend/src/components/AuthPanel.astro index 29ac1f8..0626784 100644 --- a/frontend/src/components/AuthPanel.astro +++ b/frontend/src/components/AuthPanel.astro @@ -10,19 +10,19 @@ const { mode } = Astro.props; const copy = { login: { title: "Sign in", - description: "Use your X# registry account.", + description: "Use your Visual X# registry account.", submit: "Next", switchText: "New to the registry?", switchLabel: "Create an account", - switchHref: "https://repo.xsharp-lang.xyz/register/", + switchHref: "https://viget.xsharp-lang.xyz/register/", }, register: { title: "Create account", - description: "Publish and manage X# packages.", + description: "Publish and manage Visual X# packages.", submit: "Next", switchText: "Already have an account?", switchLabel: "Sign in", - switchHref: "https://repo.xsharp-lang.xyz/login/", + switchHref: "https://viget.xsharp-lang.xyz/login/", }, recover: { title: "Recover account", @@ -30,7 +30,7 @@ const copy = { submit: "Send code", switchText: "Remembered your password?", switchLabel: "Sign in", - switchHref: "https://repo.xsharp-lang.xyz/login/", + switchHref: "https://viget.xsharp-lang.xyz/login/", }, } as const; const content = copy[mode]; @@ -38,13 +38,13 @@ const content = copy[mode]; <main class="auth-main" data-auth-flow data-mode={mode}> <section class="auth-card glass-panel"> - <a class="auth-brand" href="https://repo.xsharp-lang.xyz/" aria-label="X# package registry"> + <a class="auth-brand" href="https://viget.xsharp-lang.xyz/" aria-label="Visual X# package registry"> <img src="/xsharp-logo.webp" width="44" height="44" alt="" /> - <span>X# Registry</span> + <span>Visual X# Registry</span> </a> <div class="auth-heading"> - <p class="eyebrow">X# package registry</p> + <p class="eyebrow">Visual X# package registry</p> <h1>{content.title}</h1> <p>{content.description}</p> </div> @@ -99,7 +99,7 @@ const content = copy[mode]; <button class="auth-submit" type="submit">{mode === "register" ? "Create account" : "Sign in"}</button> { mode === "login" && ( - <a class="auth-recovery" href="https://repo.xsharp-lang.xyz/recover/">Forgot password?</a> + <a class="auth-recovery" href="https://viget.xsharp-lang.xyz/recover/">Forgot password?</a> ) } </div> diff --git a/frontend/src/components/RepositoryHeader.astro b/frontend/src/components/RepositoryHeader.astro index b157269..6a551b5 100644 --- a/frontend/src/components/RepositoryHeader.astro +++ b/frontend/src/components/RepositoryHeader.astro @@ -12,24 +12,24 @@ const { authenticated = false } = Astro.props; --- <header class="repository-header glass-panel"> - <a class="brand" href="https://repo.xsharp-lang.xyz/" aria-label="X# package registry home"> + <a class="brand" href="https://viget.xsharp-lang.xyz/" aria-label="Visual X# package registry home"> <img class="brand-mark" src="/xsharp-logo.webp" width="38" height="38" alt="" /> - <span class="brand-name">X#</span> + <span class="brand-name">Visual X#</span> <span class="brand-channel">package registry</span> </a> <nav class="repository-navigation" aria-label="Registry navigation"> - <a href="https://repo.xsharp-lang.xyz/">Packages</a> + <a href="https://viget.xsharp-lang.xyz/">Packages</a> { authenticated ? ( - <a href="https://repo.xsharp-lang.xyz/dashboard/">Dashboard</a> + <a href="https://viget.xsharp-lang.xyz/dashboard/">Dashboard</a> ) : ( <> - <a href="https://repo.xsharp-lang.xyz/login/">Log in</a> - <a class="repository-register" href="https://repo.xsharp-lang.xyz/register/">Register</a> + <a href="https://viget.xsharp-lang.xyz/login/">Log in</a> + <a class="repository-register" href="https://viget.xsharp-lang.xyz/register/">Register</a> </> ) } - <a class="repository-source" href="https://github.com/xss-lang" target="_blank" rel="noreferrer"> + <a class="repository-source" href="https://github.com/Progmasoft/visual-xsharp" target="_blank" rel="noreferrer"> <Icon name="github" /> <span>GitHub</span> </a> diff --git a/frontend/src/content/java/xlil.md b/frontend/src/content/java/xlil.md deleted file mode 100644 index edbaadd..0000000 --- a/frontend/src/content/java/xlil.md +++ /dev/null @@ -1,73 +0,0 @@ -# XLIL for Java - -`org.xsslang:xlil:2026.1` is the official Java 25 binding for the stable -XLIL C ABI. It can construct, verify, emit, parse, and inspect XLIL v1 -modules without maintaining a second Java parser. - -## Add the dependency - -The X# Gradle platform selects the official Java repository. Application -builds do not add a Maven repository URL directly. - -```kotlin -plugins { - id("java") - id("org.xsslang.platform") version "26.1" -} - -repositories { - mavenCentral() - - xsslangPlatform { - repositories() - } -} - -dependencies { - xsslangPlatform { - implementation("org.xsslang:xlil:2026.1") - } -} - -java { - toolchain { - languageVersion.set(JavaLanguageVersion.of(25)) - } -} -``` - -Enable FFM native access for modular applications: - -```text ---enable-native-access=org.xsslang.xlil -``` - -The installed `xs_lil` shared library must be discoverable through the -platform's normal native-library search rules. - -## Write XLIL - -```java -try (XlilWriter writer = XlilWriter.create("Example")) { - XlilFunctionWriter main = - writer.defineFunction("main", XlilType.I32, List.of()); - XlilBlockWriter entry = main.block("entry"); - XlilValue exitCode = entry.constI32(0); - entry.returnValue(exitCode); - - writer.verify(); - System.out.print(writer.emit()); -} -``` - -## Read XLIL - -```java -XlilModule module = XlilReader.parse("Example.xlil", source); -System.out.println(module.name()); -module.functions().forEach(function -> System.out.println(function.name())); -``` - -The reader delegates parsing and verification to `libxs_lil` and returns -immutable Java snapshots. `CString` helpers are available from -`org.xsslang.ffi.c` for other Java 25 FFM integrations. diff --git a/frontend/src/pages/index.astro b/frontend/src/pages/index.astro index 48e5c3b..9d64ff4 100644 --- a/frontend/src/pages/index.astro +++ b/frontend/src/pages/index.astro @@ -6,47 +6,47 @@ import SiteLayout from "../layouts/SiteLayout.astro"; import Icon from "../components/Icon.astro"; const pipeline = [ - { short: "XS", label: "Source", detail: "syntax + AST" }, - { short: "HI", label: "XHIR", detail: "typed intent" }, - { short: "MI", label: "XMIR", detail: "control flow" }, - { short: "LI", label: "XLIL", detail: "register IL" }, - { short: "EX", label: ".xse", detail: "native output" }, + { short: "VX", label: "Source", detail: ".vxs input" }, + { short: "AST", label: "Typed AST", detail: "resolved meaning" }, + { short: "CO", label: "Core", detail: "language semantics" }, + { short: "XP", label: "Xpp", detail: "prepared program" }, + { short: "XM", label: "Xmm", detail: "backend-ready IR" }, ]; const principles = [ { number: "01", - title: "Inspect every layer", - text: "XHIR, XMIR, and XLIL are versioned text formats designed for people, tools, and other languages.", + title: "Keep every boundary explicit", + text: "Parsed, resolved, and typed syntax stay distinct before semantics move through Core, Xpp, and Xmm.", icon: "layers", }, { number: "02", title: "Keep the core modular", - text: "The GNU++26 native core and Rust semantic core meet through narrow, versioned boundaries.", + text: "Haskell owns the language front end while the C++20 native pipeline begins at the CorePrep boundary.", icon: "modules", }, { number: "03", title: "Finish in native code", - text: "Verified XLIL lowers through LLVM IR to object code and a platform-native .xse executable.", + text: "Verified Xmm lowers through LLVM or VPI to object code and a platform-native .vxse executable.", icon: "native", }, ] as const; const capabilities = [ { icon: "braces", label: "Structural AST", detail: "source fidelity" }, - { icon: "layers", label: "Typed HIR", detail: "semantic intent" }, - { icon: "modules", label: "Borrow checking", detail: "ownership safety" }, - { icon: "registers", label: "XLIL registry", detail: "portable lowering" }, + { icon: "layers", label: "Typed AST", detail: "resolved semantics" }, + { icon: "modules", label: "Core pipeline", detail: "explicit boundaries" }, + { icon: "registers", label: "Xmm verifier", detail: "backend contract" }, { icon: "chip", label: "LLVM backend", detail: "native codegen" }, - { icon: "terminal", label: "Test runner", detail: "isolated .xse" }, + { icon: "terminal", label: "Test runner", detail: "isolated .vxse" }, ] as const; --- <SiteLayout - title="X# programming language" - description="The official home of X#, a native programming language with inspectable compiler layers." + title="Visual X# programming language" + description="The official home of Visual X#, a native programming language with inspectable compiler layers." > <div class="ambient" aria-hidden="true"> <span class="ambient-orb ambient-orb-a"></span> @@ -56,16 +56,16 @@ const capabilities = [ </div> <header class="site-header glass-panel"> - <a class="brand" href="/" aria-label="X# home"> + <a class="brand" href="/" aria-label="Visual X# home"> <img class="brand-mark" src="/xsharp-logo.webp" width="38" height="38" alt="" /> - <span class="brand-name">X#</span> + <span class="brand-name">Visual X#</span> <span class="brand-channel">language</span> </a> <nav aria-label="Primary navigation"> <a href="#pipeline">Pipeline</a> - <a href="https://repo.xsharp-lang.xyz/">Packages</a> - <a href="https://github.com/xss-lang/xs-project/tree/main/Spec" target="_blank" rel="noreferrer">Specification</a> - <a class="nav-source" href="https://github.com/xss-lang/xs-project" target="_blank" rel="noreferrer"> + <a href="https://viget.xsharp-lang.xyz/">Packages</a> + <a href="https://github.com/Progmasoft/visual-xsharp/tree/main/Spec" target="_blank" rel="noreferrer">Specification</a> + <a class="nav-source" href="https://github.com/Progmasoft/visual-xsharp" target="_blank" rel="noreferrer"> <Icon name="github" /> <span>GitHub</span> </a> @@ -77,30 +77,30 @@ const capabilities = [ <div class="hero-copy"> <div class="status-pill glass-panel"> <span class="status-light"></span> - X# 0.2.4 · Native compiler in active development + Visual X# · Native compiler in active development </div> <h1>See the language <em>all the way down.</em></h1> <p class="lede"> - X# is a native programming language built around explicit compiler stages, readable intermediate formats, + Visual X# is a native programming language built around explicit compiler stages, inspectable boundaries, and a direct path from source to platform executable. </p> <div class="actions"> - <a class="button primary" href="https://github.com/xss-lang/xs-project" target="_blank" rel="noreferrer"> + <a class="button primary" href="https://github.com/Progmasoft/visual-xsharp" target="_blank" rel="noreferrer"> Explore the compiler <Icon name="arrow" /> </a> - <a class="button secondary glass-panel" href="https://github.com/xss-lang/xs-project/tree/main/Spec/Programs" target="_blank" rel="noreferrer"> + <a class="button secondary glass-panel" href="https://github.com/Progmasoft/visual-xsharp/tree/main/Spec" target="_blank" rel="noreferrer"> View examples </a> </div> <div class="hero-facts" aria-label="Project facts"> - <div><strong>1</strong><span>IR format version</span></div> - <div><strong>GNU++26 + Rust</strong><span>compiler foundation</span></div> - <div><strong>.xse</strong><span>native artifact</span></div> + <div><strong>3</strong><span>semantic IR layers</span></div> + <div><strong>Haskell + C++20</strong><span>compiler foundation</span></div> + <div><strong>.vxse</strong><span>native artifact</span></div> </div> </div> - <div class="hero-visual" aria-label="Animated X# compiler pipeline visualization"> + <div class="hero-visual" aria-label="Animated Visual X# compiler pipeline visualization"> <div class="visual-glow"></div> <div class="orbit orbit-wide" aria-hidden="true"></div> <div class="orbit orbit-tight" aria-hidden="true"></div> @@ -109,32 +109,32 @@ const capabilities = [ <div class="compiler-core glass-panel"> <span class="core-scan" aria-hidden="true"></span> - <img src="/xsharp-logo.webp" width="132" height="132" alt="X#" /> + <img src="/xsharp-logo.webp" width="132" height="132" alt="Visual X#" /> <span>compiler core</span> </div> <div class="floating-node node-source glass-panel"> <span class="node-icon"><Icon name="braces" /></span> - <span><strong>source.xs</strong><small>parsed</small></span> + <span><strong>source.vxs</strong><small>parsed</small></span> </div> <div class="floating-node node-ir glass-panel"> <span class="node-icon"><Icon name="registers" /></span> - <span><strong>XLIL v1</strong><small>verified</small></span> + <span><strong>Xmm</strong><small>verified</small></span> </div> <div class="floating-node node-native glass-panel"> <span class="node-icon"><Icon name="native" /></span> - <span><strong>native.xse</strong><small>linked</small></span> + <span><strong>native.vxse</strong><small>linked</small></span> </div> <div class="build-console glass-panel"> <div class="console-bar"> <span></span><span></span><span></span> - <strong>xs build</strong> + <strong>vxs build</strong> </div> <div class="console-body"> <p><span>01</span><code>parse</code><i>done</i></p> - <p><span>02</span><code>lower → xlil</code><i>done</i></p> - <p><span>03</span><code>link → app.xse</code><i class="pulse-text">ready</i></p> + <p><span>02</span><code>lower → core → xpp → xmm</code><i>done</i></p> + <p><span>03</span><code>link → app.vxse</code><i class="pulse-text">ready</i></p> </div> </div> </div> @@ -145,10 +145,10 @@ const capabilities = [ <p class="eyebrow">One compiler, visible end to end</p> <h2 id="capabilities-title">Everything needed to understand the build.</h2> <p> - X# keeps the useful machinery in the open. Inspect typed decisions, follow control flow, and retain a readable + Visual X# keeps the useful machinery in the open. Inspect typed decisions, follow control flow, and retain a clear record before native code is emitted. </p> - <a class="text-link" href="https://github.com/xss-lang/xs-project/tree/main/docs" target="_blank" rel="noreferrer"> + <a class="text-link" href="https://github.com/Progmasoft/visual-xsharp/blob/main/docs/ARCHITECTURE.md" target="_blank" rel="noreferrer"> Read the architecture <span>→</span> </a> </div> @@ -195,8 +195,8 @@ const capabilities = [ <div class="code-window glass-panel"> <div class="window-top"> <div><span></span><span></span><span></span></div> - <p>Sources/main.xs</p> - <span class="window-badge">X#</span> + <p>Sources/main.vxs</p> + <span class="window-badge">Visual X#</span> </div> <pre><code>{`fn add(a: Long, b: Long) -> Long { a + b @@ -216,7 +216,7 @@ fn main() -> Long { Tail expressions, nominal types, explicit module boundaries, and native artifacts belong to one coherent pipeline—not a collection of disconnected tools. </p> - <a class="text-link" href="https://github.com/xss-lang/xs-project/tree/main/Spec/Programs" target="_blank" rel="noreferrer"> + <a class="text-link" href="https://github.com/Progmasoft/visual-xsharp/tree/main/Spec" target="_blank" rel="noreferrer"> Browse complete programs <span>→</span> </a> </div> @@ -250,13 +250,13 @@ fn main() -> Long { <h2>The compiler is open.</h2> <p>Read the source, inspect the formats, and watch each native milestone land.</p> </div> - <a class="button primary" href="https://github.com/xss-lang/xs-project" target="_blank" rel="noreferrer">Open repository</a> + <a class="button primary" href="https://github.com/Progmasoft/visual-xsharp" target="_blank" rel="noreferrer">Open repository</a> </section> </main> <footer> - <a class="footer-brand" href="/"><img src="/xsharp-logo.webp" width="32" height="32" alt="" /> X#</a> + <a class="footer-brand" href="/"><img src="/xsharp-logo.webp" width="32" height="32" alt="" /> Visual X#</a> <span>Native language · visible compiler</span> - <a href="https://github.com/xss-lang/website" target="_blank" rel="noreferrer">Website source · AGPL-3.0-or-later</a> + <a href="https://github.com/Progmasoft/website" target="_blank" rel="noreferrer">Website source · AGPL-3.0-or-later</a> </footer> </SiteLayout> diff --git a/frontend/src/pages/java/index.astro b/frontend/src/pages/java/index.astro index 474cd30..bd7ea98 100644 --- a/frontend/src/pages/java/index.astro +++ b/frontend/src/pages/java/index.astro @@ -7,8 +7,8 @@ import SiteLayout from "../../layouts/SiteLayout.astro"; --- <SiteLayout - title="X# Java Repository" - description="Official read-only Java packages for X# and XLIL integration." + title="Visual X# Java Repository" + description="Official read-only Java packages for Visual X# Xmm and native FFI integration." > <section class="repository-surface"> <div class="ambient" aria-hidden="true"> @@ -16,12 +16,12 @@ import SiteLayout from "../../layouts/SiteLayout.astro"; <span class="ambient-orb ambient-orb-b"></span> </div> <header class="repository-header glass-panel"> - <a class="brand" href="https://xsharp-lang.xyz/" aria-label="X# home"> + <a class="brand" href="https://xsharp-lang.xyz/" aria-label="Visual X# home"> <img class="brand-mark" src="/xsharp-logo.webp" width="38" height="38" alt="" /> - <span class="brand-name">X#</span> + <span class="brand-name">Visual X#</span> <span class="brand-channel">Java repository</span> </a> - <a class="repository-source" href="https://github.com/xss-lang/xs-project" target="_blank" rel="noreferrer"> + <a class="repository-source" href="https://github.com/Progmasoft/visual-xsharp" target="_blank" rel="noreferrer"> <Icon name="github" /> Source </a> @@ -30,40 +30,57 @@ import SiteLayout from "../../layouts/SiteLayout.astro"; <main class="repository-main repository-catalog"> <div class="repository-status glass-panel"> <span class="repository-status-icon"><Icon name="check" /></span> - Read-only repository online + Repository foundation online </div> <p class="eyebrow">Official Java packages</p> - <h1>Native XLIL.<br /><em>Java 25.</em></h1> + <h1>Visual X# Xmm.<br /><em>Java 25.</em></h1> <p class="repository-lede"> - Versioned Java libraries backed by the stable XLIL v1 C ABI. Package publishing is restricted to - X# maintainers; repository users have read-only access. + The Java surface follows the current Xmm pipeline and its C FFI boundary. Artifact publication is not open yet; + these are the canonical package names reserved by the renewed compiler design. </p> <section class="package-list" aria-labelledby="packages-heading"> <div class="package-list-heading"> <div> <p class="eyebrow">Packages</p> - <h2 id="packages-heading">Available now</h2> + <h2 id="packages-heading">Canonical packages</h2> </div> - <span>1 package</span> + <span>3 packages</span> </div> - <a class="package-card glass-panel" href="xlil/"> + <article class="package-card glass-panel"> <span class="package-icon"><Icon name="registers" /></span> <span class="package-copy"> - <strong>XLIL</strong> - <code>org.xsslang:xlil</code> - <small>Java 25 FFM reader and writer for the XLIL v1 C ABI.</small> + <strong>Xmm writer</strong> + <code>org.progmasoft.visual_xsharp.xmm.writer</code> + <small>Java 25 writer surface for the Visual X# Xmm representation.</small> </span> - <span class="package-version">2026.1</span> - <span class="package-arrow"><Icon name="arrow" /></span> - </a> + <span class="package-version">planned</span> + </article> + <article class="package-card glass-panel"> + <span class="package-icon"><Icon name="layers" /></span> + <span class="package-copy"> + <strong>Xmm reader</strong> + <code>org.progmasoft.visual_xsharp.xmm.reader</code> + <small>Java 25 reader and inspection surface for Visual X# Xmm.</small> + </span> + <span class="package-version">planned</span> + </article> + <article class="package-card glass-panel"> + <span class="package-icon"><Icon name="modules" /></span> + <span class="package-copy"> + <strong>C FFI utilities</strong> + <code>org.progmasoft.java_utilities.ffi.c</code> + <small>Shared Java 25 native-access utilities for the Xmm C boundary.</small> + </span> + <span class="package-version">planned</span> + </article> </section> <div class="repository-note glass-panel"> <Icon name="modules" /> <div> <strong>Publishing is maintainer-only</strong> - <span>This host exposes immutable Maven-compatible artifacts and does not accept user uploads.</span> + <span>This host will expose immutable Maven-compatible artifacts and will not accept user uploads.</span> </div> </div> </main> diff --git a/frontend/src/pages/java/xlil/index.astro b/frontend/src/pages/java/xlil/index.astro deleted file mode 100644 index 8bf07f5..0000000 --- a/frontend/src/pages/java/xlil/index.astro +++ /dev/null @@ -1,75 +0,0 @@ ---- -// SPDX-FileCopyrightText: 2026 Leitwolf <xs-lang.chess031@slmails.com> -// SPDX-License-Identifier: AGPL-3.0-or-later - -import { marked } from "marked"; -import Icon from "../../../components/Icon.astro"; -import SiteLayout from "../../../layouts/SiteLayout.astro"; -import xlilReadme from "../../../content/java/xlil.md?raw"; - -const renderedReadme = await marked.parse(xlilReadme); ---- - -<SiteLayout - title="XLIL for Java · X# Java Repository" - description="Java 25 FFM reader and writer bindings for the stable XLIL C ABI." -> - <section class="repository-surface"> - <div class="ambient" aria-hidden="true"> - <span class="ambient-orb ambient-orb-a"></span> - <span class="ambient-orb ambient-orb-b"></span> - </div> - <header class="repository-header glass-panel"> - <a class="brand" href="../" aria-label="X# Java repository"> - <img class="brand-mark" src="/xsharp-logo.webp" width="38" height="38" alt="" /> - <span class="brand-name">X#</span> - <span class="brand-channel">Java repository</span> - </a> - <a class="repository-source" href="../" aria-label="Back to packages"> - <Icon name="modules" /> - Packages - </a> - </header> - - <main class="repository-main package-detail"> - <header class="package-detail-header"> - <span class="package-icon package-icon-large"><Icon name="registers" /></span> - <div> - <p class="eyebrow">org.xsslang:xlil</p> - <h1>XLIL</h1> - <p>Java 25 · FFM · XLIL v1 · package 2026.1</p> - </div> - </header> - - <div class="package-detail-grid"> - <article class="markdown-body glass-panel" set:html={renderedReadme}></article> - <aside class="package-sidebar"> - <section class="glass-panel"> - <p class="eyebrow">Latest release</p> - <strong>2026.1</strong> - <span>Java 25 or newer</span> - </section> - <section class="glass-panel"> - <p class="eyebrow">Artifacts</p> - <a href="/org/xsslang/xlil/2026.1/xlil-2026.1.jar">JAR</a> - <a href="/org/xsslang/xlil/2026.1/xlil-2026.1-sources.jar">Sources</a> - <a href="/org/xsslang/xlil/2026.1/xlil-2026.1-javadoc.jar">Javadoc</a> - <a href="/org/xsslang/xlil/2026.1/xlil-2026.1.pom">POM</a> - </section> - <section class="glass-panel package-read-only"> - <Icon name="check" /> - <div> - <strong>Read-only</strong> - <span>User uploads are disabled.</span> - </div> - </section> - </aside> - </div> - </main> - - <footer class="repository-footer"> - <span>java.xsharp-lang.xyz/xlil</span> - <spa |