Skip to content
Adam-ElmiPublic

About

ArcMoon is a template language that compiles to web pages.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Repository files navigation

ArcMoon logo

ArcMoon

npm version Documentation Try it in the playground Node.js 22.12 or newer MIT license

What is ArcMoon?

ArcMoon is a template language for web pages. You write .arcm files, and ArcMoon builds them into plain HTML, with only the CSS and JavaScript each page needs. Code that runs while the page is built and code that runs in the browser are kept apart, so secrets and database queries never reach your visitors.

Requirements

  • Node.js 22.12 or newer (check with node -v).
  • npm, pnpm, bun or yarn.

Installation

Install the arcm command:

npm install -g arcmoon

Check that it works:

arcm -v

arcmoon and its short name arcm are the same command. To keep ArcMoon inside one project instead, run npm install arcmoon there and use npx arcm.

A template language you enjoy building with

# A signal holds the count: the button changes it, the text follows
runtime ${
  import { signal } from "arcmoon/reactive";
  const count = signal(0);
}$

[button = onclick: runtime ${ () => count(count() + 1) }$]
  Clicked runtime ${ count() }$ times
[end:button]

Read the docs, or try it in the playground without installing anything.

License

MIT © Adam Elmi

About

ArcMoon is a template language that compiles to web pages.

Topics

Resources

Stars

2 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages