ATlast — you'll never need to find your favorites on another platform again. Find your favs in the ATmosphere.
atproto
17
fork

Configure Feed

Select the types of activity you want to include in your feed.

at dd3141a680a02cdbb14ff26f795f4306d4c2dc92 90 lines 5.6 kB view raw
1[ 2 { 3 "hash": "6cd4d622930e2a43531f2df40d930ceb5d2b4dbc", 4 "short_hash": "6cd4d62", 5 "author": "Ariel M. Lighty", 6 "date": "2025-12-24T00:27:50-05:00", 7 "message": "use shared card component for history and results", 8 "files_changed": 4 9 }, 10 { 11 "hash": "cc586d28ea8d4544467392be1083fdec11731814", 12 "short_hash": "cc586d2", 13 "author": "Ariel M. Lighty", 14 "date": "2025-12-23T21:11:19-05:00", 15 "message": "replace excessive toasts with aria-live announcer\n\nRemove redundant success/info toasts (logout, upload loaded, no results).\nKeep only error toasts for critical feedback.\nAdd AriaLiveAnnouncer component for screen reader accessibility.", 16 "files_changed": 2 17 }, 18 { 19 "hash": "ebb1e05cac477f02e1901aab6f3a8005016472f9", 20 "short_hash": "ebb1e05", 21 "author": "Ariel M. Lighty", 22 "date": "2025-12-23T21:10:58-05:00", 23 "message": "fix mobile alignment: badges and descriptions align with avatar", 24 "files_changed": 1 25 }, 26 { 27 "hash": "4c3ae0dbca215d10b499fc646ae7f53c43c658ac", 28 "short_hash": "4c3ae0d", 29 "author": "Ariel M. Lighty", 30 "date": "2025-12-23T20:58:15-05:00", 31 "message": "fix login typeahead autofill and auto-strip @ symbol\n\nTypeahead fix:\n- Add event listeners for input/change/blur to sync actor-typeahead selections with form state\n- Ensures Enter/Tab selections from typeahead dropdown properly update form\n- Allows Enter key to submit form after selection\n\n@ stripping:\n- Automatically remove leading @ from handle input\n- Show helpful inline message when @ is stripped\n- Inform users the @ symbol isn't needed", 32 "files_changed": 1 33 }, 34 { 35 "hash": "8e9efd2577b82cb61b0162a28b4ab072bbccf00b", 36 "short_hash": "8e9efd2", 37 "author": "Ariel M. Lighty", 38 "date": "2025-12-23T20:57:21-05:00", 39 "message": "update CLAUDE.md with separate commit guidance\n\nAdd critical note that each commit should address ONE specific fix or feature.\nMultiple unrelated changes should be committed separately for clearer history.", 40 "files_changed": 1 41 }, 42 { 43 "hash": "587a9b0314546b91e00c94bf87d28d29f6527456", 44 "short_hash": "587a9b0", 45 "author": "Ariel M. Lighty", 46 "date": "2025-12-23T19:34:34-05:00", 47 "message": "add rate limiting to batch endpoints\n\nOptimization #12:\n- created rateLimit.middleware with in-memory rate limiting\n- batch-search-actors: 5 requests/min (conservative)\n- batch-follow-users: 8 requests/hr (conservative)\n- calculated based on AT Protocol limits with 50% buffer\n- DRY implementation with applyRateLimit helper function\n- prevents users from exhausting AT Protocol API limits\n- leaves buffer for likes, replies, posts\n\nNote: In-memory (resets on cold starts). Upgrade to Upstash Redis for production-grade shared state.", 48 "files_changed": 3 49 }, 50 { 51 "hash": "35061ae467e17724d85493c94827c361dc84e6d1", 52 "short_hash": "35061ae", 53 "author": "Ariel M. Lighty", 54 "date": "2025-12-23T19:12:00-05:00", 55 "message": "move inline animations to Tailwind config\n\nOptimization #11:\n- added float-1, float-2, float-3 animation variants to tailwind.config.js\n- replaced inline animation and animationDelay styles with Tailwind classes\n- use modulo pattern to cycle through 3 animation variants\n- maintains visual variety without Math.random() for animation timing\n- consistent with Tailwind conventions, easier to maintain", 56 "files_changed": 2 57 }, 58 { 59 "hash": "6b5cf20f95ea43d18c5d05fa80ff7e94d7aa26d2", 60 "short_hash": "6b5cf20", 61 "author": "Ariel M. Lighty", 62 "date": "2025-12-23T19:05:42-05:00", 63 "message": "replace localStorage context with zustand persist store\n\nOptimization #10:\n- created useSettingsStore with zustand persist middleware\n- removed SettingsContext.tsx (88 lines) and provider wrapper\n- added SSR-safe storage with cross-tab synchronization\n- automatic JSON serialization, no manual parse/stringify\n- maintained backward-compatible API (useSettings hook)\n- bundle size: +2.3KB for zustand library", 64 "files_changed": 6 65 }, 66 { 67 "hash": "43710263eec21891c899f57e4d0434322612d353", 68 "short_hash": "4371026", 69 "author": "Ariel M. Lighty", 70 "date": "2025-12-23T18:11:36-05:00", 71 "message": "replace any types with AT Protocol interfaces\n\nOptimization #9:\n- created atproto.types.ts with proper AT Protocol interfaces\n- replaced 7 any types in batch-search-actors.ts\n- added ATProtoActor, ATProtoProfile, RankedActor, EnrichedActor types\n- improves type safety, compile-time error catching, IDE support", 72 "files_changed": 3 73 }, 74 { 75 "hash": "65ac856188d644baed837eea7775aed307ca0a56", 76 "short_hash": "65ac856", 77 "author": "Ariel M. Lighty", 78 "date": "2025-12-23T16:07:44-05:00", 79 "message": "remove duplicate type definitions from Results.tsx\n\nOptimization #8:\n- removed 3 duplicate type definitions (atprotoSession, SourceUser, SearchResult)\n- import AtprotoSession and SearchResult from central types\n- prevents type drift, establishes single source of truth", 80 "files_changed": 1 81 }, 82 { 83 "hash": "093b47d63a6324c2e4bc231d45c5d9d6792383ed", 84 "short_hash": "093b47d", 85 "author": "Ariel M. Lighty", 86 "date": "2025-12-23T15:58:35-05:00", 87 "message": "replace duplicate validation with Zod schemas\n\nOptimizations #6 & #7:\n- #6: verified early exit optimization already implemented in FollowService\n- #7: created validation.utils.ts with Zod schemas for array validation\n- replaced 3 duplicate validation blocks with reusable Zod schemas\n- updated batch-follow-users, check-follow-status, batch-search-actors", 88 "files_changed": 5 89 } 90]