Skip to content

Commit 36c2733

Browse files
committed
docs: setup gh-pages deployment
* rename volt to voltx
1 parent 4630e6e commit 36c2733

File tree

21 files changed

+438
-81
lines changed

21 files changed

+438
-81
lines changed

.github/workflows/deploy-docs.yml

Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
name: Deploy Documentation
2+
3+
on:
4+
push:
5+
branches:
6+
- main
7+
paths:
8+
- 'docs/**'
9+
- '.github/workflows/deploy-docs.yml'
10+
workflow_dispatch:
11+
12+
permissions:
13+
contents: read
14+
pages: write
15+
id-token: write
16+
17+
concurrency:
18+
group: pages
19+
cancel-in-progress: false
20+
21+
jobs:
22+
build:
23+
runs-on: ubuntu-latest
24+
steps:
25+
- name: Checkout
26+
uses: actions/checkout@v4
27+
with:
28+
fetch-depth: 0
29+
30+
- name: Setup pnpm
31+
uses: pnpm/action-setup@v4
32+
with:
33+
version: 9
34+
35+
- name: Setup Node.js
36+
uses: actions/setup-node@v4
37+
with:
38+
node-version: '20'
39+
cache: 'pnpm'
40+
41+
- name: Install dependencies
42+
run: pnpm install --frozen-lockfile
43+
44+
- name: Build documentation
45+
run: pnpm docs:build
46+
47+
- name: Upload artifact
48+
uses: actions/upload-pages-artifact@v3
49+
with:
50+
path: docs/.vitepress/dist
51+
52+
deploy:
53+
environment:
54+
name: github-pages
55+
url: ${{ steps.deployment.outputs.page_url }}
56+
needs: build
57+
runs-on: ubuntu-latest
58+
steps:
59+
- name: Deploy to GitHub Pages
60+
id: deployment
61+
uses: actions/deploy-pages@v4

README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
# Volt.js
1+
# VoltX.js
2+
3+
> ⚠️ **Pre-release Software**: VoltX.js is in active development. Breaking changes are expected until v1.0. Use in production at your own risk.
24
35
## Philosophy/Goals
46

docs/.vitepress/config.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,9 @@ import { u } from "./utils";
55
* @see https://vitepress.dev/reference/site-config
66
*/
77
export default defineConfig({
8-
title: "Volt.js",
8+
title: "VoltX.js",
99
description: "A reactive, hypermedia framework.",
10+
base: "/volt/",
1011
appearance: "dark",
1112
themeConfig: {
1213
nav: [{ text: "Home", link: "/" }, { text: "Overview", link: "/overview" }, { text: "CSS", link: "/css/volt-css" }],

docs/api/binder.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,11 @@ updated: 2025-10-18
55

66
# binder
77

8-
Binder system for mounting and managing Volt.js bindings
8+
Binder system for mounting and managing VoltX.js bindings
99

1010
## mount
1111

12-
Mount Volt.js on a root element and its descendants and binds all data-volt-* attributes to the provided scope.
12+
Mount VoltX.js on a root element and its descendants and binds all data-volt-* attributes to the provided scope.
1313
Returns a cleanup function to unmount and dispose all bindings.
1414

1515
```typescript

docs/api/events.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ updated: 2025-10-18
55

66
# Event Handling
77

8-
Volt.js provides declarative event handling through `data-volt-on-*` attributes with automatic access to special scoped references.
8+
VoltX provides declarative event handling through `data-volt-on-*` attributes with automatic access to special scoped references.
99

1010
## Event Binding Syntax
1111

@@ -35,7 +35,7 @@ The `$event` reference provides access to the native browser event object.
3535

3636
## Event Types
3737

38-
Volt.js aims to support all standard DOM events through `data-volt-on-*`:
38+
VoltX.js aims to support all standard DOM events through `data-volt-on-*`:
3939

4040
**Mouse Events:**
4141

@@ -66,7 +66,7 @@ Volt.js aims to support all standard DOM events through `data-volt-on-*`:
6666

6767
## Implementation Details
6868

69-
When an event handler is bound, Volt.js:
69+
When an event handler is bound, VoltX.js:
7070

7171
1. Creates a new scope that extends the component scope
7272
2. Injects `$el` (the bound element) and `$event` (the event object) into this scope

docs/api/lifecycle.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ updated: 2025-10-18
55

66
# lifecycle
77

8-
Global lifecycle hook system for Volt.js
8+
Global lifecycle hook system for VoltX.js
99
Provides beforeMount, afterMount, beforeUnmount, and afterUnmount hooks
1010

1111
## registerGlobalHook

docs/api/plugin.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,12 @@ updated: 2025-10-18
55

66
# plugin
77

8-
Plugin system for extending Volt.js with custom bindings
8+
Plugin system for extending VoltX.js with custom bindings
99

1010
## registerPlugin
1111

1212
Register a custom plugin with a given name.
13-
Plugins extend Volt.js with custom data-volt-* attribute bindings.
13+
Plugins extend VoltX.js with custom data-volt-* attribute bindings.
1414

1515
```typescript
1616
export function registerPlugin(name: string, handler: PluginHandler): void

docs/bindings.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Volt Bindings
1+
# VoltX Bindings
22

33
Bindings connect reactive state to the DOM using `data-volt-*` attributes. Each binding evaluates expressions and updates the DOM when dependencies change.
44

@@ -56,7 +56,7 @@ The `data-volt-class` binding toggles CSS classes based on an object expression:
5656

5757
Each key in the object is a class name. When the corresponding value is truthy, the class is added; when falsy, the class is removed.
5858

59-
Class names with hyphens or spaces must be quoted. The binding preserves existing classes not managed by Volt.js.
59+
Class names with hyphens or spaces must be quoted. The binding preserves existing classes not managed by VoltX.js.
6060

6161
## Event Bindings
6262

@@ -372,7 +372,8 @@ Signal changes update the URL, and URL changes (back/forward navigation) update
372372
Register custom bindings for domain-specific behavior using the plugin API:
373373

374374
```js
375-
import { registerPlugin } from '@voltjs/volt';
375+
import { registerPlugin } from 'voltx.js';
376+
// or: import { registerPlugin } from '@voltx/core';
376377

377378
registerPlugin('tooltip', (ctx) => {
378379
const message = ctx.evaluate(ctx.element.getAttribute('data-volt-tooltip'));

docs/css/volt-css.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -335,7 +335,7 @@ Respecting user preferences improves accessibility and reduces eye strain. Autom
335335

336336
## License
337337

338-
Part of the Volt.js project. MIT licensed.
338+
Part of the VoltX project. MIT licensed.
339339

340340
## Further Reading
341341

docs/expressions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Expression Evaluation
22

3-
Volt.js evaluates JavaScript-like expressions in HTML templates using a sandboxed recursive descent parser.
3+
VoltX.js evaluates JavaScript-like expressions in HTML templates using a sandboxed recursive descent parser.
44
The evaluator is CSP-compliant and does not use `eval()` or `new Function()`.
55

66
## Supported Syntax

0 commit comments

Comments
 (0)