{"id":27870362,"url":"https://github.com/devholic22/numble_insta","last_synced_at":"2026-04-11T07:02:04.601Z","repository":{"id":160859689,"uuid":"618375941","full_name":"devholic22/numble_insta","owner":"devholic22","description":"[🏆 3등 수상 🏆] 넘블 인스타그램 서버 프로젝트 (2023/03)","archived":false,"fork":false,"pushed_at":"2023-08-27T11:06:50.000Z","size":207,"stargazers_count":0,"open_issues_count":6,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-04T23:15:47.761Z","etag":null,"topics":["backend","elastic-beanstalk","github-actions","java","jpa","spring","spring-boot","spring-data-jpa","spring-security"],"latest_commit_sha":null,"homepage":"","language":"Java","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/devholic22.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,"zenodo":null}},"created_at":"2023-03-24T10:35:17.000Z","updated_at":"2023-04-26T18:09:13.000Z","dependencies_parsed_at":null,"dependency_job_id":"ec2d2d5c-5264-4f73-9cb9-df4f790c5df1","html_url":"https://github.com/devholic22/numble_insta","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/devholic22/numble_insta","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devholic22%2Fnumble_insta","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devholic22%2Fnumble_insta/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devholic22%2Fnumble_insta/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devholic22%2Fnumble_insta/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devholic22","download_url":"https://codeload.github.com/devholic22/numble_insta/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devholic22%2Fnumble_insta/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266640830,"owners_count":23960809,"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","status":"online","status_checked_at":"2025-07-23T02:00:09.312Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["backend","elastic-beanstalk","github-actions","java","jpa","spring","spring-boot","spring-data-jpa","spring-security"],"created_at":"2025-05-04T23:15:44.673Z","updated_at":"2026-04-11T07:01:59.562Z","avatar_url":"https://github.com/devholic22.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# numble_insta\n## 2023-03 넘블 인스타그램 서버 API 프로젝트\n\u003cimg src=\"https://user-images.githubusercontent.com/90085154/230849243-0284701a-7cf3-4586-9d30-e18d22d9fddc.png\"\u003e\n\n순서 | 목차 \n| --- | ---\n| 0 | 작업 기간\n| 1 | 아키텍처 구조\n| 2 | 앱 적용 예시\n| 3 | DB 스키마 \u0026 ERD\n| 4 | API 문서\n| 5 | 가이드라인\n| 6 | 회고록 \u0026 기타 기록\n| 7 | 사용 기술\n| 8 | 폴더 구조\n## 작업 기간\n23.03.24 ~ 23.04.13\n## 아키텍처 구조\n\u003cimg src=\"https://user-images.githubusercontent.com/90085154/231455169-1a67ba16-cde0-4691-87ac-4c4aa6019722.png\"\u003e\n\n* CI / CD 과정에서 프로젝트 배포까지는 완료했으나, 배포한 파일에서 계속 `Target.FailedHealthChecks` 오류가 발생하는 문제는 해결하지 못했다.\n\u003cimg src=\"https://user-images.githubusercontent.com/90085154/231466102-9d891d25-639b-4ebd-b8ae-2ff30783f321.png\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/90085154/231466112-f856fd8e-f2f1-44fe-987c-11725630f185.png\"\u003e\n\n## 앱 적용 예시\n\u003cimg src=\"https://user-images.githubusercontent.com/90085154/231465617-a3f0fb31-6b13-4b8d-8dc9-c0fd2b67570f.png\"\u003e\n\n## DB 스키마 \u0026 ERD\n\u003cimg src=\"https://user-images.githubusercontent.com/90085154/230851149-920d280d-1bd1-4fe5-8883-0837c5a45a9f.png\"\u003e\n\n## API 문서\n[API 문서 (노션)](https://southern-tiglon-56a.notion.site/API-cf9c1b2f823f4acd86c45ad9706a9b4d)\n\n## 가이드라인\n[가이드라인](https://thoughtful-arch-8c2.notion.site/Spring-c83f01ab221a4166a2713120728aa552)\n\n## 회고록 \u0026 기타 기록\n[velog Numble 시리즈 글](https://velog.io/@devholic22/series/%EB%84%98%EB%B8%94%EC%B1%8C%EB%A6%B0%EC%A7%80)\n## 사용 기술\n* Spring Boot 3.0.5\n* Gradle\n* Java 17\n* Spring Web\n* Lombok\n* Spring Data JPA\n* MySQL 8.0.31\n* JWT\n* Spring Security\n* Github Actions\n* AWS Elastic beanstalk\n* AWS EC2\n* AWS RDS\n\n## 수료증\n![KakaoTalk_Photo_2023-05-03-14-35-30](https://user-images.githubusercontent.com/90085154/235856850-489b07a3-fe3a-4f13-84c3-514523d690d6.jpeg)\n\n## 폴더 구조\n```bash\n📂 instagram\n├── 📂 .ebextensions\n│   ├── 📜 00-makeFiles.config\n│   └── 📜 00-set-timezone.config\n├── 📂 .github\n│   └── 📂 workflows\n│       └── 📜 deploy.yml\n├── 📂 .gradle\n│   └── 📂 .....\n├── 📂 .idea\n│   └── 📂 .....\n├── 📂 .platform\n│   └── 📂 nginx\n│       └── 📜 nginx.conf\n├── 📂 gradle\n│   └── 📂 wrapper\n│       ├── 📜 gradle-wrapper.jar\n│       └── 📜 gradle-wrapper.properties\n├── 📂 out\n│   └── 📂 production\n│       └── 📂 .....\n└── 📂 src\n    ├── 📂 main\n    │   ├── 📂 generated\n    │   ├── 📂 java\n    │   │   └── 📂 com\n    │   │       └── 📂 numble\n    │   │           └── 📂 instagram\n    │   │               ├── 📂 config\n    │   │               │   └── 📜 SecurityCinfig\n    │   │               ├── 📂 controller\n    │   │               │   ├── 📜 ChatRoomController\n    │   │               │   ├── 📜 CommentController\n    │   │               │   ├── 📜 FeedController\n    │   │               │   ├── 📜 FollowController\n    │   │               │   ├── 📜 HomeController\n    │   │               │   ├── 📜 MessageController\n    │   │               │   ├── 📜 PostController\n    │   │               │   ├── 📜 ReplyController\n    │   │               │   └── 📜 UserController\n    │   │               ├── 📂 dto\n    │   │               │   ├── 📂 comment\n    │   │               │   │   ├── 📜 CommentDto\n    │   │               │   │   ├── 📜 EditCommentDto\n    │   │               │   │   └── 📜 GetCommentDto\n    │   │               │   ├── 📂 feed\n    │   │               │   │   └── 📜 GetFeedDto\n    │   │               │   ├── 📂 jwt\n    │   │               │   │   └── 📜 TokenDto\n    │   │               │   ├── 📂 message\n    │   │               │   │   ├── 📜 GetMessageDto\n    │   │               │   │   └── 📜 MessageDto\n    │   │               │   ├── 📂 post\n    │   │               │   │   └── 📜 PostDto\n    │   │               │   ├── 📂 reply\n    │   │               │   │   ├── 📜 EditReplyDto\n    │   │               │   │   ├── 📜 GetReplyDto\n    │   │               │   │   └── 📜 ReplyDto\n    │   │               │   ├── 📂 room\n    │   │               │   │   └── 📜 GetRoomDto\n    │   │               │   └── 📂 user\n    │   │               │       ├── 📜 EditUserDto\n    │   │               │       ├── 📜 LoginDto\n    │   │               │       ├── 📜 UserDto\n    │   │               │       └── 📜 UserInfoDto\n    │   │               ├── 📂 entity\n    │   │               │   ├── 📜 ChatRoom\n    │   │               │   ├── 📜 Comment\n    │   │               │   ├── 📜 Follow\n    │   │               │   ├── 📜 Message\n    │   │               │   ├── 📜 Post\n    │   │               │   ├── 📜 Reply\n    │   │               │   └── 📜 User\n    │   │               ├── 📂 exception\n    │   │               │   ├── 📜 ExceptionResponse\n    │   │               │   ├── 📜 AlreadyExistUserException\n    │   │               │   ├── 📜 AlreadyExitedUserException\n    │   │               │   ├── 📜 AlreadyFollowException\n    │   │               │   ├── 📜 ChatRoomException\n    │   │               │   ├── 📜 ExitedTargetUserException\n    │   │               │   ├── 📜 ExitedUserException\n    │   │               │   ├── 📜 LoginExceptionResponse\n    │   │               │   ├── 📜 NotFollowException\n    │   │               │   ├── 📜 NotPermissionException\n    │   │               │   ├── 📜 NotQualifiedDtoException\n    │   │               │   ├── 📜 NotSearchedTargetException\n    │   │               │   ├── 📜 SelfFollowAPIException\n    │   │               │   └── 📜 SelfMessageException\n    │   │               ├── 📂 jwt\n    │   │               │   ├── 📜 JwtAccessDeniedHandler\n    │   │               │   ├── 📜 JwtAuthenticationEntryPoint\n    │   │               │   ├── 📜 JwtFilter\n    │   │               │   ├── 📜 JwtSecurityConfig\n    │   │               │   └── 📜 TokenProvider\n    │   │               ├── 📂 repository\n    │   │               │   ├── 📜 ChatRoomRepository\n    │   │               │   ├── 📜 CommentRepository\n    │   │               │   ├── 📜 FollowRepository\n    │   │               │   ├── 📜 MessageRepository\n    │   │               │   ├── 📜 PostRepository\n    │   │               │   ├── 📜 ReplyRepository\n    │   │               │   └── 📜 UserRepository\n    │   │               ├── 📂 service\n    │   │               │   ├── 📜 ChatRoomService\n    │   │               │   ├── 📜 CommentService\n    │   │               │   ├── 📜 CustomUserDetailsService\n    │   │               │   ├── 📜 FeedService\n    │   │               │   ├── 📜 FollowService\n    │   │               │   ├── 📜 MessageService\n    │   │               │   ├── 📜 PostService\n    │   │               │   ├── 📜 ReplyService\n    │   │               │   └── 📜 UserService\n    │   │               ├── 📂 util\n    │   │               │   ├── 📜 SecurityUtil\n    │   │               │   └── 📜 UserUtil\n    │   │               └── 📜 InstagramApplication        \n    │   └── 📂 resources\n    │       ├── 📂 static\n    │       ├── 📂 templates\n    │       └── 📜 application.yml\n    │\n    ├── 📂 test\n    │   └── 📂 java\n    │       └── 📂 com\n    │           └── 📂 numble\n    │               └── 📂 instagram\n    │                   └── 📜 InstagramApplicationTests\n    ├── 📜 gradlew.bat\n    ├── 📜 .gitignore\n    ├── 📜 build.gradle\n    ├── 📜 settings.gradle\n    ├── 📜 HELP.md\n    ├── 📜 gradlew\n    └── 📜 Procfile\n``` \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevholic22%2Fnumble_insta","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevholic22%2Fnumble_insta","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevholic22%2Fnumble_insta/lists"}