A blazingly fast fake data generator inspired by Java Faker, but supercharged with multi-threading to handle generating 1,000,000+ rows of realistic fake data in seconds.
Generate data using characters and locations from your favorite universes - including Pokemon trainers, Breaking Bad characters, Lord of the Rings locations, or Game of Thrones houses. Mix and match data from dozens of popular TV shows, movies, books, and video games to create the perfect test dataset.
Visit fakermaker.fm to interact with a web client that uses this server, or clone the frontend repo and run it locally
# One command to rule them all
curl -s "https://get.sdkman.io" | bash && source "$HOME/.sdkman/bin/sdkman-init.sh" && \
sdk install java 21-graal && sdk use java 21-graal && \
sdk install kotlin 2.0.20 && sdk use kotlin 2.0.20 && \
git clone https://github.com/yourusername/faker-maker.git && cd faker-maker && \
./gradlew build && ./gradlew bootRun
Generate a million rows of fake data (will generate ~80mb file):
curl -X POST "http://localhost:8181/api/fakermaker/download/1000000" -o massive_fake_dataset.csv
📋 Step-by-Step Setup Instructions
- Java 21
- Kotlin 2.0.20
- Gradle
# Install SDKMAN!
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
# Install Java
sdk install java 21-graal
sdk use java 21-graal
# Install Kotlin
sdk install kotlin 2.0.20
sdk use kotlin 2.0.20
- Clone and enter the repository:
git clone https://github.com/yourusername/faker-maker.git
cd faker-maker
- Build and run:
./gradlew build
./gradlew bootRun
- Blazing Fast: Generate millions of rows in seconds using Kotlin coroutines
- Media-Rich Data: Characters and locations from popular franchises like Harry Potter, Breaking Bad, Pokemon, and more
# 1000 records
curl -X POST "http://localhost:8181/api/fakermaker/download/1000" -o fake_data.csv
# A million records
curl -X POST "http://localhost:8181/api/fakermaker/download/1000000" -o massive_dataset.csv
curl -X POST "http://localhost:8181/api/fakermaker/dataTable/100"
Edit src/main/resources/application.properties
:
server.port=8181
spring.application.name=fakerMaker
spring.datasource.url=jdbc:postgresql://localhost:5432/postgres
Use the included .idea/httpRequests/faker-maker.http
file for easy API testing.
- Fork it
- Create your feature branch (
git checkout -b feature/amazing-feature
) - Commit your changes (
git commit -m 'Add some amazing feature'
) - Push to the branch (
git push origin feature/amazing-feature
) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Made with Kotlin