diff --git a/README.md b/README.md index 1fa1add..843d87c 100644 --- a/README.md +++ b/README.md @@ -5,136 +5,102 @@ 서울 도심 주요 집회 장소의 **실시간 혼잡도**와 **교통 통제 정보**를 제공하는 Android 애플리케이션입니다. ## 📌 주요 기능 -- **실시간 혼잡도 조회**: 주요 집회 장소의 혼잡도를 실시간으로 확인할 수 있습니다. -- **교통 통제 정보 제공**: 서울 도심 내 교통 통제 구간 및 우회 경로를 안내합니다. -- **위치 기반 서비스**: 사용자의 현재 위치를 기반으로 가까운 주요 집회 장소의 혼잡도를 확인할 수 있습니다. -- **사용자 맞춤 알림**: 관심 지역의 혼잡도 변화를 알림으로 받을 수 있습니다. +- **실시간 혼잡도 조회**: 서울시 주요 집회 장소 5곳의 혼잡도와 날씨를 실시간으로 확인할 수 있습니다. +- **교통 통제 정보 제공**: 서울 도심 내 교통 통제 구간 정보를 실시간으로 안내합니다. +- **집회 정보 제공**:서울경찰청의 오늘의 집회 정보를 크롤링하여 캘린더에서 일정과 상세 내용을 확인합니다. ## 👩‍💻 Front-End 팀원 - -
+ - nhyeonii 프로필 사진 -
김나현 + nhyeonii 프로필 사진 +
김나현
-
숙명여자대학교 소프트웨어융합 +
숙명여자대학교 +
소프트웨어융합 +
- gaeulzzang 프로필 사진 -
이가을 + gaeulzzang 프로필 사진 +
이가을
-
숙명여자대학교 컴퓨터과학과 +
숙명여자대학교 +
컴퓨터과학과
+ - jjwm10625 프로필 사진 -
조영서 + jjwm10625 프로필 사진 +
조영서
-
숙명여자대학교 컴퓨터과학과 +
숙명여자대학교 +
컴퓨터과학과
+ + + ## 🛠 기술 스택 - **언어**: Kotlin - **프레임워크**: Jetpack Compose - **아키텍처**: 클린 아키텍처 (Clean Architecture) -- **백엔드**: Spring Boot -- **지도 API**: Google Maps API -- **데이터베이스**: Firebase / PostgreSQL +- **지도 API**: Naver Maps API - **버전 관리**: Git, GitHub ## 📌 프로젝트 소개 -| 화면 | 설명 | -|------|------| -| ![스플래시 화면](이미지_경로) | 앱 실행 시 로고 및 초기 로딩 화면 | -| ![메인 지도 화면](이미지_경로) | 서울 도심 지도와 실시간 혼잡도를 제공 | -| ![지도 칩 클릭 시 화면](이미지_경로) | 특정 지역 선택 시 혼잡도 및 교통 통제 정보 표시 | -| ![상세 페이지 화면](이미지_경로) | 선택된 지역의 상세 정보 및 예상 혼잡도 분석 제공 | -| ![캘린더 화면](이미지_경로) | 날짜별 예상 혼잡도를 확인할 수 있는 화면 | +| | | | +|:---------:|:--------------------------------------------------------------------------------------------:|:--------------------------------------------------------------------------------------------:| +| 앱 실행 시 로고 및 초기 로딩 화면 | 서울 도심 지도와 실시간 혼잡도 제공 | 특정 지역 선택 시 혼잡도 정보 표시 | + +| | | | +|:--------------------------------------------------------------------------------------------:|:---------:|:--------------------------------------------------------------------------------------------:| +| 선택된 교통 통제 정보 표시 | 선택된 지역의 상세 정보 및 실시간 날씨 제공 | 날짜별 집회 일정 제공 | + + + + ## 📂 프로젝트 구조 ``` -CrowdZero-Android -│── app (Presentation Layer) -│ ├── di # 의존성 주입 모듈 -│ ├── main # 메인 액티비티 및 네비게이션 관리 -│ ├── navigation # 화면 이동 로직 관리 -│ ├── ui # UI 관련 코드 -│ ├── viewmodel # ViewModel 및 상태 관리 +📦 CrowdZero-Android +│── 📁 app (Presentation Layer) +│ ├── 📁 di +│ ├── 📁 main +│ ├── 📁 navigation │ -│── core (Core Layer) -│ ├── designsystem # UI 디자인 시스템 및 컴포넌트 -│ ├── extension # 확장 함수 -│ ├── navigation # 공통 네비게이션 로직 -│ ├── state # UI 상태 관리 -│ ├── util # 공통 유틸리티 +│── 📁 core (Core Layer) +│ ├── 📁 designsystem +│ │ ├── 📁 component +│ │ └── 📁 theme +│ ├── 📁 extension +│ ├── 📁 navigation +│ ├── 📁 state +│ ├── 📁 type +│ ├── 📁 util │ -│── data (Data Layer) -│ ├── datasource # 원격 및 로컬 데이터 소스 -│ ├── datasourceimpl # 데이터 소스 구현체 -│ ├── dto # 데이터 전송 객체 -│ ├── mapper # 데이터 변환 매퍼 -│ ├── repositoryimpl # 데이터 저장소 구현체 +│── 📁 data (Data Layer) +│ ├── 📁 datasource +│ ├── 📁 datasourceimpl +│ ├── 📁 dto +│ │ ├── 📁 request +│ │ └── 📁 response +│ ├── 📁 mapper +│ ├── 📁 repositoryimpl +│ ├── 📁 service │ -│── domain (Domain Layer) -│ ├── entity # 비즈니스 도메인 모델 -│ ├── repository # 인터페이스 및 비즈니스 로직 +│── 📁 domain (Domain Layer) +│ ├── 📁 entity +│ ├── 📁 repository │ -│── feature (Feature Modules) -│ ├── map # 지도 탭 -│ ├── calendar # 집회 일정 탭 -│ ├── detail # 장소 상세 화면 -│ ├── example # 예제 화면 +│── 📁 feature (Feature Modules) +│ ├── 📁 calendar +│ ├── 📁 detail +│ ├── 📁 map │ -├── build.gradle.kts -├── README.md -└── .gitignore +└── 📄 build.gradle.kts ``` - -## 📱 주요 화면 구성 -1. **스플래시 화면**: 앱 실행 시 로고 및 초기 로딩 화면 -2. **메인 지도 화면**: 서울 도심 지도와 실시간 혼잡도를 제공 -3. **지도 칩 클릭 시 화면**: 특정 지역 선택 시 혼잡도 및 교통 통제 정보 표시 -4. **상세 페이지 화면**: 선택된 지역의 상세 정보 및 예상 혼잡도 분석 제공 -5. **캘린더 화면**: 날짜별 예상 혼잡도를 확인할 수 있는 화면 - -## 🚀 설치 및 실행 방법 -1. **프로젝트 클론** - ```bash - git clone https://github.com/Team-CrowdZero/CrowdZero-Android.git - cd CrowdZero-Android - ``` -2. **Android Studio에서 프로젝트 열기** -3. **필요한 API Key 설정** (Google Maps API, Firebase 등) -4. **앱 실행** - - Android Studio에서 `Run` 버튼 클릭 - - 또는 `Gradle` 빌드를 사용하여 실행 - -## 📌 기여 가이드 -1. 이슈를 확인하고 작업할 사항을 선택합니다. -2. 새로운 브랜치를 생성합니다. - ```bash - git checkout -b feature/기능명 - ``` -3. 개발 후 커밋합니다. - ```bash - git add . - git commit -m "[Feat] 기능 설명" - ``` -4. 원격 저장소에 푸시합니다. - ```bash - git push origin feature/기능명 - ``` -5. PR(Pull Request)을 생성하고 코드 리뷰 후 병합합니다. - -## 📞 연락처 -- **GitHub**: [Team-CrowdZero](https://github.com/Team-CrowdZero) - ---- - -<혼잡제로>는 서울 도심 내 집회 및 교통 혼잡도를 줄이는 데 기여하고자 합니다. 많은 관심과 기여 부탁드립니다! 🙌