Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/connect-foundation/2019-12

๐ŸŽŸ ๊ธ‰์ฆํ•˜๋Š” ํŠธ๋ž˜ํ”ฝ์—๋„ ์•ˆ์ •์ ์ธ ์˜ˆ์•ฝ ์„œ๋น„์Šค, Atomic Pattern์„ ์ ์šฉํ•œ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ปดํฌ๋„ŒํŠธ, ์‹ค์šฉ์ ์ธ Testing์„ ์ฃผ์ œ๋กœ ํ•˜๋Š” ์ด๋ฒคํŠธ ์„œ๋น„์Šค
https://github.com/connect-foundation/2019-12

atomic cypress docker enzyme express jest kubernetes mariadb nodejs react redis storybook styled-components supertest travis-ci typescript

Last synced: 2 days ago
JSON representation

๐ŸŽŸ ๊ธ‰์ฆํ•˜๋Š” ํŠธ๋ž˜ํ”ฝ์—๋„ ์•ˆ์ •์ ์ธ ์˜ˆ์•ฝ ์„œ๋น„์Šค, Atomic Pattern์„ ์ ์šฉํ•œ ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ์ปดํฌ๋„ŒํŠธ, ์‹ค์šฉ์ ์ธ Testing์„ ์ฃผ์ œ๋กœ ํ•˜๋Š” ์ด๋ฒคํŠธ ์„œ๋น„์Šค

Awesome Lists containing this project

README

        

BookUs!



travis
Release
Cypress.io tests
Storybook
Server Test Coverage
License: MIT

### ๐Ÿ“• [Storybook for Bookus](https://storybook.bookus.kr/)

### ๐ŸŒฒ [Cypress for Bookus](https://dashboard.cypress.io/projects/wauqe2/runs)

## โœ๏ธ Writing

#### [Atomic Design for React](https://medium.com/@inthewalter/atomic-design-for-react-514660f93ba?) by [@inthewalter](https://github.com/inthewalter)

#### [์‹ค์šฉ์ ์ธ ๋ฆฌ์•กํŠธ ํ…Œ์ŠคํŠธ ์ „๋žต](https://velog.io/@sdong001/%EC%8B%A4%EC%9A%A9%EC%A0%81%EC%9D%B8-%EB%A6%AC%EC%95%A1%ED%8A%B8-%ED%85%8C%EC%8A%A4%ED%8A%B8-%EC%A0%84%EB%9E%B5) by [@doong-jo](https://github.com/doong-jo)

#### [์ฃผ๋‹ˆ์–ด ๊ฐœ๋ฐœ์ž์˜ CI/CD ๋„์ž…๊ธฐ](https://velog.io/@jdd04026/%EC%A3%BC%EB%8B%88%EC%96%B4-%EA%B0%9C%EB%B0%9C%EC%9E%90%EC%9D%98-CICD-%EB%8F%84%EC%9E%85%EA%B8%B0-n6k3mkug47) by [@FullOfOrange](https://github.com/FullOfOrange)

#### [Express ๊ธฐ๋ฐ˜ ํ”„๋กœ์ ํŠธ์—์„œ Typescript Typing์— ๋Œ€ํ•œ ๊ณ ๋ฏผ](https://medium.com/@dobest27/express-%EA%B8%B0%EB%B0%98-%ED%94%84%EB%A1%9C%EC%A0%9D%ED%8A%B8%EC%97%90%EC%84%9C-typescript-typing-%EC%97%90-%EB%8C%80%ED%95%9C-%EA%B3%A0%EB%AF%BC-cf282770595f) by [@dobest27](https://github.com/dobest27)

#### [React Hooks ๋กœ ์ „์—ญ์Šคํ† ์–ด ๋งŒ๋“ค๊ธฐ](https://velog.io/@jdd04026/React-Hooks-API๋กœ-Redux-๋”ฐ๋ผํ•ด๋ณด๊ธฐ) by [@FullOfOrange](https://github.com/FullOfOrange)

## ์†Œ๊ฐœ

