Curvea

Introduction

Current Status

Curvea 0.1.0 is the current release target documented here.

The Engine package metadata defines:

@curvea/cli 0.1.0
Node.js >=20.19.0

The package exposes the curvea CLI and compiles CurveaScript projects into static output.

Implemented areas

Curvea currently includes:

  • .csc parsing and rendering
  • page, layout, component, and document declarations
  • page layout usage through @use
  • the reserved CurrentYear runtime global
  • component imports through @import
  • JSON data loading with @load
  • static and dynamic routes
  • Markdown content collections
  • pagination with @paginate
  • optional SEO and sitemap features
  • Tailwind and Lucide setup helpers
  • theme runtime
  • mobile menu and lightbox helpers
  • static asset processing
  • CSS import resolution
  • a limited JavaScript module graph
  • a development server with live reload
  • static production builds
  • a local static preview server

Language naming

Layouts are declared with:

@layout Main(title)

Pages attach a layout with:

@page
@use Main(title=page.title)

These are separate operations: @layout declares a layout file, while @use applies one to a page.

Documentation policy

These docs describe implemented behavior. Features that are not implemented are documented only as limitations, not as current syntax.