"SS"는 무엇의 약자일까요? 공식 명칭은 SS 시리즈지만, 사실 여러 의미를 담고 있습니다.
- Super Sexy: 잘 짜인 구조는 언제나 매력적이니까요.
- StarterStack: 풀스택 프로젝트를 시작하기 위한 최고의 템플릿.
- ScaffoldSuite: 다양한 기능을 갖춘 보일러플레이트 모음.
- SpeedySetup: 프로젝트를 신속하게 설정할 수 있다는 의미.
- SmartScaffold: 똑똑하게 프로젝트 구조를 잡아주는 템플릿.
- SuperStructure: 안정적이고 견고한 아키텍처를 강조하는 의미.
핵심적으로 "SS 시리즈"는 MSA(Microservice Architecture) 기반 서비스를 관리하기 위한 체계적인 레포지토리 명명 규칙입니다. 이 규칙의 주요 목표는 레포지토리의 영역, 서비스, 기능, 그리고 사용 기술을 한눈에 파악할 수 있는 직관적이고 통일된 구조를 제공하는 것입니다.
SS 시리즈의 서비스는 다음과 같은 주요 영역으로 분류됩니다:
- 데이터: 데이터 수집, 정제, 저장과 관련된 서비스
- 인증/인가: 인증 서버, API 게이트웨이 등
- 핵심 비즈니스: User, Product, Order 등 핵심 비즈니스 로직을 담는 서비스
- 인프라/운영: Worker, Scheduler, Logging, Monitoring 등 인프라 및 운영 관련 서비스
- 공통/유틸: Config, 공통 모듈 등 여러 서비스에서 공유하는 라이브러리 및 유틸리티
모든 SS 시리즈 레포지토리는 아래 구조를 따릅니다. 일부 구성 요소는 선택 사항이지만 명확성을 위해 사용을 권장합니다.
ss-<영역>-<서비스/기능>-<프레임워크>-<언어>
| 구성 요소 | 설명 | 예시 |
|---|---|---|
ss- |
접두사: SS 시리즈에 속한 레포지토리임을 나타냅니다. | ss- |
<영역> |
Domain: 서비스의 큰 분류입니다. | front, back, data, infra |
<서비스/기능> |
Service/Feature: 마이크로서비스의 이름 및/또는 특정 기능입니다. | boilerplate, auth, permission |
<프레임워크> |
Framework: 프로젝트에서 사용하는 주요 프레임워크입니다. | next, spring, nest |
<언어> |
Language: (선택 사항) 주로 사용하는 프로그래밍 언어입니다. | ts, java, js, go, py |
- 영역:
front - 서비스/기능:
boilerplate - 프레임워크:
next - 언어:
ts
- 영역:
back - 서비스/기능:
auth - 프레임워크:
spring - 언어:
java
- 영역:
back - 서비스/기능:
permission - 프레임워크:
nest - 언어:
ts
todo: 통합해서 올려주는 repo 만들기 내용 추가