https://github.com/yields/phony
Tiny command line fake data generator.
https://github.com/yields/phony
Last synced: 12 months ago
JSON representation
Tiny command line fake data generator.
- Host: GitHub
- URL: https://github.com/yields/phony
- Owner: yields
- Created: 2014-12-13T07:04:14.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2021-03-05T11:44:53.000Z (about 5 years ago)
- Last Synced: 2025-03-28T14:07:58.431Z (12 months ago)
- Language: Go
- Homepage:
- Size: 35.2 KB
- Stars: 733
- Watchers: 6
- Forks: 24
- Open Issues: 5
-
Metadata Files:
- Readme: Readme.md
- Changelog: History.md
Awesome Lists containing this project
- awesome-data-wrangling - phoney
README
# phony
Tiny command line program that accepts a template and outputs fake data.

## Installation
Via gobinaries.com
```bash
$ curl https://gobinaries.com/yields/phony | sh
```
Via go get:
```bash
$ go get github.com/yields/phony
```
## Examples
```bash
# publish email to nsq every 1ms.
echo '{"email":"{{email}}", "subject": "welcome!"}' \
| phony --tick 1ms \
| json-to-nsq --topic users
# add users to FoundationDB.
echo "'set {{username}} {{avatar}}'" \
| phony \
| xargs -L1 -n3 fdbcli --exec
# add users to MongoDB.
echo "'db.users.insert({ name: \"{{name}}\" })'" \
| phony \
| xargs -L1 -n1 mongo --eval
# add users to Redis.
echo "set {{username}} {{avatar}}" \
| phony \
| xargs -L1 -n3 redis-cli
# send a single request using curl.
echo 'country={{country}}' \
| phony --max 1 \
| curl -d @- httpbin.org/post
```
## Usage
```text
Usage: phony
[--tick d]
[--max n]
[--list]
phony -h | --help
phony -v | --version
Options:
--list list all available generators
--max n generate data up to n [default: -1]
--tick d generate data every d [default: 10ms]
-v, --version show version information
-h, --help show help information
```
## Generators
```text
avatar
color
country
country.code
domain
domain.name
domain.tld
double
email
event.action
http.method
id
ipv4
ipv6
ksuid
latitude
longitude
mac.address
name
name.first
name.last
product.category
product.name
state
state.code
timezone
unixtime
username
uuid
```
## License
(MIT), 2014 Amir Abu Shareb.