languel/essay-lab

Collect and assess writing with AI judges

0

stars

1

commits

JavaScript

primary language

Sep 9, 2026

updated

languel.github.io/essay-lab/

README

Essay Lab

Essay Lab is a small, static workspace for collecting short pieces of writing and assessing them with AI judges. It keeps project data in the browser with IndexedDB, so there is no backend to run and no account required.

Try it locally

node serve.mjs
# open http://localhost:8000

Load the demo project to explore the Entries, Judge, Chat, Charts, and Settings tabs. The word-count chart works without an AI provider. The theme button in the header switches between light and dark mode and remembers the choice in this browser.

The server adds COOP/COEP headers for the embedded Transformers.js provider. Opening index.html directly also works for the non-embedded providers, although a local server is recommended.

GitHub Pages

Pushes to master or main deploy the repository automatically with GitHub Pages. After the first push, enable Settings → Pages → GitHub Actions in the repository if GitHub has not selected the workflow automatically. The published site is a static copy of the repository root; no build step or secrets are required.

Features

  • Collect entries by paste, .txt/.md upload, or validated CSV import.
  • Create projects from scratch or import an earlier project export from the New Project dialog.
  • Judge one entry or a batch with versioned runs, strict JSON repair, and stale-run marking after edits.
  • Chat over all entries or a selected topic, author, or custom set.
  • Compare runs with average-score bars, sentiment × optimism, word counts, and per-topic charts.
  • Export project JSON, entries CSV, chat Markdown/JSON, and chart SVG/PNG/CSV.
  • Configure OpenAI-compatible, Anthropic, Google, local Ollama/LM Studio, Harness LLM, WebGPU, and Transformers.js providers.

API keys stay in memory unless you explicitly choose Remember on this device. Keys are never included in project exports.

Tests and standalone bundle

npm test
node bundle.mjs

The bundle command writes dist/essay-lab-standalone.html. It includes the app and styles but intentionally leaves the embedded model engines out of the single-file build.

See SPEC.md for the complete product specification.

Contributors

languel

1 commits

languel/essay-lab

Collect and assess writing with AI judges

0

stars

1

commits

JavaScript

primary language

Sep 9, 2026

updated

languel.github.io/essay-lab/

README

Essay Lab

Essay Lab is a small, static workspace for collecting short pieces of writing and assessing them with AI judges. It keeps project data in the browser with IndexedDB, so there is no backend to run and no account required.

Try it locally

node serve.mjs
# open http://localhost:8000

Load the demo project to explore the Entries, Judge, Chat, Charts, and Settings tabs. The word-count chart works without an AI provider. The theme button in the header switches between light and dark mode and remembers the choice in this browser.

The server adds COOP/COEP headers for the embedded Transformers.js provider. Opening index.html directly also works for the non-embedded providers, although a local server is recommended.

GitHub Pages

Pushes to master or main deploy the repository automatically with GitHub Pages. After the first push, enable Settings → Pages → GitHub Actions in the repository if GitHub has not selected the workflow automatically. The published site is a static copy of the repository root; no build step or secrets are required.

Features

  • Collect entries by paste, .txt/.md upload, or validated CSV import.
  • Create projects from scratch or import an earlier project export from the New Project dialog.
  • Judge one entry or a batch with versioned runs, strict JSON repair, and stale-run marking after edits.
  • Chat over all entries or a selected topic, author, or custom set.
  • Compare runs with average-score bars, sentiment × optimism, word counts, and per-topic charts.
  • Export project JSON, entries CSV, chat Markdown/JSON, and chart SVG/PNG/CSV.
  • Configure OpenAI-compatible, Anthropic, Google, local Ollama/LM Studio, Harness LLM, WebGPU, and Transformers.js providers.

API keys stay in memory unless you explicitly choose Remember on this device. Keys are never included in project exports.

Tests and standalone bundle

npm test
node bundle.mjs

The bundle command writes dist/essay-lab-standalone.html. It includes the app and styles but intentionally leaves the embedded model engines out of the single-file build.

See SPEC.md for the complete product specification.

Contributors

languel

1 commits

Languages

JavaScript

89.4%

CSS

7.4%

HTML

3.2%