GithubHelp home page GithubHelp logo

sakethpathike / jetspacer Goto Github PK

View Code? Open in Web Editor NEW
6.0 1.0 0.0 895 KB

An Android client that merges multiple space-related APIs into a single, simple application. Built with Jetpack Compose and Kotlin.

License: MIT License

Kotlin 92.36% Java 7.64%
jetpack-compose kotlin kotlin-android kotlin-coroutines kotlin-flows mvvm-architecture pagination room-database

jetspacer's Introduction

JetSpacer

JetSpacer is an android client that merges multiple space-related APIs including NASA's APOD and Mars Rover's API into a single, simple application with a good UI.

  • As this project is meant as a "client," you can change API keys within the app.

Tech Stack

  • Kotlin - The app is completely written in Kotlin

  • Jetpack Compose - Jetpack Compose is used to write the UI, making it a completely Jetpack Compose-based project

  • Material 3 - Used for building the UI with existing components provided by the library

  • Ktor-client - Used to make HTTP requests to the respective APIs

  • Room - Used for local database

  • Kotlin Coroutines - Used for managing background tasks

  • Kotlin Flows - Used for handling asynchronous data streams

  • Kotlinx Serialization - Used for deserializing API responses.

  • Coil - Used for loading images and Architecture Components such as DataStore, Navigation, ViewModel are also used to make this app alive!

  • "JetSpacer" uses the MVVM architecture concept to keep code organised and separate business logic from the UI.

Screenshots

Home Screen Space Screen News Screen
Screenshot_2023_02_02_16_59_09_74_a723baeefcc773b465b5b84fb7477d54 Screenshot_2023_02_02_16_58_08_73_a723baeefcc773b465b5b84fb7477d54 Screenshot_2023_02_03_23_09_27_08_a723baeefcc773b465b5b84fb7477d54
Bookmarks Screen
Screenshot_2023_02_02_17_11_47_18_a723baeefcc773b465b5b84fb7477d54
Other Screens
Screenshot_2023_02_02_17_00_09_58_a723baeefcc773b465b5b84fb7477d54
Screenshot_2023_02_02_17_02_03_54_a723baeefcc773b465b5b84fb7477d54
Screenshot_2023_02_02_17_02_14_97_a723baeefcc773b465b5b84fb7477d54
Screenshot_2023_02_02_17_03_21_48_a723baeefcc773b465b5b84fb7477d54
Screenshot_2023_02_02_22_12_50_95_a723baeefcc773b465b5b84fb7477d54

GitHub Releases

The latest stable release of JetSpacer is available on GitHub Releases. You can download the APK file from there; or click here

Known Issues

  • Certain UI elements are not optimized for different screen sizes
  • The UI implementation of the NASA video APOD Card requires improvement

Upcoming Updates

  • Option to manually select the theme, instead of referring to system settings by default
  • Improved user interface for better user experience
  • Optimization of UI elements for different screen sizes
  • Search and sorting options in bookmarks
  • Caching wherever possible
  • New UI for Bookmarks, Settings, News, Home Screen(s)
  • New section for exploring few selected space related subreddit(s)
  • Max usage of News-API (as of now, app only retrieves Top-Headlines)

Note: This project is in active development and new features and improvements will be added over time.

License

MIT License

Copyright (c) 2023 Saketh Pathike

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

jetspacer's People

Contributors

sakethpathike avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

jetspacer's Issues

IP-adress related info not loading

Not sure why, but the data/ui relating to the IP address is not loading. I'm on a ipv4 + ipv6 network, so I should have both available, but maybe it's having some issues relating to that? I tried both with my wifi and my mobile data.

Screenshot_2023-04-05-23-49-57-59_a723baeefcc773b465b5b84fb7477d54

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.