Skip to main content

Fantasy Names

A Python project dedicated to generating names from various bits of fantasy

Code style: black

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

  • Anadi
  • Android
  • Automaton
  • Azarketi
  • Catfolk
  • Conrasu
  • Dhampir
  • Dwarf
  • Elf
  • Fetchling
  • Fleshwarp
  • Ghoran
  • Gillman
  • Gnoll
  • Gnome
  • Goblin
  • Goloma
  • Grippli
  • Halfling
  • Hobgoblin
  • Human
  • Ifrit
  • Kashrishi
  • Kitsune
  • Kobold
  • Leshy
  • Lizardfolk
  • Merfolk
  • Nagaji
  • Orc
  • Oread
  • Poppet
  • Ratfolk
  • Shisk
  • Shoony
  • Skeleton
  • Sprite
  • Strix
  • Suli
  • Sylph
  • Tengu
  • Tian
  • Undine
  • Vanara
  • Vishkanya

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

Release files for FantasyNameGenerator 0.0.6

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for FantasyNameGenerator 0.0.6
File Size Uploaded
fantasynamegenerator-0.0.6.tar.gz 184.7 kB Details

Release files / fantasynamegenerator-0.0.6.tar.gz

Download URL fantasynamegenerator-0.0.6.tar.gz
Size 184.7 kB
Tags Source
SHA-256 checksum
How to use checksums
5485084725cbaceb0a7a1959edc2a0243873d0e1cb8841718990107e7e848f70
BLAKE2b-256 checksum
How to use checksums
7c0e5c0c00e87a792f6abd872e60abe69d92ea370f198d4abab927dc18f5ca43
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.14.3

Release history Release notifications | RSS feed

This release

0.0.6 This release

1 release file

0.0.5

1 release file

0.0.4

1 release file

0.0.2

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page