Generate massive amounts of fake data in the browser and node.js.
Please replace your faker dependency with @faker-js/faker. This is the official, stable fork of Faker.
npm install @faker-js/faker -DTypes are available via the @types/faker package. You must manually link them using a *.d.ts file, like so:
// faker.d.tsdeclare module '@faker-js/faker'{importfakerfrom'faker';exportdefaultfaker;}This project was originally created and hosted at https://github.com/marak/Faker.js/ - however around 4th Jan, 2022 - the author decided to delete the repository (for unknown reasons).
In the interest of the community, it has been decided that faker.js will continue to be maintained here and all help in its development will be appreciated.
Coming soon!
<scriptsrc="faker.js" type="text/javascript"></script><script>varrandomName=faker.name.findName();// Caitlyn KerlukevarrandomEmail=faker.internet.email();// Rusty@arne.infovarrandomCard=faker.helpers.createCard();// random contact card containing many properties</script>varfaker=require('faker');varrandomName=faker.name.findName();// Rowan NikolausvarrandomEmail=faker.internet.email();// Kassandra.Haley@erich.bizvarrandomCard=faker.helpers.createCard();// random contact card containing many properties- address
- zipCode
- zipCodeByState
- city
- cityPrefix
- citySuffix
- cityName
- streetName
- streetAddress
- streetSuffix
- streetPrefix
- secondaryAddress
- county
- country
- countryCode
- state
- stateAbbr
- latitude
- longitude
- direction
- cardinalDirection
- ordinalDirection
- nearbyGPSCoordinate
- timeZone
- animal
- dog
- cat
- snake
- bear
- lion
- cetacean
- horse
- bird
- cow
- fish
- crocodilia
- insect
- rabbit
- type
- commerce
- color
- department
- productName
- price
- productAdjective
- productMaterial
- product
- productDescription
- company
- suffixes
- companyName
- companySuffix
- catchPhrase
- bs
- catchPhraseAdjective
- catchPhraseDescriptor
- catchPhraseNoun
- bsAdjective
- bsBuzz
- bsNoun
- database
- column
- type
- collation
- engine
- datatype
- number
- float
- datetime
- string
- uuid
- boolean
- hexaDecimal
- json
- array
- date
- past
- future
- between
- betweens
- recent
- soon
- month
- weekday
- fake
- finance
- account
- accountName
- routingNumber
- mask
- amount
- transactionType
- currencyCode
- currencyName
- currencySymbol
- bitcoinAddress
- litecoinAddress
- creditCardNumber
- creditCardCVV
- ethereumAddress
- iban
- bic
- transactionDescription
- git
- branch
- commitEntry
- commitMessage
- commitSha
- shortSha
- hacker
- abbreviation
- adjective
- noun
- verb
- ingverb
- phrase
- helpers
- randomize
- slugify
- replaceSymbolWithNumber
- replaceSymbols
- replaceCreditCardSymbols
- repeatString
- regexpStyleStringParse
- shuffle
- mustache
- createCard
- contextualCard
- userCard
- createTransaction
- image
- image
- avatar
- imageUrl
- abstract
- animals
- business
- cats
- city
- food
- nightlife
- fashion
- people
- nature
- sports
- technics
- transport
- dataUri
- lorempixel
- unsplash
- lorempicsum
- internet
- avatar
- exampleEmail
- userName
- protocol
- httpMethod
- url
- domainName
- domainSuffix
- domainWord
- ip
- ipv6
- port
- userAgent
- color
- mac
- password
- lorem
- word
- words
- sentence
- slug
- sentences
- paragraph
- paragraphs
- text
- lines
- mersenne
- rand
- seed
- seed_array
- music
- genre
- name
- firstName
- lastName
- middleName
- findName
- jobTitle
- gender
- prefix
- suffix
- title
- jobDescriptor
- jobArea
- jobType
- phone
- phoneNumber
- phoneNumberFormat
- phoneFormats
- system
- fileName
- commonFileName
- mimeType
- commonFileType
- commonFileExt
- fileType
- fileExt
- directoryPath
- filePath
- semver
- time
- recent
- unique
- vehicle
- vehicle
- manufacturer
- model
- type
- fuel
- vin
- color
- vrm
- bicycle
faker.js contains a super useful generator method Faker.fake for combining faker API methods using a mustache string format.
Example:
console.log(faker.fake('{{name.lastName}}, {{name.firstName}} {{name.suffix}}'));This will interpolate the format string with the value of methods name.lastName(), name.firstName(), and name.suffix()
As of version v2.0.0 faker.js has support for multiple localities.
The default language locale is set to English.
Setting a new locale is simple:
// sets locale to defaker.locale='de';- az
- ar
- cz
- de
- de_AT
- de_CH
- en
- en_AU
- en_AU_ocker
- en_BORK
- en_CA
- en_GB
- en_IE
- en_IND
- en_US
- en_ZA
- es
- es_MX
- fa
- fi
- fr
- fr_CA
- fr_CH
- ge
- hy
- hr
- id_ID
- it
- ja
- ko
- nb_NO
- ne
- nl
- nl_BE
- pl
- pt_BR
- pt_PT
- ro
- ru
- sk
- sv
- tr
- uk
- vi
- zh_CN
- zh_TW
faker.js supports incremental loading of locales.
By default, requiring faker will include all locale data.
In a production environment, you may only want to include the locale data for a specific set of locales.
// loads only de localevarfaker=require('faker/locale/de');If you want consistent results, you can set your own seed:
faker.seed(123);varfirstRandom=faker.datatype.number();// Setting the seed again resets the sequence.faker.seed(123);varsecondRandom=faker.datatype.number();console.log(firstRandom===secondRandom);npm install .
npm run testYou can view a code coverage report generated in coverage/lcov-report/index.html.
faker uses gulp to automate its build process. Each build operation is a separate task which can be run independently.
npm run browserJSDOC v3 HTML API documentation
npm run jsdoc