https://github.com/js-devtools/static-mock-data
High-quality mock data for sample apps, demos, and POCs
https://github.com/js-devtools/static-mock-data
javascript mock-data nodejs poc universal-javascript
Last synced: 15 days ago
JSON representation
High-quality mock data for sample apps, demos, and POCs
- Host: GitHub
- URL: https://github.com/js-devtools/static-mock-data
- Owner: JS-DevTools
- License: other
- Created: 2015-06-04T14:23:14.000Z (about 10 years ago)
- Default Branch: master
- Last Pushed: 2020-07-18T22:32:33.000Z (almost 5 years ago)
- Last Synced: 2025-05-20T01:42:49.578Z (about 1 month ago)
- Topics: javascript, mock-data, nodejs, poc, universal-javascript
- Language: JavaScript
- Homepage: https://jstools.dev/static-mock-data/
- Size: 10.4 MB
- Stars: 3
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
Static mock data
==============================
Static mock data (as opposed to randomly-generated mock data) for sample apps, demos, and POCs.[](https://github.com/JS-DevTools/static-mock-data/actions)
[](https://coveralls.io/github/JS-DevTools/static-mock-data)[](https://www.npmjs.com/package/@jsdevtools/static-mock-data)
[](https://david-dm.org/JS-DevTools/static-mock-data)
[](LICENSE)[](https://github.com/JS-DevTools/static-mock-data/actions)
Features
--------------------------
* __[100 mock employees](https://raw.githubusercontent.com/JS-DevTools/static-mock-data/master/employees.json)__, with names, addresses, phone numbers, etc.
* __[100 mock projects](https://raw.githubusercontent.com/JS-DevTools/static-mock-data/master/projects.json)__, with names, dates, departments, employees assigned, etc.
* __[Full-size](https://github.com/JS-DevTools/static-mock-data/blob/master/portraits/jdoe.jpg)__ and __[thumbnail](https://github.com/JS-DevTools/static-mock-data/blob/master/portraits/jdoe-thumb.jpg)__ photos for each employee
* No dependencies
* Tested in Node.js and all modern web browsers on Mac, Windows, and Linux
* All data follows logical rules:
- Usernames, SSNs, addresses, etc. are unique
- Birthdates, hire dates, and termination dates are in proper chronological order
- Employee roles "make sense" (e.g. "full time" and "part time" are mutually exclusive)
- Employees are only assigned to projects in their own department
- Employees are only assigned to projects that occurred during their employmentInstallation
-------------------------------------
Install using [NPM](https://docs.npmjs.com/about-npm/) or [Yarn](https://yarnpkg.com):```bash
npm install @jsdevtools/static-mock-data
```Usage
-------------------------------------
The mock data can be used as plain JSON or as JavaScript objects.### Raw JSON
```javascript
const employees = require("@jsdevtools/static-mock-data/employees.json");for (let employee of employees) {
console.log(employee.dob); // date string
console.log(employee.portrait); // relative file path
}
```### JavaScript Objects
```javascript
const mockData = require("@jsdevtools/static-mock-data");for (let employee of mockData.employees) {
console.log(employee.dob); // Date object
console.log(employee.portrait); // absolute file path
}
```Browser support
--------------------------
Static Mock Data supports recent versions of every major web browser. Older browsers may require [Babel](https://babeljs.io/) and/or [polyfills](https://babeljs.io/docs/en/next/babel-polyfill).To use Static Mock Data in a browser, you'll need to use a bundling tool such as [Webpack](https://webpack.js.org/), [Rollup](https://rollupjs.org/), [Parcel](https://parceljs.org/), or [Browserify](http://browserify.org/). Some bundlers may require a bit of configuration, such as setting `browser: true` in [rollup-plugin-resolve](https://github.com/rollup/rollup-plugin-node-resolve).
Employees
--------------------------
`mockData.employees` is an array of objects with the following properties:| Property | Data Type | Description
|:----------------------|:-----------------|:----------------------------
| `username` | string | A alphanumeric username that is unique for each employee
| `password` | string | An alphanumeric password
| `name.first` | string | First name
| `name.last` | string | Last name
| `gender` | string | "male" or "female"
| `portrait` | string | The path of the full-size portrait photo
| `thumbnail` | string | The path of the thumbnail-size portrait photo
| `email` | string | Email address
| `address.street` | string | House number and street name
| `address.city` | string | City name
| `address.state` | string | U.S. state name (full name, not abbreviation)
| `address.zip` | string | U.S. zip code, in the format #####
| `phones` | array of objects | Array of phone objects
| `phones[].type` | string | "home", "office", or "cell"
| `phones[].number` | string | Phone number, in the format ###-##-####
| `ssn` | string | U.S. Social Security Number, in the format ###-##-####. Unique for each employee.
| `dob` | Date | Date of birth
| `hiredOn` | Date | Date the employee was hired
| `terminatedOn` | Date or null | Date the employee was terminated, or `null` if still employed
| `department` | string | "Accounting", "Sales", "Human Resources", or "Marketing"
| `roles` | array of strings | Array of roles, such as "employee", "consultant", "part time", etc.Projects
--------------------------
`mockData.projects` is an array of objects with the following properties:| Property | Data Type | Description
|:----------------------|:-----------------|:----------------------------
| `id` | number | Numeric ID that is unique for each project
| `name` | string | Project name that is unique for each project. 55 characters max.
| `description` | string | Long project description. 2000 characters max
| `department` | string | "Accounting", "Sales", "Human Resources", or "Marketing"
| `startedOn` | Date | Date that the project started
| `endedOn` | Date or null | Date that the project ended, or `null` if still ongoing
| `assigned` | array of strings | Array of usernames of employees who are assigned to the project. Projects will only have employees from the same department.Contributing
--------------------------
Contributions, enhancements, and bug-fixes are welcome! [Open an issue](https://github.com/JS-DevTools/static-mock-data/issues) on GitHub and [submit a pull request](https://github.com/JS-DevTools/static-mock-data/pulls).#### Building
To build the project locally on your computer:1. __Clone this repo__
`git clone https://github.com/JS-DevTools/static-mock-data.git`2. __Install dependencies__
`npm install`3. __Run the build script__
`npm run build`4. __Run the tests__
`npm test`License
--------------------------
All JSON data is [MIT licensed](http://opensource.org/licenses/MIT) and can be used however you want.All images (employee portraits) are licensed under [Creative Commons BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/2.0/deed.en) and have some limitations on their use.
See the [LICENSE file](LICENSE) for more details.
Big Thanks To
--------------------------
Thanks to these awesome companies for their support of Open Source developers ❤[](https://travis-ci.com)
[](https://saucelabs.com)
[](https://coveralls.io)