−
100%
+
fit
scroll
# Thiings.xyz **Archetype:** fid **Status:**
active **Description:** 3D gem visualization
world - the public face of the Thing ecosystem
--- ## Vision Thiings.xyz is Portal with a
beautiful face. Every interaction is a Portal
command. Every object is a Thing. Every
faceted stone is a gem. Users don't know
they're using Portal - they just know Thiings
is beautiful, intuitive, and makes sense.
**The site is practical HTML** - cards, forms,
grids, search bars - like any modern web app.
But gems animate in and out contextually. A
hero section might feature a 3D gem world, but
browsing products is familiar HTML cards. When
you hover a product, its gems glow. When you
filter by tag, amethyst crystals fly into the
filter bar. The 3D is flourish, not friction.
When they sign up, they become Beings.
End-Beings - not "consumers" but participants
in the ecosystem. They ARE the system's life.
## The 10 Sacred Gems ### Visual Identity |
Gem | Color | Hex | Shape | Technical Type |
|-----|-------|-----|-------|----------------|
| **Onyx** | Black/Obsidian | `#1a1a1a` | Cube
| `string` | | **Sapphire** | Deep Blue |
`#2563eb` | Hexagonal | `string\|object` | |
**Ruby** | Crimson | `#dc2626` | Octahedron |
`object` | | **Emerald** | Forest Green |
`#059669` | Rectangular | `array` (immutable)
| | **Amethyst** | Violet | `#7c3aed` |
Cluster | `array<string>` | | **Diamond** |
Clear/Prismatic | `#f8fafc` | Brilliant Cut |
`object` (readonly) | | **Pearl** |
Cream/Iridescent | `#fef3c7` | Sphere |
`string` | | **Obsidian** | Dark Mirror |
`#0f0f0f` | Tetrahedron | `object` (UUIDs) | |
**Topaz** | Golden Amber | `#f59e0b` |
Marquise | `object` | | **Citrine** | Warm
Yellow | `#eab308` | Triangle | `object` | ###
Shape Rationale (Blender-friendly) - **Cube**
(Onyx): Identity is foundational, stable,
singular - **Hexagonal** (Sapphire): Context
has facets, can be simple or complex -
**Octahedron** (Ruby): Config is
multidimensional, has depth - **Rectangular**
(Emerald): History stacks, layers of time -
**Cluster** (Amethyst): Tags group, multiple
crystals together - **Brilliant Cut**
(Diamond): Precious, protected,
system-generated - **Sphere** (Pearl): Content
flows, organic, human-readable -
**Tetrahedron** (Obsidian): Relationships
point, connect, reference - **Marquise**
(Topaz): Insight is sharp, focused, revealing
- **Triangle** (Citrine): Location has
coordinates, spatial orientation ## What Each
Gem Represents ### Onyx - Identity The name.
Every Thing has exactly one. ``` "onyx":
"my-product" ``` ### Sapphire - Context What
kind of Thing this is. Its realm, its type.
``` "sapphire": "product" "sapphire": {"type":
"product", "realm": "marketplace"} ``` ###
Ruby - Config Settings, behavior,
specifications. The knobs and dials. ```
"ruby": { "price": 29.99, "currency": "USD",
"in_stock": true, "variants": ["small",
"medium", "large"] } ``` ### Emerald -
Temporal Immutable history. Events that
happened. Cannot be changed. ``` "emerald": [
{"event": "created", "at": "2025-01-15T..."},
{"event": "published", "at":
"2025-01-16T..."}, {"event": "featured", "at":
"2025-02-01T..."} ] ``` ### Amethyst -
Classification Tags. Categories. How this
Thing is grouped and found. ``` "amethyst":
["featured", "new-arrival", "handmade"] ```
### Diamond - Provenance System-generated. Who
created it, when, version. Sacred, readonly.
``` "diamond": { "summoner": "artisan-jane",
"summoner_id": "uuid...", "day": 247,
"created_at": "2025-02-10T..." } ``` ### Pearl
- Content Human-readable substance. The
description, the story, the words. ```
"pearl": "Handcrafted ceramic vase with
traditional glazing techniques..." ``` ###
Obsidian - Relationships UUID references to
other Things. The connection graph. ```
"obsidian": { "ring":
"uuid-of-products-collection", "creator":
"uuid-of-artisan-being", "materials":
["uuid-of-clay", "uuid-of-glaze"] } ``` ###
Topaz - Insight What's missing, what's clear,
what needs attention. ``` "topaz": { "gaps":
["needs-photography", "missing-dimensions"],
"clarity": "description-complete" } ``` ###
Citrine - Location Where this Thing exists in
all dimensions. ``` "citrine": { "path":
"/products/ceramics/vases", "realm":
"marketplace", "coords": [12, 5, 3] } ``` ##
UI Mapping | Thiings.xyz UI | Portal Command |
Gem Queried |
|----------------|----------------|-------------|
| Search bar | `/xo search <query>` | All
(semantic) | | Category nav | `/0 gem
sapphire=<type>` | Sapphire | | Tag filter |
`/0 gem amethyst=<tag>` | Amethyst | | Product
page | `/0 <uuid>` | All gems rendered | |
Related items | Follow `obsidian` refs |
Obsidian | | "By Creator" | Filter by
`diamond.summoner` | Diamond | | Sort by date
| Order by `diamond.created_at` | Diamond | |
Favorites | Create `obsidian` relationship |
Obsidian | | Collections | Things with
`sapphire=collection` | Sapphire | ##
Connection Architecture Thiings.xyz connects
to Portal via: 1. **HTTPS API** - `POST
/api/daemon` with `{"command": "..."}` 2.
**WebSocket** - Real-time updates for 3D world
state 3. **Public endpoints** -
`amethyst.visibility = "public"` Things are
open End-Beings authenticate and get their own
Things: - Their profile is a Thing - Their
favorites are Obsidian relationships - Their
collections are Things they create - They ARE
Beings in the Portal ecosystem ## Example
Things ### A Product ```json { "onyx":
"ceramic-vase-001", "sapphire": "product",
"ruby": {"price": 89.00, "dimensions":
"12x12x24cm"}, "pearl": "Hand-thrown stoneware
vase with iron oxide glaze", "amethyst":
["ceramics", "handmade", "home-decor"],
"obsidian": {"ring": "products-ring-uuid",
"creator": "artisan-uuid"}, "diamond":
{"summoner": "artisan-jane", "day": 245} } ```
### A Collection ```json { "onyx":
"spring-collection-2025", "sapphire":
"collection", "ruby": {"featured": true,
"item_count": 12}, "pearl": "Fresh designs for
the new season", "amethyst": ["seasonal",
"curated"], "obsidian": {"ring":
"collections-ring-uuid", "items": ["uuid1",
"uuid2", "..."]} } ``` ### An End-Being's
Profile ```json { "onyx": "collector-maya",
"sapphire": "being-profile", "ruby":
{"display_name": "Maya", "avatar": "..."},
"pearl": "Collector of handmade ceramics and
textiles", "amethyst": ["collector",
"verified"], "obsidian": {"favorites":
["uuid1", "uuid2"], "collections": ["uuid3"]}
} ``` ## Gaps - [ ] Define gem 3D shapes per
gem type - [ ] Implement gem color palette as
swatch Things - [ ] Build Thiings.xyz frontend
(Three.js / WebGL) - [ ] Create public API
subset for unauthenticated browsing - [ ]
Design Being onboarding flow (signup =
becoming a Being) - [ ] Define "end-Being"
ring/crown for Thiings users
△