Logo Muuuh Nature and Wildlife Documentaries

MUUUH

Nature Documentaries

MEL - App Architecture

MEL is built using modern iOS development practices with SwiftUI and follows clean architecture principles for maintainable, reliable data collection.

Data Models

Core Entities

Relationships

State Management

CollectionManager

AppState

Data Flow

Collection Lifecycle

  1. Create/Resume → CollectionManager context set (and optional item pre-creation).
  2. Modify → User actions update state; autosave every 5s if recording.
  3. Stop/Save → Persist via FileManagerService.saveCollection.
  4. Export → Convert to JSON/Markdown/Text and share.

Session Management

  1. Start → Create startEvent and current item; begin timers.
  2. Record → logEvent(type:) captures timestamps; counts A/B/C.
  3. Stop → Add stopEvent; save to file; clear item state.

Note Management

  1. Create → Build CollectionItem without events.
  2. Edit → Update title/description/timestamp/location; persist.
  3. Delete → Remove from collection; persist.

UI Architecture

SwiftUI Patterns

View Hierarchy (current)

Key UI Concepts

External Services

FileManagerService

DateFormatterService

CoreLocation

File Structure

Core

Collections

Assets

Technical Decisions

Architecture

Performance

Security & Privacy

Development Notes

Dependencies