Skip to content

ehdwns0814/ios_trash_map

Repository files navigation

쓰레기통 지도 앱


Table of Content

** 1️⃣ OverView**

  • 프로젝트 기간

** 2️⃣ 프로젝트 구현**

  • 프로젝트 설계
  • 사용 기술/구성
  • 프로젝트 파일 구조
  • 구현 기능
  • 구현 상세

1️⃣ OverView

📍 프로젝트 기간

2023.04.02 ~ 2024.05.26 (56days)

2️⃣ 프로젝트 구현

📍 프로젝트 설계

  • 디자인 패턴: MVVM

📍 사용 기술/구성

  • SwiftUI 기반 어플리케이션 작성
  • UIKit framework
  • Code Base UI
  • Combine

📍 프로젝트 파일 구조


├── GPX File example.xml
├── PlaceCollections-Info.plist
├── PlaceCollections.xcodeproj
│   ├── project.pbxproj
│   ├── project.xcworkspace
│   │   ├── contents.xcworkspacedata
│   │   ├── xcshareddata
│   │   │   ├── IDEWorkspaceChecks.plist
│   │   │   └── swiftpm
│   │   │       ├── Package.resolved
│   │   │       └── configuration
│   │   └── xcuserdata
│   │       └── dongjun.xcuserdatad
│   │           └── UserInterfaceState.xcuserstate
│   ├── xcshareddata
│   │   └── xcschemes
│   │       └── PlaceCollections.xcscheme
│   └── xcuserdata
│       └── dongjun.xcuserdatad
│           ├── xcdebugger
│           │   └── Breakpoints_v2.xcbkptlist
│           └── xcschemes
│               └── xcschememanagement.plist
└── PlaceColletions
    ├── App
    │   └── PlaceCollectionsApp.swift
    ├── Assets.xcassets
    │   ├── AccentColor.colorset
    │   │   └── Contents.json
    │   ├── AppIcon.appiconset
    │   │   └── Contents.json
    │   ├── BackgroundColor.colorset
    │   │   └── Contents.json
    │   ├── Contents.json
    │   ├── PlaceCollections.imageset
    │   │   ├── Contents.json
    │   │   └── PlaceCollections.png
    │   ├── PrimaryTextColor.colorset
    │   │   └── Contents.json
    │   ├── Profile.colorset
    │   │   └── Contents.json
    │   ├── SecondaryBackgroundColor.colorset
    │   │   └── Contents.json
    │   ├── facebook-sign-in-icon.imageset
    │   │   ├── Contents.json
    │   │   └── facebook-sign-in-icon.png
    │   ├── google-sign-in-icon.imageset
    │   │   ├── Contents.json
    │   │   └── google-sign-in-icon.png
    │   └── plus_photo.imageset
    │       ├── Contents.json
    │       └── plus_photo.png
    ├── ContentView.swift
    ├── Core
    │   ├── Authentication
    │   │   ├── ViewModels
    │   │   │   └── AuthViewModel.swift
    │   │   └── Views
    │   │       ├── LoginView.swift
    │   │       ├── ProfilePhotoSelectorView.swift
    │   │       └── RegistrationView.swift
    │   ├── Data
    │   │   └── SeoulTrashCan.csv
    │   ├── Home
    │   │   └── Views
    │   │       ├── HomeView.swift
    │   │       ├── MapViewActionButton.swift
    │   │       └── UberMapViewRepresentable.swift
    │   ├── LocationSearch
    │   │   ├── ViewModel
    │   │   │   └── LocationSearchViewModel.swift
    │   │   └── Views
    │   │       ├── LocationAndTrash.swift
    │   │       ├── LocationSearchActivationView.swift
    │   │       ├── LocationSearchResultCell.swift
    │   │       └── LocationSearchView.swift
    │   ├── SideMenu
    │   │   ├── ViewModel
    │   │   │   └── SideMenuOptionViewModel.swift
    │   │   └── Views
    │   │       ├── SideMenuOptionView.swift
    │   │       └── SideMenuView.swift
    │   ├── TrashType
    │   │   └── ViewModel
    │   │       └── TrashModel.swift
    │   └── Trips
    │       ├── RideRequestView.swift
    │       └── TrashView.swift
    ├── Extensions
    │   ├── Color.swift
    │   ├── Double.swift
    │   └── MKCoordinateRegion+Extensions.swift
    ├── GoogleService-Info.plist
    ├── Managers
    │   └── LocationManager.swift
    ├── Models
    │   ├── Landmark.swift
    │   ├── Location.swift
    │   ├── MapViewState.swift
    │   ├── SeoulTrashCan.swift
    │   ├── TrashType.swift
    │   └── User.swift
    ├── Preview Content
    │   └── Preview Assets.xcassets
    │       └── Contents.json
    ├── ReusableItems
    │   ├── CustomInputField.swift
    │   └── RoundedShape.swift
    ├── Services
    │   ├── ImageUploader.swift
    │   └── UserService.swift
    ├── Setting
    │   └── Views
    │       └── SettingView.swift
    ├── TrashDetailView.swift
    └── Utils
        └── ImagePicker.swift

📍 구현 기능

로그인 화면

로그인 회원가입 사이드바

지도 화면

길찾기 쓰레기통 검색
Screenshot1 Screenshot1

📍 구현 상세

  • Firebase 아이디 저장 불러오기
  • Kingfisher 프로필 이미지 설명
  • MKLocalSearchCompleter 검색 자동완성 구현
  • MKMapViewDelegate 목적지까지의 이동경로 구현

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages