Rust library to generate suitably random and reasonably unique human readable (and fairly adorable) ids, ala GiphyCat
This crate is on crates.io and can be
used by adding adjective_adjective_animal
to your dependencies in your project's Cargo.toml
file:
toml
[dependencies]
adjective_adjective_animal = "0.1.0"
and this to your crate root:
rust
extern crate adjective_adjective_animal;
The easiest way to get started is to use the default Generator
to return
a name:
```rust use adjectiveadjectiveanimal::Generator;
fn main() { let mut generator = Generator::default(); println!("Your project is: {}", generator.next().unwrap()); // #=> "Your project is: IndustrialSecretiveSwan"
}
```
If you would rather supply your own custom adjective and animal word lists, you can provide your own by supplying 2 string slices. For example, this returns only one result:
``` use adjectiveadjectiveanimal::Generator;
fn main() { let adjectives = &["Imaginary"]; let animals = &["Bear"]; let mut generator = Generator::new(adjectives, animals);
assert_eq!("ImaginaryImaginaryBear", generator.next().unwrap());
} ```
curl 'https://raw.githubusercontent.com/a-type/adjective-adjective-animal/master/lib/lists/animals.js' | grep -Eo '"[^"]+"' | tr -d '"' | tr '[:upper:]' '[:lower:]' | sed 's/.*/\u&/' | sort | uniq > animals.txt
curl 'https://raw.githubusercontent.com/a-type/adjective-adjective-animal/master/lib/lists/adjectives.js' | grep -Eo '"[^"]+"' | tr -d '"' | tr '[:upper:]' '[:lower:]' | sed 's/.*/\u&/' | sort | uniq > adjectives.txt