{"id":20449061,"url":"https://github.com/codestates-seb/seb40_pre_035","last_synced_at":"2025-04-13T01:42:41.122Z","repository":{"id":84608070,"uuid":"553911256","full_name":"codestates-seb/seb40_pre_035","owner":"codestates-seb","description":"스택오버플로우 클론 코딩입니다.","archived":false,"fork":false,"pushed_at":"2022-12-14T06:35:40.000Z","size":1747,"stargazers_count":7,"open_issues_count":1,"forks_count":10,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-13T01:41:51.180Z","etag":null,"topics":["aws-ec2","java","javascript","react","spring","tailwind-css"],"latest_commit_sha":null,"homepage":"","language":"HTML","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/codestates-seb.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":"2022-10-19T00:51:10.000Z","updated_at":"2024-12-09T12:53:23.000Z","dependencies_parsed_at":"2023-03-01T06:15:52.498Z","dependency_job_id":null,"html_url":"https://github.com/codestates-seb/seb40_pre_035","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codestates-seb%2Fseb40_pre_035","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codestates-seb%2Fseb40_pre_035/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codestates-seb%2Fseb40_pre_035/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/codestates-seb%2Fseb40_pre_035/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/codestates-seb","download_url":"https://codeload.github.com/codestates-seb/seb40_pre_035/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248654030,"owners_count":21140235,"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":["aws-ec2","java","javascript","react","spring","tailwind-css"],"created_at":"2024-11-15T10:38:42.184Z","updated_at":"2025-04-13T01:42:41.114Z","avatar_url":"https://github.com/codestates-seb.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Team. 3355\n안녕하세요. 삼삼오오 모인 3355팀입니다!😉\n\n\n## 😋 **팀원 소개**\n\n|![노민하](https://avatars.githubusercontent.com/u/53070295?v=4)|![김예현](https://avatars.githubusercontent.com/u/107603123?v=4)|![신병규](https://avatars.githubusercontent.com/u/94808683?v=4)|![김민아](https://avatars.githubusercontent.com/u/36831218?v=4)|![김동진](https://avatars.githubusercontent.com/u/94734089?v=4)|![백승필](https://avatars.githubusercontent.com/u/71927001?v=4)|![박성우](https://avatars.githubusercontent.com/u/77265289?v=4)|\n|:---:|:---:|:---:|:---:|:---:|:---:|:---:|\n|[노민하](https://github.com/MinaRoh)|[김예현](https://github.com/roxpray)|[신병규](https://github.com/byeonggyu-shin)|[김민아](https://github.com/rmaomina)|[김동진](https://github.com/PNUHCT)|[백승필](https://github.com/philE22)|[박성우](https://github.com/hipopotamus)|\n|FE|FE|FE|FE|BE|BE|👑팀장\u003cbr\u003eBE|\n\n## **✨서비스 소개**\nStack Overflow Clone Coding\n스택 오버플로우 클론 코딩입니다.\n\n![image](https://user-images.githubusercontent.com/53070295/200287719-dbe3935d-b0b8-42c6-9115-f7eba7dfe4ca.png)\n\n\n\n\u003e Account (signup \u0026 login \u0026 mypage)\n  - ✅ Create: 유저는 계정을 생성할 수 있다.\n  - ✅ Read: 유저는 생성한 계정을 확인할 수 있다.\n  - ✅ Update: 유저는 생성한 계정 정보를 수정 할 수 있다.\n  - ✅ Delete: 유저는 생성한 계정을 삭제할 수 있다.\n\u003e Question\n  - ✅ Create: 유저는 질문을 생성할 수 있다. \n  - ✅ Read: 질문 상세 페이지를 조회할 수 있다. \n  - ✅ Update: 작성자는 질문을 수정할수 있다. \n  - ✅ Delete: 작성자는 질문을 삭제할 수 있다. \n\u003e Answer\n  - ✅ Create: 유저는 답변을 작성할 수 있다. \n  - ✅ Read: 유저가 작성한 답변을 조회할 수 있다. \n  - ✅ Delete: 작성자는 답변을 삭제할 수 있다.\n\u003e Vote\n  - ✅ 로그인한 유저는 질문에 추천을 누를 수 있다. \n  - ✅ 로그인한 유저는 답변에 추천을 누를 수 있다.\n\n\u003e Etc.\n  - 🎸 로그인이 필요한 기능에 대하여 경고문을 주고 로그인 페이지로 리다이렉트 한다. \n  - 🎸 계정, 질문, 답변 삭제는 모달을 띄워 사용자의 예기치 못한 실수를 방지한다. \n  - 🎸 에디터 작성, html로 작성한 콘텐츠를 직렬화하여 서버에 전달한다. \n  - 🎸 에디터 조회, 서버에서 가져온 콘텐츠를 파싱하여 출력한다. \n  - 🎸 에디터 이미지 업로드, form-data를 사용하여 서버에 이미지를 전달한다.\n\n\n## **👩‍💻기술 스택**\n\n### **Front-end**\n\n\u003cimg src=\"https://img.shields.io/badge/javascript-F7DF1E?style=for-the-badge\u0026logo=javascript\u0026logoColor=black\" width=\"225\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/react-61DAFB?style=for-the-badge\u0026logo=react\u0026logoColor=black\" width=\"175\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/html5-E34F26?style=for-the-badge\u0026logo=html5\u0026logoColor=white\" width=\"150\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/tailwind-06B6D4?style=for-the-badge\u0026logo=tailwindcss\u0026logoColor=white\" width=\"200\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/css-1572B6?style=for-the-badge\u0026logo=css3\u0026logoColor=white\" width=\"125\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/Amazon S3-569A31?style=for-the-badge\u0026logo=css3\u0026logoColor=white\" width=\"200\" height=\"50\"\u003e\n\n\n\n### **Back-end**\n\n\u003cimg src=\"https://img.shields.io/badge/Java-007396?style=for-the-badge\u0026logo=Java\u0026logoColor=white\" width=\"125\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/Spring-6DB33F?style=for-the-badge\u0026logo=Spring\u0026logoColor=white\" width=\"175\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/Spring Security-6DB33F?style=for-the-badge\u0026logo=Spring Security\u0026logoColor=white\" width=\"225\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/gradle-02303A?style=for-the-badge\u0026logo=gradle\u0026logoColor=white\" width=\"175\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/Amazon EC2-FF9900?style=for-the-badge\u0026logo=Amazon EC2\u0026logoColor=white\" width=\"225\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/Mysql-4479A1?style=for-the-badge\u0026logo=Mysql\u0026logoColor=white\" width=\"175\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/JWT-000000?style=for-the-badge\u0026logo=json web tokens\u0026logoColor=white\" width=\"175\" height=\"50\"\u003e\n\n\n### **Common**\n\u003cimg src=\"https://img.shields.io/badge/git-F05032?style=for-the-badge\u0026logo=git\u0026logoColor=white\" width=\"125\" height=\"50\"\u003e \u003cimg src=\"https://img.shields.io/badge/github-181717?style=for-the-badge\u0026logo=github\u0026logoColor=white\" width=\"150\" height=\"50\"\u003e\n\n ## **💻 local 실행 방법**\n\u003cdetails\u003e\n  \u003csummary\u003eFront-end\u003c/summary\u003e\n \u003cpre\u003e\n\n\u003e 🚧 프록시 서버 (http://[localhost](http://localhost):3000) 127.0.0.1:3000으로 설정된 파일은 test 브랜치로 올렸습니다. \n(추후에 EC2가 내려가면 main에 로컬 경로로 변경해서 올리겠습니다.)\n빌드가 필요할 때는 `npm run build` 하면 build 폴더에 webpack으로 번들링합니다.\n\n### 1. git clone 해오기\n```bash\ngit clone git@github.com:codestates-seb/seb40_pre_035.git\n```\n### 2. `cd front`\n![image](https://user-images.githubusercontent.com/53070295/200290406-7e137a61-5d79-4f19-909f-e8d67b64b3d9.png)\n### 3. `npm ci --legacy-peer-deps` npm 설치\n![image](https://user-images.githubusercontent.com/53070295/200290644-dc8fc364-d50a-421f-ae6e-b5bdc8ba09a5.png)\n### 4. `npm run start` 브라우저에서 리액트를 실행.\n![image](https://user-images.githubusercontent.com/53070295/200291014-916da701-84c0-4284-bdd3-388dc1359c29.png)\n### 5. npm 서버를 내릴 때까지 잘 작동.\n![image](https://user-images.githubusercontent.com/53070295/200291353-34677027-212c-4315-aa0f-cf8330ade7f2.png)\n### 6. 터미널에서 `ctrl+C` 또는 `cmd + C` 로 서버 종료\n![image](https://user-images.githubusercontent.com/53070295/200291692-a22b63e9-0d5b-4e17-b002-9947b89bfe79.png)\n\n \u003c/pre\u003e\n \u003c/details\u003e\n\u003cdetails\u003e\n  \u003csummary\u003eBack-end\u003c/summary\u003e\n \u003cpre\u003e\n\n### 1. java 설치\n\n`sudo apt update`\n\n`sudo apt install openjdk-11-jre-headless`\n\n위 명령어를 터미널에서 실행\n\n### 2. git clone 해오기\n\n```bash\ngit clone git@github.com:codestates-seb/seb40_pre_035.git\n```\n\n![image](https://user-images.githubusercontent.com/77265289/200238459-5df44229-4011-4dfd-a03f-c6af1201b5be.png)\n\n- local 브랜치 생성 및 이동\n\n![image](https://user-images.githubusercontent.com/77265289/200238547-9c434644-6a2c-40f3-b095-8adc9dfdcb48.png)\n\n- local 브랜치 pull\n\n![image](https://user-images.githubusercontent.com/77265289/200238620-2a35f9fe-7174-4f56-af99-7c6e905e626a.png)\n\n### 3. application.yml 파일 설정\n\n- application.yml에 파일이 저장될 경로를 지정\n\n설정 예시)\n\n![image](https://user-images.githubusercontent.com/77265289/200238651-8e5bb297-4566-40a8-a113-f13f7def32b0.png)\n\n![image](https://user-images.githubusercontent.com/77265289/200238689-1f96510e-c344-484e-b128-173ed87f4ebd.png)\n\nlocal 경로에서 파일이 저장될 위치를 지정해주어야 합니다.\n\n### 4. build\n\nback 폴더로 가서 build를 실행합니다.\n\n![image](https://user-images.githubusercontent.com/77265289/200238740-c61c704c-ed57-49c0-bfb8-c018d10c99c2.png)\n\n### 5. 실행\n\nback폴더에서 다음 명령어 실행\n\n![image](https://user-images.githubusercontent.com/77265289/200238782-d2685809-2361-44ea-8b37-e3b427a3b202.png)\n\n- 백그라운드에서 실행하는 방법\n\n![image](https://user-images.githubusercontent.com/77265289/200238862-80960451-415b-407f-80f9-5a875d57ddd8.png)\n\n- 백그라운드에서 실행되고있는 spring 끄기\n\n다음 명령어로 PID 찾기\n\n![image](https://user-images.githubusercontent.com/77265289/200238921-4847a27b-5479-42e3-b46c-5e68ec3e29cd.png)\n\n![image](https://user-images.githubusercontent.com/77265289/200238966-2915c166-bee4-4ad7-af69-753f7c01fef5.png)\n\n삭제\n\n![image](https://user-images.githubusercontent.com/77265289/200239005-1e2d0d94-2e9a-4035-8597-22729c03e000.png)\n\n\n \u003c/pre\u003e\n \u003c/details\u003e\n \n\n\n## **🏄‍ User Flow**\n![userflow2](https://user-images.githubusercontent.com/36831218/207521946-b2163f92-2bbe-4106-b380-25b8ab8b8346.png)\n\n## **👍 Demo**\n### 📍[API 명세서](https://3355api.netlify.app/)\n\n###  📍**Home**\n\u003cimg width=\"1083\" alt=\"Homescreen\" src=\"https://user-images.githubusercontent.com/36831218/207522267-e50915c4-edb5-42c3-a14d-2d1e1a3d523d.png\"\u003e\n\n### 📍**Question Detail**\n![detail](https://user-images.githubusercontent.com/36831218/207522383-b15fea36-ca64-4fb2-a410-43f9fbfbdbd4.png)\n\n### 📍**Question Create**\n![Kapture 2022-11-07 at 15 39 53](https://user-images.githubusercontent.com/53070295/200242000-dab5f8a7-690f-4a83-9568-6c93b11a5c78.gif)\n\n### 📍**Question Search**\n![search](https://user-images.githubusercontent.com/36831218/207522503-3e2f9c23-63f8-4b1e-8baa-b491a31845ed.png)\n\n### 📍**Sign up**\n![Kapture 2022-11-07 at 19 53 36](https://user-images.githubusercontent.com/53070295/200293732-11000632-5338-4076-9952-39dd29387425.gif)\n\n### 📍**Login**\n![Kapture 2022-11-07 at 19 53 36](https://user-images.githubusercontent.com/53070295/200294021-9496470c-6913-413d-8422-c988bcfab561.gif)\n\n### 📍**Mypage**\n![mypage](https://user-images.githubusercontent.com/36831218/207522593-0aedc632-bd18-4265-880b-dd7cd85860c0.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodestates-seb%2Fseb40_pre_035","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcodestates-seb%2Fseb40_pre_035","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcodestates-seb%2Fseb40_pre_035/lists"}