⚡️ Try it Online
🚀 Features
💌 Addresses - Generate valid looking Addresses, Zip Codes, Street Names, States, and Countries!⏰ Time-based Data - Past, present, future, recent, soon... whenever!🌏 Localization - Set a locale to generate realistic looking Names, Addresses, and Phone Numbers.💸 Finance - Create stubbed out Account Details, Transactions, and Crypto Addresses.👠 Products - Generate Prices, Product Names, Adjectives, and Descriptions.👾 Hacker Jargon - “Try to reboot the SQL bus, maybe it will bypass the virtual application!”🧍 Names - Generate virtual humans with a complete online and offline identity.🔢 Numbers - Of course, we can also generate random numbers and strings.
📦 Install
npm install --save-dev @faker-js/faker
🪄 Usage
import { faker } from '@faker-js/faker';
// import { faker } from '@faker-js/faker/locale/de';
export const USERS: User[] = [];
export function createRandomUser(): User {
return {
userId: faker.datatype.uuid(),
username: faker.internet.userName(),
email: faker.internet.email(),
avatar: faker.image.avatar(),
password: faker.internet.password(),
birthdate: faker.date.birthdate(),
registeredAt: faker.date.past(),
};
}
Array.from({ length: 10 }).forEach(() => {
USERS.push(createRandomUser());
});
💎 Modules
An in-depth overview of the API methods is available in the documentation.
The API covers the following modules:
Module | Example | Output |
---|---|---|
Address | faker.address.city() |
Lake Raoulfort |
Animal | faker.animal.cat() |
Norwegian Forest Cat |
Color | faker.color.rgb() |
#cdfcdc |
Commerce | faker.commerce.product() |
Polo t-shirt |
Company | faker.company.companyName() |
Zboncak and Sons |
Database | faker.database.engine() |
MyISAM |
Datatype | faker.datatype.uuid() |
7b16dd12-935e-4acc-8381-b1e457bf0176 |
Date | faker.date.past() |
Sat Oct 20 2018 04:19:38 GMT-0700 (Pacific Daylight Time) |
Finance | faker.finance.amount() |
¥23400 (After setting locale) |
Git | faker.git.commitMessage() |
feat: add products list page |
Hacker | faker.hacker.phrase() |
Try to reboot the SQL bus, maybe it will bypass the virtual application! |
Helpers | faker.helpers.arrayElement(['a', 'b', 'c']) |
b |
Image | faker.image.cats() |
https://loremflickr.com/640/480/cats |
Internet | faker.internet.domainName() |
muddy-neuropathologist.net |
Lorem | faker.lorem.paragraph() |
Porro nulla id vero perspiciatis nulla nihil. ... |
Music | faker.music.genre() |
R&B |
Name | faker.name.firstName() |
Cameron |
Phone | faker.phone.phoneNumber() |
+1 291-299-0192 |
Random | faker.random.locale() |
fr_CA |
Science | faker.science.unit() |
{ name: 'meter', symbol: 'm' } |
System | faker.system.directoryPath() |
/root |
Vehicle | faker.vehicle.vehicle() |
Lamborghini Camry |
Word | faker.word.adjective() |
adorable |
Templates
Faker contains a generator method faker.fake
for combining faker API methods using a mustache string format.
console.log(
faker.fake('Hello {{name.prefix}} {{name.lastName}}, how are you today?')
);
🌏 Localization
Faker has support for multiple locales.
The default language locale is set to English.
Setting a new locale is simple:
// sets locale to de
faker.locale = 'de';
See our documentation for a list of provided languages
Please note that not every locale provides data for every module. In out pre-made locales, we fallback to english in such a case as this is the most complete and most common used language.
⚙️ Setting a randomness seed
If you want consistent results, you can set your own seed:
faker.seed(123);
const firstRandom = faker.datatype.number();
// Setting the seed again resets the sequence.
faker.seed(123);
const secondRandom = faker.datatype.number();
console.log(firstRandom === secondRandom);
🤝 Sponsors
Faker is an MIT-licensed open source project with its ongoing development made possible entirely by the support of these awesome backers
Sponsors
Backers
✨ Contributing
Please make sure to read the Contributing Guide before making a pull request.
📘 Credits
Thanks to all the people who already contributed to Faker!
The fakerjs.dev website is kindly hosted by the Netlify Team. Also the search functionality is powered by algolia.
📝 Changelog
Detailed changes for each release are documented in the release notes.
📜 What happened to the original faker.js?
Read the team update (January 14th, 2022).