Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ngapp-dev/phototime
Android app built entirely with Kotlin and Jetpack Compose. It follows Android design and development best practices and is intended to be a useful reference for developers.
https://github.com/ngapp-dev/phototime
Last synced: 7 days ago
JSON representation
Android app built entirely with Kotlin and Jetpack Compose. It follows Android design and development best practices and is intended to be a useful reference for developers.
- Host: GitHub
- URL: https://github.com/ngapp-dev/phototime
- Owner: ngapp-dev
- License: apache-2.0
- Created: 2024-02-03T19:25:57.000Z (10 months ago)
- Default Branch: master
- Last Pushed: 2024-02-21T20:53:50.000Z (9 months ago)
- Last Synced: 2024-02-21T22:35:42.992Z (9 months ago)
- Language: Kotlin
- Size: 12.1 MB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
📷 Photo time App 📷
=====================This is the repository for the [Photo time app](https://github.com/ngapp-dev/photo-time)
app. This app is made based on the famous application [Now in Android](https://developer.android.com/series/now-in-android).
It is also a **work in progress** 🚧.**Photo time** is a half functional with a lot of bugs Android app built entirely with Kotlin and Jetpack Compose. It
follows Android design and development best practices and is intended to be a useful reference
for developers. As it use Now in Android app as basis, it has many common things, but even more differences.
Ultimately, the application will be able to help photography freelancers around the world plan their work,
create their own social network of friends, colleagues and find interesting places for inspirationThe app is currently in development by only one developer [NGApps](https://github.com/ngapp-dev).
# Features
**Photo time** displays content from the demo source, it has hardcoded data, which helps to show UI.
The user can move between screens and explore the functionality.
Full functionality and backend are under development. To follow Offline first principle, the application uses
the [Push-based synchronization](https://developer.android.com/topic/architecture/data-layer/offline-first) method.## Screenshots
# Development Environment
**Photo time** uses the Gradle build system and can be imported directly into Android Studio (make sure you are using the latest stable version available [here](https://developer.android.com/studio)).
Change the run configuration to `app`.
The `demoDebug` and `demoRelease` build variants can be built and run (the `prod` variants use a backend server which is not currently publicly available).
# Architecture
The **Photo time** app follows the
[official architecture guidance](https://developer.android.com/topic/architecture)
and is described in detail in the
[architecture learning journey](docs/ArchitectureLearningJourney.md).# Modularization
The **Photo time** app has been fully modularized and you can find the detailed guidance and
description of the modularization strategy used in
[modularization learning journey](docs/ModularizationLearningJourney.md).# Build
The app contains the usual `debug` and `release` build variants.
`app-pt-catalog` is a standalone app that displays the list of components that are stylized for
**Photo time**.The app also has such flavors as `demo` and `paid`
# UI
The app was designed using [Material 3 guidelines](https://m3.material.io/).The Screens and UI elements are built entirely using [Jetpack Compose](https://developer.android.com/jetpack/compose).
By default the app works in Light or Dark dome
The app uses adaptive layouts to
[support different screen sizes](https://developer.android.com/guide/topics/large-screens/support-different-screen-sizes).Find out more about the [UI architecture here](docs/ArchitectureLearningJourney.md#ui-layer).
# Performance
## Benchmarks
Not yet configured
## Baseline profiles
Not yet configured
# License
**Photo time** is distributed under the terms of the Apache License (Version 2.0). See the
[license](LICENSE) for more information.