Vegr.ai eco-system · a capability, in use
Not what the editor offers — what is inside 194 saved compositions. Counted from the live store on 8 October 2026. Every figure here can be recounted; the last section says how.
source · vemotion:comp:* in the VEMOTION_PROJECTS namespace — 207 keys
194 read as this account · 13 answered Forbidden: they belong to other users and were not opened
The most-used layer type is path — vector outlines animated on drawProgress, drawing themselves on as the clip runs. The layer type called video occurs three times in 6,756 layers.
All eleven declared layer types are used, so none of it is dead code — but 69 of 6,756 layers sit in the last six combined. What people reach for is path and text on a coloured ground.
5,803 animation entries across the corpus. One property accounts for 83% of them.
5,039 of the 5,803 entries carry no kind at all: the named-effect vocabulary is the exception, not the rule. Four effect kinds the renderer implements have zero occurrences in the whole corpus.
Recent development went into Instagram posting and caption suggestion. The archive did not follow — 76% of compositions are 16:9 desktop frames, and ten in total are vertical.
Every save bumps a version and writes a snapshot, so the version number counts how often a composition was worked. The distribution is a power law.
By month created. August produced nothing at all.
Optional fields a composition may set, against how many of the 194 set them.
| field | what it is for | set in | share |
|---|---|---|---|
| fontFamily | per-composition type choice | 94 | 48% |
| meta | prose description, written so a later AI agent can read the file's intent | 72 | 37% |
| groups | layer groups, moved and animated together | 9 | 5% |
| audioTrack | sampled amplitude exposing amp, ampL, ampR to math-shape formulas | 0 | 0% |
| guides | ruler guides that layers snap their centre to | 0 | 0% |
audioTrack is the most carefully specified field in the format — three channels, normalised to a peak of 1.0, linear interpolation between samples, exposed to formula evaluation at absolute composition time. No composition uses it. Twenty-four audio layers exist; not one of them drives a track.
Compositions are grouped twice over, by two mechanisms that do not agree on how large the corpus is.
The knowledge-graph project layer indexes nine of 194 compositions. Anyone measuring this capability through the graph layer — the obvious place to look, since that is where the rest of the eco-system keeps its structure — undercounts it twenty-onefold.
Every figure above measures authoring. None of them says a composition reached an audience — because nothing on this side records that it did. Three places a post could leave a trace, all checked.
| where a trace could be | what is actually there |
|---|---|
| the composition record | Census across all 194. The record holds id, userId, userEmail, name, composition, createdAt, updatedAt, version; the composition holds duration, fps, width, height, layers plus optional fontFamily, meta, groups. No publish, post, publishedAt or target field at either level. |
| blotato-worker the worker that posts |
200 lines, read in full: zero write statements. It binds the vegvisr_org D1 and touches it three times, every one a SELECT — the caller's key, their granted accounts, the accounts granted to others. POST /blotato/post authenticates, refuses an ungranted account, forwards the body to backend.blotato.com/v2/posts, returns the response. Nothing is written on the way through. |
| a way to read it back | Three routes exist: /blotato/accounts, /blotato/health, /blotato/post. There is no list endpoint, so the system cannot ask after the fact either. |
The post id does exist — Blotato returns it, the worker hands it to the browser, and there it is dropped. Which composition became which post, when, to which account, and whether it succeeded, live only inside Blotato's own account. This page can say 192,195 frames were composed. It cannot say that one frame of it was seen.