A name generator from various worlds of fantasy
Project description
Fantasy Names
A Python project dedicated to generating names from various bits of fantasy
Installation
pip
Install FantasyNameGenerator as a package with pip using this command:
pip install FantasyNameGenerator
Source
Install FantasyNameGenerator as a package from source using this command while in the home directory
pip install .
Usage
The main use case for this application is to generate a random name for something. Since this project offers many different types of generators, the main formula for these follows this pattern:
from FantasyNameGenerator.<Category> import <Thing>
Examples
Town Name Generator
from FantasyNameGenerator.Stores import Town
print(Town())
var = Town()
for name in Town():
print(name)
Weapon Name Generator
from FantasyNameGenerator.Items import Weapon
print(Weapon())
var = Weapon()
for name in Weapon():
print(name)
Dungeon's & Dragons Aasimer Name
from FantasyNameGenerator.DnD import Aasimer
print(Aasimer())
var = Aasimer()
for name in Aasimer():
print(name)
Pathfinder Human Male Name
from FantasyNameGenerator.Pathfinder import Human
print(Human.generate(Human.HumanType.Male))
var = Human.generate(Human.HumanType.Male)
for name in Human():
print(name)
Generators
There are a few name generators included with this repo. Here are the main categories and what they contain:
Stores
- Antique
- Book
- Children
- Drama
- Fiction
- Horror
- Humor
- Mystery
- Non-fiction
- Romance
- Sci-Fi
- Tome
- Clothes
- Enchanter
- Alchemist
- Restaurant
- Tavern
- Diner
- French
- Jeweller
- Blacksmith
- General
- Town
- Brothel
- Gunsmith
- Guild
Items
- Relic
- Armor
- Book
- Potion
- Jewel
- Other
- Weapon
- Axe
- Bow
- Dagger
- Hammer
- Mace
- Spear
- Sword
Pathfinder Races
- Coming Soon
Dungeons & Dragons Races
Note: Accessing this library in the package uses the preface DnD
for simplicity.
- Aarakocra
- Aasimer
- Bugbear
- Centaur
- Changeling
- Dragonborn
- Drow
- Duergar
- Dwarf
- Elf
- Fetchling
- Firbolg
- Genasi
- Gith
- Gnome
- Goblin
- Goliath
- Halfling
- Hobgoblin
- Human
- Half-Elf
- Half-Orc
- Kalashtar
- Kenku
- Kobold
- Lizardfolk
- Loxodon
- Minotaur
- Orc
- Shifter
- Simic Hybrid
- Svirfneblin
- Tabaxi
- Tiefling
- Tortle
- Triton
- Vedalken
- Warforged
- Yuan-ti
Contributing
All are suggestions are welcome, and any additions you'd wish to make should be made as a Pull Request to the master branch. There are a few things you need to do prior to making a pull request:
Pull Request Checklist
- Unit test coverage added
- Black code format
Unit Test Coverage
This project uses pytest integrated with Tox to run unit tests.
To run unit test coverage make sure you have Tox installed, and then run the following command:
tox
Tox runs 4 different versions of python to ensure backwards capability, 3.8, 3.9, 3.10, & 3.11. To run these make sure you have the appropriate version of python installed.
Black code formatting
This project is formatted automatically with Black.
Prior to making a pull request, please format your code using the follow command:
black --line-length=120 .
Build Pipeline
Build Tarball
python -m build --sdist .
Publish via Twine
python -m twine upload dist/FantasyNameGenerator-<Version #>.tar.gz
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file FantasyNameGenerator-0.0.4.tar.gz
.
File metadata
- Download URL: FantasyNameGenerator-0.0.4.tar.gz
- Upload date:
- Size: 142.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6c227db1965e42512d07e6051927cd5e6cd6179b87a74d69dcc1db4d02a508be |
|
MD5 | b1698ef114496da916ebc05ca14d927b |
|
BLAKE2b-256 | 446f5232971fa42395c1429ad2b67d7b5d28523f92c73aea37b94c1610d90e1a |