{"id":26703041,"url":"https://github.com/anderson-hyl/instagram-clone","last_synced_at":"2025-04-13T12:12:31.871Z","repository":{"id":271919925,"uuid":"914979245","full_name":"Anderson-Hyl/instagram-clone","owner":"Anderson-Hyl","description":"a instagram clone based on PowerSync and Supabase. Followed by flutter tutorial at https://www.youtube.com/watch?v=Y3mBsPYVdz8\u0026t=1983s. Totally rewrite with SwiftUI + TCA.","archived":false,"fork":false,"pushed_at":"2025-01-12T09:10:18.000Z","size":25191,"stargazers_count":9,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-13T12:12:20.072Z","etag":null,"topics":["powersync","supabase","swift-composable-architecture","swiftui","swiftui-example","tca"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Anderson-Hyl.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-10T17:50:36.000Z","updated_at":"2025-03-24T01:36:38.000Z","dependencies_parsed_at":null,"dependency_job_id":"6aed4e4d-a76a-4ff9-9d8c-a78b749049e9","html_url":"https://github.com/Anderson-Hyl/instagram-clone","commit_stats":null,"previous_names":["atmanchen/instagram-clone","anderson-hyl/instagram-clone"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anderson-Hyl%2Finstagram-clone","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anderson-Hyl%2Finstagram-clone/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anderson-Hyl%2Finstagram-clone/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anderson-Hyl%2Finstagram-clone/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Anderson-Hyl","download_url":"https://codeload.github.com/Anderson-Hyl/instagram-clone/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248710448,"owners_count":21149191,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["powersync","supabase","swift-composable-architecture","swiftui","swiftui-example","tca"],"created_at":"2025-03-27T03:18:41.871Z","updated_at":"2025-04-13T12:12:31.844Z","avatar_url":"https://github.com/Anderson-Hyl.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Build based upon [PowerSync](https://github.com/powersync-ja/powersync-swift.git) and [Supabase](https://github.com/supabase/supabase-swift.git)\n\n| Login | Home | Comments | Reels | UserProfile | PhotoPicker | Chat |\n|-|-|-|-|-|-|-|\n| ![Login](/AppScreenshots/login.PNG) | ![Home](/AppScreenshots/home.PNG) | ![Comments](/AppScreenshots/comments.PNG) | ![Reels](/AppScreenshots/reels.PNG) | ![UserProfile](/AppScreenshots/userProfile.PNG) | ![PhotoPicker](/AppScreenshots/photoPicker.PNG) | ![Chat](/AppScreenshots/chat.PNG)\n\n\n\n## Code structure\n```mermaid\n%%{ init : { \"theme\" : \"default\", \"flowchart\" : { \"curve\" : \"monotoneY\" }}}%%\ngraph LR\n    AppReducer ---\u003e AppDelegateReducer\n    AppReducer ---\u003e LaunchReducer\n    AuthReducer ---\u003e LoginReducer\n    ChatMessageInputReducer ---\u003e ChatMessageInputTextFieldReducer\n    ChatMessageInputReducer -- optional --\u003e MessagePreviewReducer\n    ChatReducer ---\u003e ChatAppBarReducer\n    ChatReducer ---\u003e ChatMessageInputReducer\n    ChatReducer ---\u003e MessageListReducer\n    CommentReducer -- optional --\u003e RepliedCommentsReducer\n    CommentReducer ---\u003e UserCommentReducer\n    CommentsReducer ---\u003e CommentTextInputReducer\n    HomeReducer ---\u003e ChatsReducer\n    HomeReducer ---\u003e FeedReducer\n    HomeReducer ---\u003e MediaPickerReducer\n    HomeReducer ---\u003e ReelsReducer\n    HomeReducer ---\u003e TimelineReducer\n    HomeReducer ---\u003e UserProfileReducer\n    LoginReducer ---\u003e LoginFormReducer\n    MediaPickerReducer -- optional --\u003e CreatePostReducer\n    PostEditReducer ---\u003e PostMediaReducer\n    PostLargeReducer ---\u003e PostFooterReducer\n    PostLargeReducer ---\u003e PostHeaderReducer\n    PostLargeReducer ---\u003e PostMediaReducer\n    PostMediaReducer ---\u003e MediaCarouselReducer\n    SignUpReducer -- optional --\u003e MediaPickerReducer\n    SignUpReducer ---\u003e SignUpFormReducer\n    UserProfilePostsReducer ---\u003e PostsListReducer\n    UserProfileReducer ---\u003e UserProfileHeaderReducer\n    UserStatisticsReducer ---\u003e UserProfileListReducer\n    UserStatisticsReducer ---\u003e UserProfileListReducer\n    UserStatisticsReducer -- optional --\u003e UserProfileReducer\n\n    AppDelegateReducer(AppDelegateReducer: 1)\n    ChatAppBarReducer(ChatAppBarReducer: 1)\n    ChatMessageInputReducer(ChatMessageInputReducer: 1)\n    ChatMessageInputTextFieldReducer(ChatMessageInputTextFieldReducer: 1)\n    ChatsReducer(ChatsReducer: 1)\n    CommentTextInputReducer(CommentTextInputReducer: 1)\n    CreatePostReducer(CreatePostReducer: 1)\n    FeedReducer(FeedReducer: 1)\n    LaunchReducer(LaunchReducer: 1)\n    LoginFormReducer(LoginFormReducer: 1)\n    LoginReducer(LoginReducer: 1)\n    MediaCarouselReducer(MediaCarouselReducer: 1)\n    MediaPickerReducer(MediaPickerReducer: 2)\n    MessageListReducer(MessageListReducer: 1)\n    MessagePreviewReducer(MessagePreviewReducer: 1)\n    PostFooterReducer(PostFooterReducer: 1)\n    PostHeaderReducer(PostHeaderReducer: 1)\n    PostMediaReducer(PostMediaReducer: 2)\n    PostsListReducer(PostsListReducer: 1)\n    ReelsReducer(ReelsReducer: 1)\n    RepliedCommentsReducer(RepliedCommentsReducer: 1)\n    SignUpFormReducer(SignUpFormReducer: 1)\n    TimelineReducer(TimelineReducer: 1)\n    UserCommentReducer(UserCommentReducer: 1)\n    UserProfileHeaderReducer(UserProfileHeaderReducer: 1)\n    UserProfileListReducer(UserProfileListReducer: 2)\n    UserProfileReducer(UserProfileReducer: 2)\n```\n\n  \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanderson-hyl%2Finstagram-clone","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanderson-hyl%2Finstagram-clone","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanderson-hyl%2Finstagram-clone/lists"}