a a vibe-coded abomination experiment of a fragrance review platform built on the atmosphere.
drydown.social
Phase 2: Lexicon Integration#
Status: 🔴 Planned
Goal: Store reviews and settings in AT Protocol repositories
Lexicon Definitions#
Create JSON files in /src/lexicons/:
social.drydown.review.json- Review record schemasocial.drydown.settings.json- Settings record schema
See Lexicon Schemas for full definitions.
API Integration Tasks#
1. Create Review Record#
await agent.com.atproto.repo.createRecord({
repo: agent.session.did,
collection: 'social.drydown.review',
record: reviewData
})
2. Update Review Record (Add Stages)#
await agent.com.atproto.repo.putRecord({
repo: agent.session.did,
collection: 'social.drydown.review',
rkey: extractRkeyFromUri(review.uri),
record: updatedReviewData
})
3. List User's Reviews#
const { records } = await agent.com.atproto.repo.listRecords({
repo: agent.session.did,
collection: 'social.drydown.review'
})
4. Settings Storage#
// Load
const { value } = await agent.com.atproto.repo.getRecord({
repo: agent.session.did,
collection: 'social.drydown.settings',
rkey: 'self'
})
// Save
await agent.com.atproto.repo.putRecord({
repo: agent.session.did,
collection: 'social.drydown.settings',
rkey: 'self',
record: settingsData
})
Migration: LocalStorage → AT Protocol#
When review is completed:
- Validate review data
- Create AT Protocol record
- On success: Remove from LocalStorage
- On failure: Keep in LocalStorage, show retry
See API Documentation for details.
Next: Phase 3 - Social Features