Git Product home page Git Product logo

calixtoelprogramador / dailycosmos-android Goto Github PK

View Code? Open in Web Editor NEW
1.0 2.0 0.0 89.3 MB

โœจ My first app on Play Store. View as many photos as you can of the cosmos published by NASA since 1995. Create a user to save your favorites in the cloud or download them to your internal memory. ๐ŸŒŒ

Kotlin 100.00%
mvvm retrofit2 gson firebase-auth firebase-storage firebase-database room datastore dagger-hilt clean-architecture

dailycosmos-android's Introduction

๐Ÿช Dailycosmos

โœจ My first app on Play Store. View as many photos as you can of the cosmos published by NASA since 1995. Create a user to save your favorites in the cloud or download them to your internal memory. ๐ŸŒŒ. Download it here

๐Ÿ—‚ Table of Contents

General Information

It is an application that I developed personally in the summer of 2021. It took me about a month and a week to finish it. Much of the design is my own, based on Material Design metrics and recommendations. The layout was done in Figma software.

Roughly speaking, it's an application where you can browse through all the photos published by NASA about the cosmos since 1995. You can create a user or log in anonymously to create one later. Once inside, browse chronologically, with the calendar or randomly through the thousands of photos that NASA has for you. If you like one in particular, you can like it and it will be saved in the cloud. You can also download the photo to your internal memory if you wish.

So, what are you waiting for? Download it and start your journey through the cosmos.

figma_dailycosmos

Technologies used

  • Android - version 1.0.0

Features

  • ๐Ÿ‘ค Log as a guest. If you have favorite photos, when you create your user they are saved in the cloud.
  • ๐Ÿ“ฆ The explanation and title can be translated using a trained Firebase model.
  • ๐Ÿ“† Search for photos from a selected date range in the calendar.
  • โ˜ Your favorite photos are stored in the cloud.
  • ๐ŸŒ™ Dark mode available.
  • ๐ŸŒž A daily photo.
  • ๐ŸŒŸ and more!

Architecture

Screenshots

Welcome Login Register
Fist 2 3
4 5 6
Today Explore Favorites
7 8 9
10 11 12
Calendar Settings Info
13 14 15
16 17 18

Material Theming

DailyCosmos uses Material Theming to customize the appโ€™s color, typography and shape.

Setup

  • For security reasons you must add your own Firebase configuration file google-services.json with Auth, Storage, FireStore, Crashlytics and Analytics active and the NASA API access keys.
  • It is sufficient to open and run the project from Android Studio.

Usage

Project Status

Project is: in progress

Since I published it, I have not been able to make any progress in the development of this app. However, there are endless functions and features that I plan to add and polish. All this will be explained in the next section.

Room for Improvement

  • Download the image of the day in the background with Workmanager.
  • Each time a new photo is released, send a notification.
  • Remove the "Today" section and replace it with a more interesting one. Photos, news, things related to the cosmos.
  • Improve the favorites interface.
  • Make it possible for the user to edit their information, such as name, email or profile picture.
  • Enable different ways to create a user, either Google or Facebook.
  • Create the process for the user to reset their password.
  • Delete photos from the cache periodically.
  • Remove the search bar.
  • Refactor a lot of code. Add Databinding and extract all the logic from the views.
  • Clean up code.

Acknowledgements

I thank NASA for providing this information free of charge through their API.

Contact

You can send me an email or connect with me using the different options available on my home page.
email: [email protected]

dailycosmos-android's People

Contributors

calixtoelprogramador avatar

Stargazers

 avatar

Watchers

 avatar  avatar

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.