Skip to main content

nerva/
lib.rs

1//! # NASA Open APIs client implementations.
2//! Features light bindings for a multitude of APIs. Including:
3//! * Picture of the day -> [`apod`]
4//! * Database of Notifications, Knowledge, Information -> [`donki`]  
5//! * Jet Propulsion Laboratory -> [`jpl`]
6//! * Near Earth Objects -> [`neo`]
7//! * Tech Transfer -> [`tech`]
8//! ## Example Program
9//! ```no_run
10//! use nerva::clients::apod;
11//! use nerva::prelude::*;
12//!
13//! fn main() -> Result<(), Box<dyn std::error::Error>>
14//! {
15//!     let apod = apod::Apod::default();
16//!     let response = apod.get(params::ApodParams::default())?;
17//!     println!("{:#?}", response);
18//!     return Ok(());
19//! }
20//! ```
21
22#![feature(return_position_impl_trait_in_trait)]
23#![feature(associated_type_defaults)]
24#![feature(type_alias_impl_trait)]
25#![allow(incomplete_features)]
26#![warn(missing_docs)]
27/// API client implementations
28pub mod clients;
29/// Core abstractions
30pub mod core;
31/// Re-exports
32pub mod prelude;