A fake data generator backed by fake-rs
Project description
# py-fake-rs
A fake data generator (a faker) for Python, extended with Rust.
This module contains bindings to [fake-rs](https//github.com/cksac/fake-rs),
a fake-data generator written in [Rust](https//www.rust-lang.org/).
The reason for this library is performance. When you're generating large amounts
of fake data, this library will serve you well.
## Example API
```python
from pyfakers import Name
print(Name.first_name())
print(Name.last_name())
```
## Installation
Install with pip, wheel files are provided for Linux and macOS
THIS WONT WORK YET (BUT WILL SHORTLY) pip install pyfakers
## Building from source
Install libffi, python3 headers, setuptools and wheel. The following command will install these on Ubuntu
apt-get install libffi-dev python3-dev python3-setuptools python3-wheel
Check out the repository
git clone git@github.comdowwie/pyfakers.git
cd pyfakers
In order to compile the Rust code, you'll need to have Rust nightly toolchain installed and enabled.
Use rustup to set this up, find installation instructions for rustup at https//www.rustup.rs/
To use Rust nightly, run the following commands (from the project root)
rustup update nightly
rustup override add nightly
Install the ``pipenv`` utility from pypi
pip install pipenv
Install dependencies (from the project root)
pipenv install
Launch a virtual environment (from the project root)
pipenv shell
Now you can build the package
python3 setup.py bdist_wheel
Install the wheel
pip install dist/<wheel file name>
## Full API
```python
from pyfakers import Name, Internet, Company, Address, PhoneNumber
print(Name.first_name())
print(Name.last_name())
print(Name.full_name())
print(Name.title_descriptor())
print(Name.title_level())
print(Name.title_job())
print(Name.title())
print(Internet.free_email_provider())
print(Internet.domain_suffix())
print(Internet.user_name())
print(Internet.free_email())
print(Internet.safe_email())
print(Company.suffix())
print(Company.name())
print(Company.buzzword())
print(Company.catch_phrase())
print(Company.bs())
print(Company.profession())
print(Company.industry())
print(Address.time_zone())
print(Address.city_prefix())
print(Address.city_suffix())
print(Address.street_suffix())
print(Address.state())
print(Address.state_abbr())
print(Address.city())
print(Address.street_name())
print(Address.building_number())
print(Address.street_address())
print(Address.secondary_address())
print(Address.postal_code())
print(Address.latitude())
print(Address.longitude())
print(PhoneNumber.phone_number())
```
A fake data generator (a faker) for Python, extended with Rust.
This module contains bindings to [fake-rs](https//github.com/cksac/fake-rs),
a fake-data generator written in [Rust](https//www.rust-lang.org/).
The reason for this library is performance. When you're generating large amounts
of fake data, this library will serve you well.
## Example API
```python
from pyfakers import Name
print(Name.first_name())
print(Name.last_name())
```
## Installation
Install with pip, wheel files are provided for Linux and macOS
THIS WONT WORK YET (BUT WILL SHORTLY) pip install pyfakers
## Building from source
Install libffi, python3 headers, setuptools and wheel. The following command will install these on Ubuntu
apt-get install libffi-dev python3-dev python3-setuptools python3-wheel
Check out the repository
git clone git@github.comdowwie/pyfakers.git
cd pyfakers
In order to compile the Rust code, you'll need to have Rust nightly toolchain installed and enabled.
Use rustup to set this up, find installation instructions for rustup at https//www.rustup.rs/
To use Rust nightly, run the following commands (from the project root)
rustup update nightly
rustup override add nightly
Install the ``pipenv`` utility from pypi
pip install pipenv
Install dependencies (from the project root)
pipenv install
Launch a virtual environment (from the project root)
pipenv shell
Now you can build the package
python3 setup.py bdist_wheel
Install the wheel
pip install dist/<wheel file name>
## Full API
```python
from pyfakers import Name, Internet, Company, Address, PhoneNumber
print(Name.first_name())
print(Name.last_name())
print(Name.full_name())
print(Name.title_descriptor())
print(Name.title_level())
print(Name.title_job())
print(Name.title())
print(Internet.free_email_provider())
print(Internet.domain_suffix())
print(Internet.user_name())
print(Internet.free_email())
print(Internet.safe_email())
print(Company.suffix())
print(Company.name())
print(Company.buzzword())
print(Company.catch_phrase())
print(Company.bs())
print(Company.profession())
print(Company.industry())
print(Address.time_zone())
print(Address.city_prefix())
print(Address.city_suffix())
print(Address.street_suffix())
print(Address.state())
print(Address.state_abbr())
print(Address.city())
print(Address.street_name())
print(Address.building_number())
print(Address.street_address())
print(Address.secondary_address())
print(Address.postal_code())
print(Address.latitude())
print(Address.longitude())
print(PhoneNumber.phone_number())
```
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
No source distribution files available for this release.See tutorial on generating distribution archives.
Built Distribution
File details
Details for the file pyfakers-0.1.0-py2.py3-none-manylinux1_x86_64.whl
.
File metadata
- Download URL: pyfakers-0.1.0-py2.py3-none-manylinux1_x86_64.whl
- Upload date:
- Size: 853.1 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 98c3a29bb7d962cb3c927e8f2d8e449d0b96ad7118e1ba6943c7c853d4d4fbb1 |
|
MD5 | f7e02199d7b428af73ccfd621691bb8a |
|
BLAKE2b-256 | 66413c54ba40f49a0e1da5cc6ca8c4c54195a120f130f06b9176dc5c8dacb69f |