Coder Social home page Coder Social logo

rumaan / nasa_apod_flutter Goto Github PK

View Code? Open in Web Editor NEW
9.0 4.0 6.0 2.29 MB

Flutter App that shows NASA Astronomical Picture of the day (APOD)

Kotlin 0.77% Swift 0.90% Objective-C 0.08% Dart 92.49% Ruby 5.75%
flutter dart flutter-app flutter-bloc-pattern hacktoberfest nasa-api apod

nasa_apod_flutter's Introduction

NASA Astronomical Picture of the Day (APOD)

A simple Flutter Application that shows a list of Astronomical Pictures in chronological order fetched from NASA APOD API ๐Ÿš€๐Ÿ›ฐ

Screenshots

Home and Details Page

Getting Started

Make sure you grab the API_KEY from NASA API.
After you have obtained the api key. Create a new file called api_key.json in assets/ directory.
Copy & paste the following lines into it and make sure to replace the key with your API_KEY

{
    "key": "YOUR_API_KEY_HERE"
}

From here onwards its pretty straight forward. Just cd into the root directory and run flutter run to run the app on your emulator/device.

Packages Used


This Flutter app should serve as a kickstarter to many new/intermediate Flutter Devs who are willing to contribute in #hacktoberfest ๐Ÿ‘ฉโ€๐Ÿ’ป๐Ÿ‘จโ€๐Ÿ’ป

This app isn't perfect. Let's add more features and improve this ๐Ÿ˜‡

Check out the issues section and send in the PR's ๐Ÿ’›

Happy Hacktoberfest!

nasa_apod_flutter's People

Contributors

ankank30 avatar melwinlobo18 avatar rumaan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

nasa_apod_flutter's Issues

Add About section

A separate page which shows the list of all contributors for this project and of course details about Nasa API

Improve Documentation

  • Add Schema diagram of overall architecture of the app
  • Fix grammars and improve the Readme file
  • Intro about the structure and flow of the app so its easier for newcomers to go through the app flow

Download High Resolution image Feature

  • use hdurl field in the JSON response (some don't have it, so automatically download the url ones)
  • FAB in detail page does nothing as of now
  • Suggestion to make it so that on click would dispatch a background task to download the image with a confirmation dialog

Support for Dark Mode

  • Support for Switching between dark and light modes
  • Also better colours (changing the app bar/ background colour based on the image)

Handle API Failures/Errors

  • Handle Errors/Exceptions Gracefully with relevant messages
  • Support for Retries on API request fails
  • Support for Proper messages on 429 Status code (Rate limit)

Can't compile code.

I added the json file with the API key as suggested in the ReadMe. But, I still can't run the app.

These are the error messages I get.

`Compiler message:
../../../flutter/flutter/.pub-cache/hosted/pub.dartlang.org/cached_network_image-1.1.1/lib/src/cached_network_image_provider.dart:42:24: Error: The method 'CachedNetworkImageProvider.load' has fewer positional arguments than those of overridden method 'ImageProvider.load'.
ImageStreamCompleter load(CachedNetworkImageProvider key) {
^
../../../flutter/flutter/packages/flutter/lib/src/painting/image_provider.dart:403:24: Context: This is the overridden method ('load').
ImageStreamCompleter load(T key, DecoderCallback decode);
^
Target kernel_snapshot failed: Exception: Errors during snapshot creation: null
build failed.

FAILURE: Build failed with an exception.

  • Where:
    Script '/home/srihari/flutter/flutter/packages/flutter_tools/gradle/flutter.gradle' line: 780

  • What went wrong:
    Execution failed for task ':app:compileFlutterBuildDebug'.

Process 'command '/home/srihari/flutter/flutter/bin/flutter'' finished with non-zero exit value 1

  • Try:
    Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

  • Get more help at https://help.gradle.org

BUILD FAILED in 30s
Finished with error: Gradle task assembleDebug failed with exit code 1
`

Also, these are the versions I use:

Flutter 1.12.11-pre.10 โ€ข channel master โ€ข https://github.com/flutter/flutter.git
Framework โ€ข revision 033b897be5 (3 days ago) โ€ข 2019-11-23 04:05:54 -0500
Engine โ€ข revision b6b54fd606
Tools โ€ข Dart 2.7.0

Can you help me solve this?

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.