Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Genrate usernames with a Markov chain based on a wordlist

Project Description
# usernamegen
> Genrate usernames with a Markov chain based on a wordlist

[![Build Status](https://travis-ci.org/stylesuxx/usernamegen.svg?branch=master)](https://travis-ci.org/stylesuxx/usernamegen) [![Downloads](https://img.shields.io/pypi/dm/browserinfo.svg)](https://img.shields.io/pypi/dm/usernamegen.svg) [![Documentation Status](https://readthedocs.org/projects/usernamegen/badge/?version=latest)](http://sync.readthedocs.io/?badge=latest)

## Wordlist
In order to get the most out of the word generation, make sure that you have one word per line, all lower case.

## Installation
Simply install via pip:

pip install usernamegen

## Usage
### Library
You can use the usernamegen directly in your python application.
```bash
>>> import usernamegen
>>> words = ['foo', 'foobar', 'foobarbla', 'foobarblafasel']
>>> formatters = [{'format': usernamegen.Formatter.Join, 'weight': 1}]
>>> minLength = 8
>>> size = 3
>>> gen = usernamegen.Generator(words, size, minLength)
>>> gen.setFormatters(formatters)
>>> gen.getString()
'foobarfoobarblafasel'
```

When multiple formmatters are used, the heigher the weight of a formatter the more likely it is, that it is used.

The following formatters are available:

* Join
* Underscore
* Capitalize
* CapitalizeExceptFirst
* AppendNumber
* CapitalizeAppendNumber

### Scripts
After installation there will be two script available:

#### markov
```bash
usage: markov [-h] [-p PREV] [-n N] WORDLIST

Markov chain word generator. Generate new words based on aword list.

positional arguments:
WORDLIST Path to wordlist used for word generation

optional arguments:
-h, --help show this help message and exit
-p PREV Number of previous letters to base chain on
-n N Amount of new words to generate
```

#### username
```bash
usage: username [-h] [-p PREV] [-n N] [-m MIN] WORDLIST

Generate usernames based on a wordlist and a Markov chain.

positional arguments:
WORDLIST Path to wordlist used for word generation

optional arguments:
-h, --help show this help message and exit
-p PREV Number of previous letters to base chain on
-n N Amount of new words to generate
-m MIN Minimum username length
```

## Running tests
```bash
nosetests --with-coverage --cover-package=usernamegen --with-json-extended
```

## Generating Documentation
```bash
sphinx-apidoc -o docs/source usernamegen -f
cd docs && make html && cd ..
```
Release History

Release History

This version
History Node

0.1.1

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
usernamegen-0.1.1.tar.gz (4.7 kB) Copy SHA256 Checksum SHA256 Source Sep 25, 2016

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting