Feature: Add NASA Exoplanet Query app specification

Add NASA Exoplanet Query app specification

Resolves: N/a
See also: N/a
pull/72/head
jdmedlock 6 years ago
parent bcb0768da2
commit 1312a189eb

@ -0,0 +1,62 @@
# NASA Exoplanet Query
**Tier:** 3-Advanced
Since 1992 over 4,000 exoplanets have been discovered outside our solar
system. The United States National Aeronautics and Space Administration (NASA)
maintains a publicly accessible archive of the data collected on these in
comma separated value (CSV) format.
The objective of the NASA Exoplanet Query app is to make this data available
for simple queries by its users.
### Requirements & Constraints
- The Developer should implement a means of efficiently loading the exoplanet
CSV data obtained from NASA to minimize any delays when the application starts.
- Similarly, the Developer should utilize a data structure and search mechanism
that minimizes the time required to query the exoplanet data and display the
results.
- The Developer will need to review the Exoplanet Archive documentation to
understand the format of the data fields.
## User Stories
- [ ] User can see an query input panel containing dropdowns allowing the
user to query on year of discovery, discovery method, host name, and discovery
facility.
- [ ] User can also see 'Clear' and 'Search' buttons in the query input panel.
- [ ] User can select a single value from any one or all of the query
dropdowns.
- [ ] User can click the 'Search' button to search for exoplanets matching
all of the selected query values.
- [ ] User can see an error message if the 'Search' button was clicked, but
no query values were selected.
- [ ] User can see the matching exoplanet data displayed in tabular format
in an results panel below the query panel. Only the queriable fields should
be displayed.
- [ ] User can click the 'Clear' button to reset the query selections and
clear any data displayed in the results panel, if a search had been performed.
## Bonus features
- [ ] User can see the host name as a hyperlink to NASA's Confirmed Planet
Overview Page for that planet
- [ ] User can click on the host name to display the Confirmed Planet Overview
Page in a new browser tab.
- [ ] User can see icons (such as up and down symbols) in the column headers
- [ ] User can click on the up symbol to sort the rows in the results panel
in ascending order on the values in that column.
- [ ] User can click on the down symbol to sort the rows in the results panel
in descending order on the values in the column.
## Useful links and resources
- [Big O Notation (Wikipedia)](https://en.wikipedia.org/wiki/Big_O_notation)
- [CSV2JSON](./CSV2JSON-App.md)
- [Exoplanet (Wikipedia)](https://en.wikipedia.org/wiki/Exoplanet)
- [NASA Exoplanet Archive](https://exoplanetarchive.ipac.caltech.edu/cgi-bin/TblView/nph-tblView?app=ExoTbls&config=planets)
## Example projects
N/a

@ -108,6 +108,7 @@ required to complete them.
| [Kudos Slackbot](./Projects/Kudos-Slackbot.md) | Give recognition to a deserving peer | 3-Advanced |
| [🌟Movie App](./Projects/Movie-App.md) | Browse, Find Ratings, Check Actors and Find you next movie to watch | 3-Advanced |
| [🌟MyPodcast Library](./Projects/MyPodcast-Library-app.md) | Create a library of favorite podcasts | 3-Advanced |
| [🌟NASA Exoplanet Query](./Projects/NASA-Exoplanet-Query.md) | Query NASA's Exoplanet Archive | 3-Advanced |
| [🌟Shell Game](./Projects/Shell-Game.md) | Animated shell game | 3-Advanced |
| [🌟Shuffle Deck](./Projects/Shuffle-Deck-App.md) | Evaluate different algorithms for shuffling a card deck | 3-Advanced |
| [Slack Archiver](./Projects/Slack-Archiver.md) | Archive Slack Messages | 3-Advanced |

Loading…
Cancel
Save