Blaver is a JavaScript library built on top of the Faker.JS library. It generates massive amounts of fake data in the browser and node.js.
Fake data is useful when building and testing our application. Blaver can generate fake data for various areas, including address, commerce, company, date, finance, image, random, or name.
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 along with the code, for unknown reasons.
Blaver is a fork of the original Faker.js library. The original library was created by Marak Squires in 2011. Blaver aims to maintain the original library's functionality and add new features.
You can also access unofficial Faker.js documentation at https://fakerjsdocs.netlify.com/
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/blaver.min.js"></script>npm i blaver<script>
var randomName = blaver.name.findName(); // Caitlyn Kerluke
var randomEmail = blaver.internet.email(); // Rusty@arne.info
var randomCard = blaver.helpers.createCard(); // random contact card containing many properties
</script>var blaver = require('blaver');
var randomName = blaver.name.findName(); // Rowan Nikolaus
var randomEmail = blaver.internet.email(); // Kassandra.Haley@erich.biz
var randomCard = blaver.helpers.createCard(); // random contact card containing many propertiesYou can browse all API methods by going to the JSDoc API Browser.
- 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
- bigInt
- 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
- uniqueArray
- 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
- random
- number
- float
- arrayElement
- arrayElements
- objectElement
- uuid
- boolean
- word
- words
- image
- locale
- alpha
- alphaNumeric
- hexaDecimal
- system
- fileName
- commonFileName
- mimeType
- commonFileType
- commonFileExt
- fileType
- fileExt
- directoryPath
- filePath
- semver
- time
- recent
- unique
- vehicle
- vehicle
- manufacturer
- model
- type
- fuel
- vin
- color
- vrm
- bicycle
- word
- adjective
- adverb
- conjunction
- interjection
- noun
- preposition
- verb
Blaver contains a super useful generator method Blaver.fake for combining faker API methods using a mustache string format.
Example:
console.log(blaver.fake("{{name.lastName}}, {{name.firstName}} {{name.suffix}}"));
// outputs: "Marks, Dean Sr."This will interpolate the format string with the value of methods name.lastName(), name.firstName(), and name.suffix()
Blaver has support for multiple localities – ported directly from the orginal faker.js library (version v2.0.0).
The default language locale is set to English.
Setting a new locale is simple:
// sets locale to de
blaver.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
- he
- fa
- fi
- fr
- fr_CA
- fr_CH
- ge
- hy
- hr
- id_ID
- it
- ja
- ko
- mk
- nb_NO
- ne
- nl
- nl_BE
- pl
- pt_BR
- pt_PT
- ro
- ru
- sk
- sv
- tr
- uk
- vi
- zh_CN
- zh_TW
Blaver supports incremental loading of locales.
By default, requiring blaver 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 locale
var blaver = require('blaver/locale/de');If you want consistent results, you can set your own seed:
blaver.seed(123);
var firstRandom = blaver.random.number();
// Setting the seed again resets the sequence.
blaver.seed(123);
var secondRandom = blaver.random.number();
console.log(firstRandom === secondRandom);npm install .
make testYou can view a code coverage report generated in coverage/lcov-report/index.html.
Blaver 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 jsdocThe Readme.md file for blaver is automatically generated and should not be modified directly. All updates to Readme.md should be performed in ./build/src/docs.md and then the build script should be run.
npm run readmeBlaver - Copyright (c) 2022 - Present
https://github.com/luciferreeves/blaver
https://npmjs.com/package/blaver
faker.js - Copyright (c) 2011 - 2022
http://github.com/marak/faker.js/
faker.js was inspired by and has used data definitions from:
- https://github.com/stympy/faker/ - Copyright (c) 2007-2010 Benjamin Curtis
- http://search.cpan.org/~jasonk/Data-Faker-0.07/ - Copyright 2004-2005 by Jason Kohles