This shows you the differences between two versions of the page.
|
android:proiect:2025:proiecte:tvshowfinder [2025/05/29 21:10] alexandra.moroiu |
android:proiect:2025:proiecte:tvshowfinder [2025/05/31 12:48] (current) alexandra.moroiu |
||
|---|---|---|---|
| Line 4: | Line 4: | ||
| **Name**: Moroiu Alexandra-Maria\\ | **Name**: Moroiu Alexandra-Maria\\ | ||
| - | **Group**: SSA1-C | + | **Group**: SSA1-C\\ |
| + | **Github repo**: [[https://github.com/Android-Course-UPB/project-sidereal-sky|Project link]] | ||
| Line 10: | Line 11: | ||
| ===== Introduction ===== | ===== Introduction ===== | ||
| A simple and intuitive Android application built with Jetpack Compose that helps users discover TV shows. The app uses the TV Maze API to fetch show information and provides a clean interface for browsing shows and their details. | A simple and intuitive Android application built with Jetpack Compose that helps users discover TV shows. The app uses the TV Maze API to fetch show information and provides a clean interface for browsing shows and their details. | ||
| + | |||
| ===== Main Features ===== | ===== Main Features ===== | ||
| Line 18: | Line 20: | ||
| * List of episodes organized by season | * List of episodes organized by season | ||
| - Dark/Light theme support | - Dark/Light theme support | ||
| + | |||
| + | |||
| + | ===== TV Maze API Endpoints ===== | ||
| + | |||
| + | <code> | ||
| + | GET https://api.tvmaze.com/search/shows?q={query} | ||
| + | → Search for TV shows by name. Returns matching show results. | ||
| + | |||
| + | GET https://api.tvmaze.com/shows/{id} | ||
| + | → Get detailed information about a specific show. | ||
| + | |||
| + | GET https://api.tvmaze.com/shows/{id}/episodes | ||
| + | → Get all episodes for a show, grouped by season. | ||
| + | </code> | ||
| + | |||
| + | |||
| + | |||
| Line 36: | Line 55: | ||
| - Settings Screen | - Settings Screen | ||
| * Toggle between light and dark theme | * Toggle between light and dark theme | ||
| + | |||
| + | |||
| + | ===== Architecture ===== | ||
| + | The app follows the MVVM (Model-View-ViewModel) architecture pattern: | ||
| + | |||
| + | * Model: Data classes and repository layer | ||
| + | * View: Compose UI components | ||
| + | * ViewModel: State management and business logic | ||
| + | |||
| + | The app also uses a manual dependency injection approach with an Application Container to manage dependencies. | ||
| + | |||
| + | |||
| + | |||
| + | ===== Resources ===== | ||
| + | * [[https://www.tvmaze.com/api|TV Maze API]] for providing the show data | ||
| + | * [[https://developer.android.com|Google Android Developers]] for Android tutorials | ||
| + | * [[https://developer.android.com/jetpack/compose|Jetpack Compose]] for the modern UI toolkit | ||
| + | * [[https://m3.material.io|Material 3]] for the design system | ||
| + | |||
| + | |||