Curvea

Introduction

Current Status

Curvea Stack v0.1.1 is the current release documented here. The Stack version covers Curvea Engine, Curvea CLI, and the CurveaScript language behavior supported by that release. Curvea is the brand and is not versioned separately.

The current distribution package metadata defines:

@curvea/cli 0.1.1
Node.js >=20.19.0

The @curvea/cli package distributes the current Stack and exposes the curvea CLI command. Curvea Engine processes CurveaScript projects and builds them into static output.

Implemented areas

Curvea Engine 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.