Repository navigation
App Overview
Chirpy is a social-feed demo with a fictional flock of 15 birds and 120 seeded posts,
including illustrated avatars and eight post images. Everyone uses one shared demo
profile, Pip Sparrow (@crumbclub); no signup is required.
| Feature | How it works |
|---|---|
| Home | Browse newest posts first, load more as you scroll, and pull to refresh |
| Search | Find posts by their text, with paginated results |
| Profile | View the current profile and its posts |
| Post detail | Read the full text, optional image, timestamp, and likes |
| Posting | Open the Home composer to create a text-only post |
| Likes | Like or unlike a post from any tab or its detail |
| Deletion | Open your own post's detail, choose Delete post, and confirm |
Successful posting reloads Home. Deletion closes the detail and removes the post from that tab's loaded list. Each tab keeps its own posts; refresh other tabs to pick up changes.
Initial loading failures offer Try Again. Search and Profile also offer pagination retry while keeping existing posts visible. Failed refreshes and likes preserve the current content; failed submissions keep the draft open.
- Requires iOS 26.5 or later.
- Posts contain 1–300 Unicode code points after trimming. The composer has no image uploads.
- Posting allows five posts per rolling minute and 50 per rolling day, shared by the demo profile.
- Search matches post text using case-insensitive literal substrings. Queries contain 2–100 Unicode code points after trimming; names and handles are not searched.
- Loaded content stays in memory, with no persistent offline cache or realtime updates.
- Accounts, replies, follows, and notifications are outside the current scope.
Data requests use a personal API key, which grants access to the shared demo rather than identifying a user. Avatar and post image downloads are public.
See Development to run the app, Architecture for the code structure, and Backend for the API.