Skip to main content

A name generator from various worlds of fantasy

Project description

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

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

fantasynamegenerator-0.0.6.tar.gz (184.7 kB view details)

Uploaded Source

File details

Details for the file fantasynamegenerator-0.0.6.tar.gz.

File metadata

  • Download URL: fantasynamegenerator-0.0.6.tar.gz
  • Upload date:
  • Size: 184.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for fantasynamegenerator-0.0.6.tar.gz
Algorithm Hash digest
SHA256 5485084725cbaceb0a7a1959edc2a0243873d0e1cb8841718990107e7e848f70
MD5 1444ccb52452bdde5c674db7bf07fff5
BLAKE2b-256 7c0e5c0c00e87a792f6abd872e60abe69d92ea370f198d4abab927dc18f5ca43

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page