๐Ÿงฉ ์›น ํŽ˜์ด์ง€ ์–ด๋””๋“  ๊ฐ„ํŽธํ•˜๊ฒŒ ์ถ”๊ฐ€ํ•˜๋Š” ๋Œ“๊ธ€ ๋ชจ๋“ˆ ์„œ๋น„์Šค "๋‹ค๋ผ์“ฐ"

Overview

darass-logo

๋‹ค๋ผ์“ฐ

์–ด๋””๋“ ์ง€ ์‰ฝ๊ณ  ๊ฐ„ํŽธํ•˜๊ฒŒ ๋‹ค๋Š” ๋Œ“๊ธ€ ๋ชจ๋“ˆ ์„œ๋น„์Šค


๐Ÿ“ Introduce

๋‹ค๋ผ์“ฐ๋Š” ์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ์›น ํŽ˜์ด์ง€์— ๋ถ™์—ฌ๋„ฃ๋Š” ๊ฒƒ๋งŒ์œผ๋กœ ๊ฐ„ํŽธํ•˜๊ฒŒ ๋Œ“๊ธ€ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ๋Š” ๋Œ“๊ธ€ ๋ชจ๋“ˆ ์„œ๋น„์Šค ์ž…๋‹ˆ๋‹ค.

์‚ฌ์šฉ์ž์—๊ฒŒ ํ•„์š”ํ•œ ๋Œ“๊ธ€ ๊ธฐ๋Šฅ๊ณผ ํ•จ๊ป˜ ์šด์˜์— ํ•„์š”ํ•œ ๋Œ“๊ธ€ ํ†ต๊ณ„ ๋ฐ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ๋„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

๐Ÿค Demo


โญ Main Feature

  • ์›น ํŽ˜์ด์ง€์— ์„œ๋น„์Šค์—์„œ ์ œ๊ณตํ•˜๋Š” ์Šคํฌ๋ฆฝํŠธ ์ฝ”๋“œ๋ฅผ ์ถ”๊ฐ€ํ•˜๋ฉด, ๋Œ“๊ธ€ ๋ชจ๋“ˆ์ด ์ถ”๊ฐ€๋˜๋Š” ๊ธฐ๋Šฅ
  • ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€์—์„œ ๋Œ“๊ธ€ ํ†ต๊ณ„๋ฅผ ํ™•์ธํ•˜๊ณ  ๋Œ“๊ธ€์„ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๋Šฅ
  • oauth2 ๋กœ๊ทธ์ธ / ๋กœ๊ทธ์•„์›ƒ ๊ธฐ๋Šฅ

๐Ÿ”ง  Stack

Frontend(Web)

  • Language : TypeScript
  • Library & Framework : React, React Query, Styled-Components, Webpack, Babel
  • Test : Jest, RTL, Storybook
  • Deploy: AWS(S3, Cloudfront)
  • CI/CD : Github Actions

Backend, Devops

  • Language : Java
  • Library & Framework : Spring Boot
  • Database : MariaDB
  • ORM : JPA
  • Deploy: AWS(EC2, S3, ELB), Docker, Nginx, ELK
  • CI/CD : Github Actions, Jenkins

๐Ÿ”จ  Front-End Architecture

๐Ÿ”จ  Back-End Architecture

์•„ํ‚คํ…์ฒ˜

โš’ CI/CD (์ถ”ํ›„์— ๊ทธ๋ฆผ ์ถ”๊ฐ€ํ•˜๊ธฐ)

  • Github Actions๋ฅผ ํ™œ์šฉํ•ด์„œ ์ง€์†์  ํ†ตํ•ฉ ๋ฐ ๋ฐฐํฌ
  • master ๋ธŒ๋žœ์น˜๋กœ push๋ฅผ ํ•˜๋ฉด, test($ npm run test)๋ฅผ ์ง„ํ–‰ํ•˜๊ณ  ํ…Œ์ŠคํŠธ๋ฅผ ์„ฑ๊ณตํ•œ ๊ฒฝ์šฐ์—๋งŒ ์šด์˜ ๋ฆฌ์†Œ์Šค(AWS EC2)์— ์ž๋™ ๋ฐฐํฌ๋œ๋‹ค.

๐Ÿ™‹โ€โ™‚๏ธ Developer

