Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/depromeet/swimie-server
πββοΈ μΉκ΅¬λ€μ μμκ³Ό ν¨κ»νλ μμμΌκΈ°, Swimie!
https://github.com/depromeet/swimie-server
generative-ai hexagonal-architecture java jenkins multi-module mysql redis sentry spring-boot
Last synced: 3 days ago
JSON representation
πββοΈ μΉκ΅¬λ€μ μμκ³Ό ν¨κ»νλ μμμΌκΈ°, Swimie!
- Host: GitHub
- URL: https://github.com/depromeet/swimie-server
- Owner: depromeet
- Created: 2024-06-21T13:34:23.000Z (6 months ago)
- Default Branch: develop
- Last Pushed: 2024-11-26T14:22:16.000Z (about 1 month ago)
- Last Synced: 2024-11-26T15:28:10.529Z (about 1 month ago)
- Topics: generative-ai, hexagonal-architecture, java, jenkins, multi-module, mysql, redis, sentry, spring-boot
- Language: Java
- Homepage: https://swimie.life
- Size: 9.19 MB
- Stars: 20
- Watchers: 3
- Forks: 2
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
## π Swimie | μΉκ΅¬λ€μ μμκ³Ό ν¨κ»νλ μμμΌκΈ°
![frame](./docs/design/frame.png)## ποΈ Architecture
### Infrastructure
![infrastructure](./docs/architecture/infrastructure.png)### Software Architecture (Hexagonal)
![hexagonal](./docs/architecture/hexagonal.png)
## π Module & Directory Structure
### Directory Structure
```
βββ .github
βββ module-presentation # API κ²μ΄νΈμ¨μ΄ μλ²
βββ module-batch # λ°°μΉ μλ²
βββ module-independent # λ 립 λͺ¨λ
βββ module-domain # λλ©μΈ λͺ¨λ
βββ module-infrastructure # μΈλΆ λͺ¨λ
β βββ persistence-database # λ°μ΄ν°λ² μ΄μ€ λͺ¨λ
β βββ persistence-redis # Redis λͺ¨λ
β βββ object-storage # κ°μ²΄ μ μ₯μ λͺ¨λ
β βββ google-spreadsheet # κ΅¬κΈ μ€νλ λμνΈ λͺ¨λ
βββ docs # λ°μ΄ν° κ΄λ¦¬μ© ν΄λ
```### Multi Module Structure
- λ©ν° λͺ¨λκ³Ό ν₯μ¬κ³ λ μν€ν μ²λ₯Ό μ μ©νμ¬ λͺ¨λ κ° μμ‘΄μ±μ λΆλ¦¬νμμ΅λλ€.
- Domain λͺ¨λμ μμ μλ° λͺ¨λλ‘ κ΅¬μ±λμ΄ μμΌλ©°, μΈλΆ μμ‘΄μ±μ κ°μ§μ§ μμ΅λλ€.
- κ° λͺ¨λμ Domain λͺ¨λμ λν μμ‘΄μ±μ κ°μ§κ³ μμΌλ©°, μμ λͺ¨λμ νμ λͺ¨λλ§μ μμ‘΄νλλ‘ μ€κ³νμμ΅λλ€.
## π How to start?
- presentation λͺ¨λ(API κ²μ΄νΈμ¨μ΄ μλ²)μ μ€ννκΈ° μν΄μλ λ©μΈ λλ ν 리μμ `./gradlew :module-presentation:build` λͺ λ Ήμ΄λ₯Ό μνν©λλ€.
- `java -jar /module-presentation/build/libs/module-presentation.jar` λͺ λ Ήμ΄λ₯Ό ν΅ν΄ μλ²λ₯Ό μ€νν©λλ€.## π» Tech Stack
- Java 21
- Gradle 8.8
- MySQL 8.0.35#### Framework
#### Database
#### Auth -
#### Business Logic Test -
#### Performance Test -
#### Cloud -
#### Monitoring -
## π Database Schema
![ERD](./docs/database/ERD.png)
## Developers
### π§βπ» Server Engineers
| μ λ―Όμ² | νμ±μ£Ό | μμμ± |
|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|
|
|
|
|