[Bookus!](https://www.bookus.kr/)๋Š” ์ด๋ฒคํŠธ ์˜ˆ์•ฝ ์„œ๋น„์Šค [Festa!](https://festa.io/) ํด๋ก  ํ”„๋กœ์ ํŠธ์ž…๋‹ˆ๋‹ค. ์ˆœ๊ฐ„์ ์œผ๋กœ ๋งŽ์€ ํŠธ๋ž˜ํ”ฝ์ด ๋ชฐ๋ฆฌ๋”๋ผ๋„ ์ค‘๋‹จ๋˜์ง€ ์•Š๋Š” **์•ˆ์ •์ ์ธ** ์„ ์ฐฉ์ˆœ ์˜ˆ์•ฝ ์„œ๋น„์Šค๋ฅผ ๋ชฉํ‘œ๋กœ ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๋„์ „๊ณผ์ œ๋ฅผ ๊ฐ–๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

## ์žฌ์‚ฌ์šฉ์„ฑ์ด ๋†’๊ณ  ํ…Œ์ŠคํŠธ๋กœ ๊ฒ€์ฆ๋œ UI Component

#### Atomic Desgin Pattern

AtomicDesign

๊ฐ€์žฅ ์ž‘์€ ๋‹จ์œ„์˜ ์ปดํฌ๋„ŒํŠธ๋ฅผ ๋งŒ๋“ค์–ด, ํฐ ๋‹จ์œ„๋กœ ์Œ“์•„๋‚˜๊ฐ€๋ฉฐ ๊ฐ๊ฐ์˜ UI ๋‹จ์œ„๋ฅผ ๋งŒ๋“ค์–ด ๋‚˜๊ฐ€๋Š” ๋””์ž์ธ ํŒจํ„ด์ž…๋‹ˆ๋‹ค. ์ด๋ฒˆ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ์žฌ์‚ฌ์šฉ์„ฑ์ด ๋›ฐ์–ด๋‚œ UI๋ฅผ ์œ„ํ•ด ์•„ํ† ๋ฏน ๋””์ž์ธ ํŒจํ„ด์„ ์ ์šฉํ–ˆ์Šต๋‹ˆ๋‹ค.

## ์‹ค์šฉ์ ์ธ ํ”„๋ก ํŠธ์—”๋“œ ํ…Œ์ŠคํŠธ

**1. Custom Hooks Testing**

๋น„๋™๊ธฐ๋กœ API ์š”์ฒญ์— ๋Œ€ํ•œ ์ฒ˜๋ฆฌ๊ฐ€ ์ฃผ๊ฐ€ ๋˜๋Š” ์ƒํƒœ ๊ด€๋ฆฌ์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ

**2. Playground for UI components of Storybook**

Storybook์„ ํ†ตํ•œ ๋…๋ฆฝ๋œ ํ™˜๊ฒฝ์—์„œ์˜ ์ปดํฌ๋„ŒํŠธ ํ…Œ์ŠคํŠธ

**3. Cypress๋ฅผ ์ด์šฉํ•œ End-to-End Testing**

๊ฐ ํŽ˜์ด์ง€์™€ ์ปดํฌ๋„ŒํŠธ UI ํ…Œ์ŠคํŠธ

## ๊ณผ์ค‘ํ•œ ํŠธ๋ž˜ํ”ฝ์ด ๋ชฐ๋ ค๋„ ์•ˆ์ •์ ์œผ๋กœ ์˜ˆ์•ฝ์ด ๊ฐ€๋Šฅํ•œ ์‹œ์Šคํ…œ

์˜ˆ์•ฝ์ด ํ•„์š”ํ•œ ์‹œ์ ๋งˆ๋‹ค ๋Š˜์–ด๋‚˜๋Š” ํŠธ๋ž˜ํ”ฝ์„ ๊ฐ๋‹นํ•˜๊ธฐ ์œ„ํ•œ Container Orchestration ํˆด๋กœ Kubernetes๋ฅผ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.
[์„ค์ •ํŒŒ์ผ](https://github.com/connect-foundation/2019-12/tree/master/build/k8s)

![Kubernetes-infra](https://user-images.githubusercontent.com/10372359/70730811-ff855380-1d48-11ea-96c7-b7ee207cf926.png)

## DevOps

![CICD pipeline](https://user-images.githubusercontent.com/10372359/70730814-00b68080-1d49-11ea-9fcf-d0251da08d0b.png)

**[Travis CI](https://travis-ci.org/connect-foundation/2019-12/)**

**Docker hub**

[Frontend image](https://hub.docker.com/repository/docker/jdd04026/bu-front)

[Backend image](https://hub.docker.com/repository/docker/jdd04026/bu-back)

[Reserve Server image](https://hub.docker.com/repository/docker/jdd04026/bu-reserve)

## Test

ํ…Œ์ŠคํŠธ ์ปค๋ฒ„๋ฆฌ์ง€ 80๋ฅผ ๋ชฉํ‘œ๋กœ ํ•˜๋Š” ๊ฒ€์ฆ๋œ ์ฝ”๋“œ๋ฅผ ํ†ตํ•œ ์•ˆ์ •์ ์ธ ์„œ๋น„์Šค๋ฅผ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค.

- Front-End : Jest + Enzyme + Stroybook + Cypress
- Back-End : Jest + Supertest

## Built With

![Dependancy](https://user-images.githubusercontent.com/10372359/70730864-14fa7d80-1d49-11ea-959f-b981d8460d90.png)

## Team

- ๋ฌธ์ข…ํ˜„ [@dobest27](https://github.com/dobest27)
- ์œก์ง„ํ˜ [@FullOfOrange](https://github.com/FullOfOrange)
- ์ด์šฉํ˜ธ [@inthewalter](https://github.com/inthewalter)
- ์กฐ์„ฑ๋™ [@doong-jo](https://github.com/doong-jo)