# choa1110/oro_project architecture

> Architecture diagram of the GitHub repository choa1110/oro_project, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-15). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/choa1110/oro_project
- Repository: https://github.com/choa1110/oro_project

## Overview

This repository contains a cross-platform Flutter app with a separate JavaScript backend. The app’s file names suggest a language-learning workflow spanning translation, pronunciation practice, and history, alongside account screens and customization/settings. The tree also shows platform-specific app shells. The README is empty, and no Dart excerpts or backend implementation details were provided, so the graph preserves those components without asserting their routing, API calls, or data flow. The backend’s role and connections to the app remain unverified.

Main entry points: [`my_app/lib/main.dart`](https://github.com/choa1110/oro_project/blob/master/my_app/lib/main.dart) (App entry), [`my_app/lib/screens/start.dart`](https://github.com/choa1110/oro_project/blob/master/my_app/lib/screens/start.dart) (Start screen), [`my_app/lib/screens/register_screen.dart`](https://github.com/choa1110/oro_project/blob/master/my_app/lib/screens/register_screen.dart) (Registration), [`my_app/lib/services/auth_service.dart`](https://github.com/choa1110/oro_project/blob/master/my_app/lib/services/auth_service.dart) (Auth service)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_experience["Learning experience"]
  node_translation["Translation"]
  node_pronunciation["Pronunciation practice"]
  node_history["History<br/>[history_page.dart]"]
end

subgraph group_account["Account and preferences"]
  node_start["Start screen<br/>[start.dart]"]
  node_registration["Registration"]
  node_auth["Auth service<br/>[auth_service.dart]"]
  node_customization["Customization"]
  node_settings["Settings<br/>[settings_page.dart]"]
end

subgraph group_runtime["App runtime"]
  node_app_entry["App entry<br/>[main.dart]"]
  node_platform_shells["Platform shells"]
end

subgraph group_backend["Backend"]
  node_backend_server["Backend server<br/>[server.js]"]
end

node_learner(("Learner"))

node_learner -.->|"uses"| node_app_entry
node_app_entry -.->|"may route"| node_start
node_app_entry -.->|"may route"| node_translation
node_app_entry -.->|"may route"| node_pronunciation
node_app_entry -.->|"may route"| node_history
node_app_entry -.->|"may route"| node_customization
node_app_entry -.->|"may route"| node_settings
node_start -.->|"may open"| node_registration
node_registration -.->|"may use"| node_auth
node_auth -.->|"may call"| node_backend_server
node_app_entry -.->|"hosted by"| node_platform_shells

click node_app_entry "https://github.com/choa1110/oro_project/blob/master/my_app/lib/main.dart"
click node_start "https://github.com/choa1110/oro_project/blob/master/my_app/lib/screens/start.dart"
click node_registration "https://github.com/choa1110/oro_project/blob/master/my_app/lib/screens/register_screen.dart"
click node_auth "https://github.com/choa1110/oro_project/blob/master/my_app/lib/services/auth_service.dart"
click node_translation "https://github.com/choa1110/oro_project/blob/master/my_app/lib/translation_page.dart"
click node_pronunciation "https://github.com/choa1110/oro_project/blob/master/my_app/lib/pronunciation_practice_page.dart"
click node_history "https://github.com/choa1110/oro_project/blob/master/my_app/lib/history_page.dart"
click node_customization "https://github.com/choa1110/oro_project/blob/master/my_app/lib/customization_page.dart"
click node_settings "https://github.com/choa1110/oro_project/blob/master/my_app/lib/settings_page.dart"
click node_backend_server "https://github.com/choa1110/oro_project/blob/master/my_backend/server.js"
click node_platform_shells "https://github.com/choa1110/oro_project/tree/master/my_app"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_translation,node_pronunciation,node_history toneBlue
class node_start,node_registration,node_auth,node_customization,node_settings toneAmber
class node_app_entry,node_platform_shells toneMint
class node_backend_server toneRose
class node_learner toneIndigo
```

## Components

### Learning experience

- [Translation](https://github.com/choa1110/oro_project/blob/master/my_app/lib/translation_page.dart): `my_app/lib/translation_page.dart`
- [Pronunciation practice](https://github.com/choa1110/oro_project/blob/master/my_app/lib/pronunciation_practice_page.dart): `my_app/lib/pronunciation_practice_page.dart`
- [History](https://github.com/choa1110/oro_project/blob/master/my_app/lib/history_page.dart): `my_app/lib/history_page.dart`

### Account and preferences

- [Start screen](https://github.com/choa1110/oro_project/blob/master/my_app/lib/screens/start.dart): `my_app/lib/screens/start.dart`
- [Registration](https://github.com/choa1110/oro_project/blob/master/my_app/lib/screens/register_screen.dart): `my_app/lib/screens/register_screen.dart`
- [Auth service](https://github.com/choa1110/oro_project/blob/master/my_app/lib/services/auth_service.dart): `my_app/lib/services/auth_service.dart`
- [Customization](https://github.com/choa1110/oro_project/blob/master/my_app/lib/customization_page.dart): `my_app/lib/customization_page.dart`
- [Settings](https://github.com/choa1110/oro_project/blob/master/my_app/lib/settings_page.dart): `my_app/lib/settings_page.dart`

### App runtime

- [App entry](https://github.com/choa1110/oro_project/blob/master/my_app/lib/main.dart): `my_app/lib/main.dart`
- [Platform shells](https://github.com/choa1110/oro_project/tree/master/my_app): `my_app`

### Backend

- [Backend server](https://github.com/choa1110/oro_project/blob/master/my_backend/server.js): `my_backend/server.js`

### Other components

- **Learner**

## Connections

- Learner → App entry: uses
- App entry → Start screen: may route
- App entry → Translation: may route
- App entry → Pronunciation practice: may route
- App entry → History: may route
- App entry → Customization: may route
- App entry → Settings: may route
- Start screen → Registration: may open
- Registration → Auth service: may use
- Auth service → Backend server: may call
- App entry → Platform shells: hosted by
