Package Exports
- static-mock-data
- static-mock-data/employees.json
- static-mock-data/projects.json
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (static-mock-data) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Static mock data
Static mock data (as opposed to randomly-generated mock data) for sample apps, demos, and POCs.
Features
- 100 mock employees, with names, addresses, phone numbers, etc.
- 100 mock projects, with names, dates, departments, employees assigned, etc.
- Full-size and thumbnail 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 employment
Usage in Node.js
Install via NPM:
npm install static-mock-data
The mock data can be used as plain JSON or as JavaScript arrays of objects.
Raw JSON
var employeeJSON = require('static-mock-data/employees.json');
employeeJSON.forEach(function(employee) {
console.log(employee.dob); // string (in ISO 8601 zulu format)
console.log(employee.portrait); // relative file path
});
JavaScript Objects
var mockData = require('static-mock-data');
mockData.employees.forEach(function(employee) {
console.log(employee.dob); // Date object
console.log(employee.portrait); // absolute file path
});
Usage in Web Browsers
Install via Bower:
bower install static-mock-data
The mock data can be used as plain JSON (via jQuery.getJSON()
) or as JavaScript arrays of objects.
Raw JSON
$.getJSON("bower_components/static-mock-data/employees.json", function(employeeJSON) {
employeeJSON.forEach(function(employee) {
console.log(employee.dob); // string (in ISO 8601 zulu format)
});
});
JavaScript Objects
<script src="bower_components/static-mock-data/dist/static-mock-data.min.js"></script>
<script>
mock.data.employees.forEach(function(employee) {
console.log(employee.dob); // Date object
});
</script>
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
I welcome any contributions, enhancements, and bug-fixes. File an issue on GitHub and submit a pull request.
Building
To build the project locally on your computer:
Clone this repo
git clone https://github.com/bigstickcarpet/static-mock-data.git
Install dependencies
npm install
Run the build script
npm run build
Run the tests
npm test
License
All JSON data is MIT licensed and can be used however you want.
All images (employee portraits) are licensed under Creative Commons BY-NC-SA 4.0 and have some limitations on their use.
See the LICENSE file for more details.