Sianelara · Institute of Meaning
A dictionary for things humanity has felt but never named.
Describe what language cannot yet express. The laboratory reads the deep meaning of the request first, then invents a new word for it — one that can actually be spoken inside an existing language. It does not replace English or Russian; it expands them where ordinary vocabulary runs out.
The irreversible becoming of someone new after surviving what should have destroyed you — the death of a former self without physical death.
“I did not recover. I entered varethis.” · «я прошёл через варетис.»
Meaning first, word last.
Sianelara is not a random word generator, a fantasy-language builder, or an AI name generator. The most important object in the product is the Concept — the meaning being named — not the word and not the language. The word is only a vessel; the phonetic system decides how that vessel sounds.
So the generation order is always the same, and it never runs backwards. If the interpretation of the request is wrong, everything downstream is wrong — which is why the lab states its reading of the meaning before it makes a single word.
From a single sentence to a usable word.
The user gets one free-text field — “describe a meaning.” Results render immediately from a deterministic engine, then, if the language model is configured, bespoke per-word meanings and usage sentences swap in progressively on top.
Discover a meaning, or name a thing.
The same discovery-and-selection pipeline runs underneath two modes; only the analysis framing and the result copy change. Discover a meaning is the primary mode — for unnamed human experiences, tuned for semantic precision and natural usage. Name something is for a company, store, brand, product or a newborn: it switches to a brand-safety scoring path where any collision with an existing word is disqualifying, and every candidate carries a clearance-dominant safety read.
A pure engine with a single seam.
Framework-agnostic engine
The whole meaning-first pipeline lives in pure TypeScript — no React, no DOM, no network. The UI and the LLM depend on the engine; the engine never depends on them.
One seam for the LLM
analyzeMeaning() is the single function a language model replaces. Whatever it returns must fit the exact MeaningAnalysis shape the engine already consumes, so everything downstream is unchanged.
Always works without the LLM
Every model call has a deterministic fallback. If no key is set the API returns 501 and the client quietly falls back to the built-in engine — the product never breaks.
Key never reaches the browser
ANTHROPIC_API_KEY lives only on the server, inside Vercel functions. The client sees results, never credentials.
Deterministic & shareable
Engine output is deterministic per seed — same request, same words. No Date.now() or Math.random() in the engine; a seeded mulberry32 RNG makes every run reproducible.
Progressive enhancement
Deterministic results paint first; bespoke per-word meanings and usage sentences stream in afterwards. Fast by default, deep when the model is on.
Population, not generation
Each language breeds hundreds of candidate forms and lets selection pressure kill most of them. The engine reports the real census — bred, rejected, survived — instead of dressing every output up as a “99.”
Ontology-aware ranking
Target-type detection reads the kind of thing asked for — a moment, a feeling, a person, a principle — and demotes candidates of the wrong kind, so a semantically-near but ontologically-wrong word can't win.
Mysterious on the surface, honest underneath.
The interface can feel like alchemy, but the system refuses to fake the things a user would trust it on. Three lines are never crossed.
No fake etymology
A newly invented word does not historically descend from Greek or Latin. The lab says “constructed using phonetic patterns associated with…” — never “comes from Ancient Greek.”
No fake precision
No invented 97% / 100% scores on everything. Qualitative bands (Low / Moderate / High / Exceptional) unless there's a real basis — and it states plainly when a check hasn't been run yet.
Labelled sources
An AI-read interpretation carries a “Read by AI” badge, distinct from the deterministic built-in engine. The user always knows which one spoke.
Never “collision-free”
Collision is reported in layers. The offline checks that can run — internal list, phonetic neighbours, short-word occupancy — are run; the external ones (trademark, domains, other languages) are marked “not checked,” never silently passed. The engine never claims a word is clear.
- 2
- living languages served — EN + RU
- 12
- linguistic species, each with its own accent & grammar
- 284
- tests kept green
Every invented word ships with a spoken pronunciation guide and a Cyrillic transliteration, so it can live in Russian as naturally as in English. The real bar isn't raw originality — it is speech adoption: can this word actually enter a human sentence? That is what the “Use in Language” section exists to prove.
Stack.
- React 18
- TypeScript (strict)
- Vite 5
- single free-text input
- pure TypeScript
- no DOM / no network
- seeded mulberry32 RNG
- deterministic
- Anthropic SDK
- Haiku 4.5 by default
- graceful fallback
- server-only key
- Vercel functions
/api/analyze/api/meanings/api/usage/api/semantic-search/api/collision- maxDuration 60s
- Supabase (optional)
- row-level security
- cloud lexicon sync
- guests stay on localStorage
- Vitest, 284 green
- determinism
- meaning-first order
- phonetic diversity
- measured capacity benchmark
From meaning to a word you can say.
The meaning-first engine, language discovery, genomes and Word Passports are done, the serverless LLM meaning analysis runs with a graceful fallback, and bespoke per-word meanings, pronunciation guides, Cyrillic transliteration and natural EN/RU usage sentences all ship today. Since then the lab has grown a semantic gap search, a breed-and-select evolution model with an honest census, a rule-based speech-adoption test, semantic phonology, morphological word families, a navigable semantic network, an on-device personal lexicon, a “name something” brand mode and a live key-free collision check.
Since the last portfolio sync it has gained three things worth naming. Each of the twelve linguistic species now has its own accent — per-language phonotactics and per-language grammatical morphology, so a word reads as a native specimen of its species rather than a shared pattern in different clothes. The personal lexicon gained a first, on-device prototype of proof of meaning: before a word is saved it is checked against what is already there, by form (spelling and sound) and by meaning, so a collection never fills with one idea under two spellings. And sign-in became optional — a signed-in lexicon syncs across devices through Supabase with row-level security, while a guest’s dictionary keeps living in the browser exactly as before. The Capacity block is measured by a benchmark rather than asserted.
Next on the roadmap: the shared public dictionary — where de-duplication has to move server-side — live trademark and domain clearance, and a semantic-precision axis for the fitness profile.
Role — Product owner + architect. Built in partnership with an AI engineer through iterative collaboration: product direction, the meaning-first invariants and the honesty rules set by me; implementation and calibration from the partner.
// meaning · concept · word
Describe what language cannot yet express.
Site under development
Back to the portfolio