openvibers/openvibe.shoes STATUS.json

STATUS.json

main 4.8 KB · 101 lines · json

1{
2 "repository": "OpenVibers/OpenVibe.Shoes",
3 "version": "0.1.0",
4 "stage": "product",
5 "code": true,
6 "plan": "OpenVibe.Shoes: every shoe, every market, the right price — one page per model with every store's all-in price, Shoes' own daily price snapshots, the size-price curve, cited specs, a price watch at a size and paste-a-link tracking through OpenVibe.Watch, and official drops with a reminder on Today",
7 "runtime": "node 22, express 4, PostgreSQL 18 (openvibe-sdk/db, async) + Valkey 9",
8 "port": "5180",
9 "domain": "open.shoes",
10 "contracts": "openvibe-contracts v0.419.0",
11 "sdk": "openvibe-sdk v0.161.0",
12 "shared": "openvibe-shared v4.235.0",
13 "packages": [
14 "openvibe-contracts v0.419.0",
15 "openvibe-publishing v1.7.0",
16 "openvibe-sdk v0.161.0",
17 "openvibe-shared v4.235.0"
18 ],
19 "summary": "OpenVibe.Shoes is the network's shoe resource. It reads OpenVibe.Deals' public offers (and the official eBay Browse API when a key pair is set), keeps the footwear in its own catalogue, and shows one page per model with every store's all-in price, a price history from its own one-snapshot-per-offer-per-day record, the size-price curve where sizes are known, and specs/fit/release/care only from cited open sources. A signed-in person can ask Watch to tell them when the model drops below a price at their size, or paste any listing link and have Watch apply its own fetch rules. Official release dates come from the brands' and stores' own public release pages; a reminder goes on Today. Shoes never enters a raffle, never scrapes Marketplace and carries no affiliate links.",
20 "works": [
21 "Models and offers with a unique slug, all-in price, list price, condition, size, colourway, source check time and stale flag",
22 "One snapshot per offer per day (the first check wins), the price history and the size-price curve from those snapshots",
23 "The offers job over OpenVibe.Deals' public API, with the footwear classifier and product brand lookup",
24 "The drops job over a brand's or store's own release page, plus optional RSS feeds; every release cited and dated",
25 "A price watch at a size and a pasted listing link through OpenVibe.Watch's API with the person's own Network token",
26 "A drop reminder on OpenVibe.Today with the person's own token; no automated raffle entries",
27 "The public API: search with facets, one model with offers/history/curve/facts, the price a Watch polls, drops, the person's watches, source status, OpenAPI 3.1",
28 "The home via sc.room: hero, proof, biggest price drops today, dropping this week, popular models, three scenes, explore, developers, FAQ, network",
29 "Server-rendered pages, discovery artifacts, cache headers, account export/deletion and deploy files",
30 "Tests on PGlite and PostgreSQL: pure rules, the catalogue, the job parsers, every HTTP route"
31 ],
32 "notYet": [
33 "eBay is off until the host sets SHOES_EBAY_CLIENT_ID and SHOES_EBAY_CLIENT_SECRET",
34 "A watch needs the person's own Network token; a session without one saves it on Shoes and marks it not_connected",
35 "Specs, fit notes and care notes are empty until a cited open source is added to the shoe_facts table; the pages say not known yet",
36 "The size-price curve is empty until a source states the size; no size is invented",
37 "No closet, image search or merchant inventory feed (plan v2/v3)",
38 "The drops parser knows the Nike SNKRS launch payload and plain RSS; other calendars need their own parser"
39 ],
40 "capabilitiesRegistered": false,
41 "serviceManifestRegistered": false,
42 "deployed": false,
43 "placeholderInSites": false,
44 "seed": {
45 "run_at": "2026-10-31T22:34:27Z",
46 "sources": {
47 "offers": {
48 "ok": true,
49 "pages": 60,
50 "seen": 1500,
51 "candidates": 182,
52 "product_lookups": 165,
53 "offers": 178,
54 "skipped": 4
55 },
56 "drops": {
57 "ok": true,
58 "sources": 1,
59 "releases": 16,
60 "drops": 16,
61 "skipped": 0
62 },
63 "ebay": {
64 "ok": true,
65 "configured": false,
66 "offers": 0,
67 "note": "off: no developer key pair"
68 }
69 },
70 "counts": {
71 "models": 169,
72 "offers": 178,
73 "snapshots": 178,
74 "drops": 16,
75 "watches": 0,
76 "facts": 0
77 }
78 },
79 "features": [
80 "models and offers",
81 "all-in price with stale flag",
82 "daily price snapshots and history",
83 "size-price curve",
84 "cited facts or not known yet",
85 "offers job",
86 "drops job",
87 "eBay job (off without keys)",
88 "watch at a size",
89 "paste-a-link tracking",
90 "drop reminders on Today",
91 "public API and OpenAPI",
92 "account export and deletion",
93 "Network sign-in",
94 "server-rendered pages",
95 "discovery",
96 "deploy files"
97 ],
98 "deployment": "not deployed: the unit and nginx vhost are deploy/systemd/openvibe-shoes.service and deploy/nginx/open.shoes.conf",
99 "updated": "2026-11-13"
100}
101