I'm a big fan of reading, especially high fantasy. Which means I'm also a big fan of Robert Jordan's masterpiece, The Wheel of Time! One of my friends often jokes that I'm her personal library on the series as she often quizes me about absure topics from the books. I LOVE these books.
Which brings us to this project, which I've decided to call Rand Name. (get it?) I'd been wanting to make an API for a while but I couldn't decide what to make. I really like the Random User Generator API so I wanted to take some inspiration from that. After completing another readthrough of Wheel of Time, I was considering how many characters were in the series and it hit me! Since I have a habit of using Wheel of Time names as test data anyways, what if there were a generator to pick them for me!
All that was left was to compile a list of character names. Luckily, u/JaimTorfinn shared a list of characters that actually appear (as opposed to just mentioned) in the books in a Reddit post. All I had to do was prepare and then ingest that data. Currently I only added the names, but I plan to add more. Perhaps Ajah, for applicable characters, and maybe some made up addresses. Ideally I'd like the data to be usable in practical situations... pretty soon ALL of my tests will be filled with characters from Rand Land.
Middle names... They're not big on middle names in the Third Age. Thus there's only 163 characters (in this dataset) with middle names. Most of them are Atha'an Miere with names like Jorin din Jubai White Wing. It seems that their names are structured using nobiliary particles. As a result of the way I parsed the character list, Jorin's name is listed in the database as first_name: Jorin, middle_name: din Jubai White, last_name: Wing. This is, of course, not a correct interpretation of the name. I left it alone since there are already so few entries with middle names but I may go back and clean it up to make all of the Atha'an Miere middle names 'din' and shift the rest of it over to the last name. I still believe this would be incorrect but it would look better when parsing the data and it would still allow them to contribute to the short list of names with middle names.
In December of 2023, u/JaimTorfinn (the Reddit user who shared the dataset I initially used for this API) recommended in a comment I use a better one of their datasets. After adjusting the way I processed the data import functionality, I was able to expand the names list and add a new field: Title! From this point on, the names list will be more complete and include titles like "High Lord" and "Queen."
With this new list, I used the alphabetical names which list titles/honorifics like "Queen" and "Mistress" after a comma. However, some of the names themselves are complete titles, such as "Daughter of the Nine Moons." My title filter was designed to filter out titles based on the presence of a comma like "Admira , Master." If the full name in the dataset was a title in and of itself, it probably slipped through the cracks. So prepare yourself for names like "Daughter" | "of the Nine" | "Moons"
.
For now the API can be accessed via:
https://www.cjglitter.com/rand_name/api
The results will look like this:
{
"results": [
{
"name": {
"title": null,
"first_name": "Piqor",
"middle_name": null,
"last_name": "Ramshalan"
}
}
]
}
The content on this page and the referenced API may include references to copyrighted material, including but not limited to The Wheel of Time series and its characters. All such references are the property of their respective owners. The "Wheel of Time" series and its characters are the intellectual property of Robert Jordan and Brandon Sanderson. We acknowledge and respect the creative work of Robert Jordan and Brandon Sanderson and encourage everyone to support the official release of their works.
The use of these materials is for informational and educational purposes only, and it is protected under the principle of fair use.
If you believe that any content on this website infringes on your copyright, please contact us at CONTACT_FORM_COMING_SOON, and we will promptly address your concerns.
Thank you for understanding and respecting intellectual property rights.