Backend Backend Backend Backend Frontend Frontend
์ œ์ด์˜จ ์šฐ๊ธฐ ์•„๋ก  ์ œ๋ฆฌ ๋„๋น„ ๊ณค์ด
์ œ์ด์˜จ ์šฐ๊ธฐ ์•„๋ก  ์ œ๋ฆฌ ๋„๋น„ ๊ณค์ด
Issues
Releases(v1.0.0)
  • v1.0.0(Aug 12, 2021)

    ๋ณ€๊ฒฝ์‚ฌํ•ญ

    • โœ… ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€ ์ด๋™ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    • โœ… ๋Œ“๊ธ€ ์ •๋ ฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    • โœ… ๋Œ€๋Œ“๊ธ€ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    • โœ… ๋Œ“๊ธ€์— ๊ด€๋ฆฌ์ž ํ‘œ์‹œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    • โœ… ์ข‹์•„์š” ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    • โœ… ์ข‹์•„์š” ํ‘œ์‹œํ•œ ๋ชฉ๋ก ํ‘œ์‹œ ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    • โš ๏ธ ๋Œ“๊ธ€ ์ž…๋ ฅ๋ž€ ์œ„์น˜๋ฅผ ์•„๋ž˜ ์ชฝ์œผ๋กœ ๋ณ€๊ฒฝ
    • โ›”๏ธ ๋Œ“๊ธ€ ์ขŒ์šฐ ์ •๋ ฌ ์ œ๊ฑฐ

    Commits

    [3759db0b1cabfd1aaa7879b1779a15e648c85b8f] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ์ข‹์•„์š”๋ฅผ ๋ˆ„๋ฅธ ์œ ์ € ๋ชฉ๋ก์„ ํ™•์ธํ•˜๋Š” ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (#309) (#313) [fd2a4e976d2834b5fed1a99b953fb9d1834450a4] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๋ชจ๋‹ฌ์„ ๋ถ€๋ชจ์˜ ๋ทฐํฌํŠธ ๊ฐ€์šด๋ฐ์— ๋„์šฐ๋Š” ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (#337) (#340) [ff94a772420b283cc52e7f99a601fbcd58d0476f] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] iframe alert ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#152) (#341) [9e72b528d11c27991a24520a2e9c4dc0b34e3cbe] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] custom confirm ๊ธฐ๋Šฅ ๊ตฌํ˜„ (#342) (#343) [00f7a5f041d74e8108429557fc80aaf53f0c966c] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๊ณผ๊ฑฐ์ˆœ/์ตœ์‹ ์ˆœ/์ข‹์•„์š”์ˆœ ์ •๋ ฌ ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•œ๋‹ค. (#360) (#361) [2d2013667bdd25df2a671b0a3dde5b2d6a522dcd] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๋Œ“๊ธ€ ์ „์ฒด ๊ฐœ์ˆ˜ API ์ ์šฉ (#408) (#410) [85d95c8ee9822237d0bbb709f03f38f9f20d0568] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๋Œ€๋Œ“๊ธ€ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (#406) (#454) [a11283cfdea7972eb3a1f061450b38524e07937c] feat: ๋กœ๊ทธ์ธ ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•œ ์ฑ„ ๊ด€๋ฆฌ์ž ํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜๋Š” ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (#455)

    Source code(tar.gz)
    Source code(zip)
  • v0.1.2(Jul 26, 2021)

    ๋ณ€๊ฒฝ์‚ฌํ•ญ

    • ๋Œ“๊ธ€ CRUD ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    • ์นด์นด์˜ค ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ์ถ”๊ฐ€

    Commits

    [ac092216480384189cd61112bd7c9bf96810e248] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๋กœ๊ทธ์ธ ํšŒ์› ๋Œ“๊ธ€ CRUD์— ๋Œ€ํ•ด ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ๋‹ค. (#174) (#268) [4b6bd7039e242f14ec7f55f7b47e43b5357d9a05] test: ๊ด€๋ฆฌ์ž ์œ ์ €์˜ ๋Œ“๊ธ€ ์‚ญ์ œ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ [c925febc1299ad65aeac2ebde3dd87a9150df73d] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๋น„๋กœ๊ทธ์ธ ์œ ์ € ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ์ฐฝ์„ ์ˆ˜๋™์œผ๋กœ ๋‹ซ์„ ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ ๋‹ค. (#257) (#263) [f3ad467c6f0e362923ce8bd8e4fbd7846bb00f38] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๋น„๋กœ๊ทธ์ธ ์œ ์ € ๋Œ“๊ธ€ ๋น„๋ฐ€๋ฒˆํ˜ธ ์œ ํšจ์„ฑ ๊ฒ€์‚ฌ๋ฅผ, ๋น„๋ฐ€๋ฒˆํ˜ธ ์ผ์น˜ ์—ฌ๋ถ€๋ฅผ ํŒ๋‹จํ•˜๋Š” api๋กœ ๋ณ€๊ฒฝํ•œ๋‹ค. (#255) ( #259) [6ed8949a3eee795c34868cd05f43f8afc89687bf] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๊ด€๋ฆฌ์ž ์œ ์ € ๋Œ“๊ธ€ ๊ด€๋ฆฌ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (#177) (#256) [1bd0ff551737e8150b2d97250561e8d46f7539e3] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๋น„๋กœ๊ทธ์ธ ๋Œ“๊ธ€ ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ ์ฐฝ ๋…ธ์ถœ ํ›„ ๋กœ๊ทธ์ธ ์‹œ, ๋Œ“๊ธ€ ๋น„๋ฐ€๋ฒˆํ˜ธ ์ž…๋ ฅ ์ฐฝ์ด ์‚ฌ๋ผ์ง€์ง€ ์•Š๋Š”๋‹ค. (#251) (#254) [9eba4dbb65dc22f4368c4c9461e342ddfa7ad615] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๋น„ ๋กœ๊ทธ์ธ ํšŒ์› ๋Œ“๊ธ€ CRUD์— ๋Œ€ํ•ด ํ…Œ์ŠคํŠธ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•œ๋‹ค. (#175) (#244) [c345aa3750ee96362a568e051dab6ac79ef515e7] [FE][๋Œ“๊ธ€๋ชจ๋“ˆ] ๋Œ“๊ธ€ ์ž…๋ ฅ Form Validation UI ์ถ”๊ฐ€ (#140) (#234) [07030a686e7e62aa262f1c38d7221800cad512b1] refactor: ๋น„๋™๊ธฐ ์—๋Ÿฌ ํ•ธ๋“ค๋ง ๋กœ์ง ๋ณ€๊ฒฝ [8f849680a409a4392e1d0d5bcce1fefb85144849] [FE][๊ณตํ†ต] react Query ๋ฆฌํŒฉํ† ๋ง (#203) [01090de2bd0da3886373543673b93d86aa576fb5] fix: ๋Œ“๊ธ€์ด ๋ฐ”๋กœ ์‚ญ์ œ๋˜์ง€ ์•Š๋Š” ์˜ค๋ฅ˜ ํ•ด๊ฒฐ [b791fae9ccfb67f394a7e635580d048a7aa20c0d] feat: ๋ฐ˜์‘ํ˜• ํŽ˜์ด์ง€๋ฅผ ์œ„ํ•œ resize event ์ ์šฉ [811fb61f1c5f9b504ac03e1ec964ccf44cceb547] refactor: ๋Œ“๊ธ€ ๋ชจ๋“ˆ ์Šคํฌ๋กค ๋ฐ”๊ฐ€ ์ƒ๊ธฐ์ง€ ์•Š๋„๋ก postMessage ์ด๋ฒคํŠธ ์ถ”๊ฐ€ [1c40ae04161bcd6a030498a81db3879cd704a116] refactor: ๋Œ“๊ธ€์ด ๊ธธ์–ด์งˆ ๋•Œ ์ค„๋ฐ”๊ฟˆ ๋ฐ ๊ฐœํ–‰ ๋ฌธ์ž์™€ ์—ฐ์† ๊ณต๋ฐฑ ๋ฐ˜์˜ [1b904f0ba6cb43d00228e006c2664aa2a6ba08b7] chore: aws s3 cloud front ์ฃผ์†Œ๋กœ ๋„๋ฉ”์ธ ๋ณ€๊ฒฝ [13713da9807438966f89339a2a56fe96391a0459] fix: ์ฟ ํ‚ค ์‚ญ์ œ ๋ฒ„๊ทธ ํ•ด๊ฒฐ [ed47324610656565feaf4fedcf3384bc2d2fc255] fix: iframe keydown ์ด๋ฒคํŠธ ๋ฐœ์ƒ์‹œ ๋ฐœ์ƒํ•˜๋Š” DOM EXECPTION ์˜ค๋ฅ˜ ํ•ด๊ฒฐ [f355bb588b80b6e8b4417e906cf2dbc5b75260a2] refactor: ์ผ๋ถ€ API ์ฃผ์†Œ ์ˆ˜์ • [cd5265027194d6bb57f1419a413aa632f990b0f3] [FE] ๋Œ“๊ธ€๋ชจ๋“ˆ ๋กœ๊ทธ์ธ / ๋น„๋กœ๊ทธ์ธ ์œ ์ € ๋Œ“๊ธ€ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ (#80) (#131) [132dacb2f78076ccd722d95ef4d4b0647686e8d3] refactor: ์นด์นด์˜ค ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ๋ฆฌํŒฉํ„ฐ๋ง [57bffac708cf9d1fdc15bb579a2b2c33ce75ae28] feat: ํŽ˜์ด์ง€ ๋ผ์šฐํŒ… ๋ฐ ๋กœ๊ทธ์ธ ๋กœ์ง ๋ฆฌํŒฉํ„ฐ๋ง [10d045f3d8e4d6c71c82987a505cebc8e0348431] feat: query string์—์„œ url, accesstoken ์ฝ์–ด์˜ค๋Š” ๊ธฐ๋Šฅ ์ถ”๊ฐ€ [9b5ae4a28b836c9d6dbd6a236167c10a058abadf] test: ๋กœ๊ทธ์ธ ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ถ”๊ฐ€ [67996599bc6e66bdce377d7b8a665ddcc0512bfc] feat: ๋Œ“๊ธ€ ๋ชจ๋“ˆ ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ ์ถ”๊ฐ€ [569e8a3b1a5dc8547c61270765f61aa91228e417] test: getTimeDifference ํ…Œ์ŠคํŠธ ์ฝ”๋“œ ์ž‘์„ฑ [d23a2398bd803d114217d1747f83ef29428b3d4c] feat: week ๋‹จ์œ„ ์ถ”๊ฐ€ [132bc0f96785114b3d6b79e89de6a67e4ef713a0] feat: getTimeDifference ํ•จ์ˆ˜ ์ถ”๊ฐ€ [1fbaeb32df81de15bf8ae3cdc710a3b6358a4c0b] refactor: GlobalStyle๊ณผ ์ค‘๋ณต๋œ ์Šคํƒ€์ผ ์ œ๊ฑฐ [e8e9008d7d0bd7ce03d9826a0e605f35a0a52f3f] ๋Œ“๊ธ€ ๋ชจ๋“ˆ UI ๊ตฌํ˜„

    Source code(tar.gz)
    Source code(zip)
โœ… ๊ณต๊ฐ„์„ ํ•œ ๋ˆˆ์—, ์˜ˆ์•ฝ์€ ํ•œ ๋ฒˆ์—!

์ฐœ๊ฝ ๊ณต๊ฐ„์„ ํ•œ ๋ˆˆ์—, ์˜ˆ์•ฝ์€ ํ•œ ๋ฒˆ์—! ๋งž์ถคํ˜• ๊ณต๊ฐ„์˜ˆ์•ฝ ์„œ๋น„์Šค ์ œ์ž‘ ํ”Œ๋žซํผ ์ฐœ๊ฝ์ž…๋‹ˆ๋‹ค! 1. ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ ?? ๊ณต๊ฐ„ ์ œ๊ณต์ž(๊ด€๋ฆฌ์ž)๋Š” ์—๋””ํ„ฐ๋ฅผ ํ†ตํ•ด ๊ณต๊ฐ„์„ ์ƒ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค! ์ƒ์„ฑํ•œ ๊ณต๊ฐ„์€ ๋งํฌ๋ฅผ ํ†ตํ•ด ์‚ฌ์šฉ์ž์—๊ฒŒ ์ œ๊ณตํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์‚ฌ์šฉ์ž๋Š” ๋งํฌ๋ฅผ ํ†ตํ•ด ๊ฐ„ํŽธํ•˜๊ฒŒ

null 19 Sep 11, 2021
๐ŸŽ‰ Thank You For ___ ! ๋ˆ„๊ตฌ๋‚˜ ์‰ฝ๊ฒŒ ์ฐฝ์ž‘์ž๋ฅผ ์‘์›ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ„ํŽธ ๋„๋„ค์ด์…˜ ์„œ๋น„์Šค!

2021-tyf ?? Thank you for _ _ _ ๋ˆ„๊ตฌ๋‚˜ ์‰ฝ๊ฒŒ ์ฐฝ์ž‘์ž๋ฅผ ์‘์›ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ„ํŽธ ๋„๋„ค์ด์…˜ ๋ชจ๋“ˆ ์„œ๋น„์Šค ?? ์ปค๋ฐ‹ ๋ฉ”์„ธ์ง€ ์ปจ๋ฒค์…˜ ์•ต๊ทค๋Ÿฌ ์ปค๋ฐ‹ ์ปจ๋ฒค์…˜์„ ๋”ฐ๋ฆ…๋‹ˆ๋‹ค. (#[์ด์Šˆ๋ฒˆํ˜ธ]) ์ด์Šˆ ์ œ๋ชฉ feat : ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ ์ถ”๊ฐ€ fix : ๋ฒ„๊ทธ ์ˆ˜์ • docs

null 15 Sep 14, 2021
๐ŸŒŽ ๊ด€์‹ฌ์‚ฌ ๊ธฐ๋ฐ˜ ๋น ๋ฅธ ๊ฒŒ์ž„ ํŒ€ ๋งค์นญ ์„œ๋น„์Šค, Babble

?? Babble ?? 1. Introduction ํ‚ค์›Œ๋“œ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•œ ๋น ๋ฅธ ๊ฒŒ์ž„ ํŒ€ ๋งค์นญ ์„œ๋น„์Šค์ž…๋‹ˆ๋‹ค. ํ•จ๊ป˜ ๊ฒŒ์ž„ํ•  ์‚ฌ๋žŒ์ด ํ•„์š”ํ•œ ์‚ฌ์šฉ์ž๋“ค์ด ํ‚ค์›Œ๋“œ๋ฅผ ํ†ตํ•ด ๋น ๋ฅด๊ฒŒ ํŒ€์„ ์ฐพ๊ณ , ๊ฒŒ์ž„์„ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ?? 2. About Us [Back-End] ๋ฃจํŠธ(๊น€์ค€๊ทผ) ??

null 12 Sep 10, 2021
๐Ÿ‘€์ฝ”๋“œ ๋ฆฌ๋ทฐ ๋งค์นญ ํ”Œ๋žซํผ ์ฝ”๋“œ๋ด์ค˜

์ฝ”๋“œ๋ด์ค˜ ์„œ๋น„์Šค์†Œ๊ฐœ ๋ฆฌ๋ทฐ์–ด ๋งค์นญ ์„œ๋น„์Šค ํŒ€์›์†Œ๊ฐœ ๋ธŒ๋žœ ์‹ ์„ธํ•œํƒ„ ์‹œ๋“œ ์•Œ๋ฆฌ ํŒŒํ”ผ ์—์–ด ํŒ€๋ฌธํ™” ํƒ„๋ ฅ ๊ทผ๋ฌด์ œ: ์ƒˆ๋ฒฝ์— ์ผํ•˜๋Š” ํฌ๋ฃจ๋“ค.. ๋ฐ˜๋ง ๋ฌธํ™”: ์œ ๋Œ€๊ฐ ํ˜•์„ฑ์— ์•„์ฃผ ํฐ ๊ธฐ์—ฌ ์—…๋ฐ์ดํŠธ๋‚ด์—ญ 2021.08.10 - v1.0.0 ์ธ์ฆ ๊นƒํ—ˆ๋ธŒ ๋กœ๊ทธ์ธ ๋กœ๊ทธ์•„์›ƒ ์กฐํšŒ ๋ฆฌ๋ทฐ์–ด ๋ชฉ๋ก ์กฐ

null 13 Sep 8, 2021