1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
//!
//! This library provides a convenient random user generator using the api from <https://randomuser.me>
//!
//! Built with [reqwest](https://docs.rs/reqwest/latest/reqwest/) and using async.
//!
//! ## Examples
//!
//! ### Generate one random user:
//! ```
//! use random_user::UserGenerator;
//!
//! #[tokio::main]
//! async fn main() {
//!     let generator = UserGenerator::new();
//!
//!     let user = generator
//!         .fetch_one()
//!         .await
//!         .expect("Error fetching random user");
//!
//!     println!("{:#?}", user);
//! }
//! ```
//!
//! ### Generate multiple random users with filters:
//! ```
//! let generator = UserGenerator::new();
//! // Get 5 Austrialian women with complex passwords
//! let users = generator
//!     .get()
//!     .gender(Gender::Female)
//!     .nationality(Nationality::Australian)
//!     .password("upper,lower,special,12-24")
//!     .fetch(5)
//!     .await?
//!
//! for user in users {
//!     println!("Name: {}, Password: {}", user.name.first, user.login.password);
//! }
//!

mod generator;
mod types;

pub use types::*;
pub use generator::UserGenerator;