# jsmirrors

> Mirrors-based reflection implementation for JavaScript

Latest version **1.0.0** (published 2017-08-10) · MPL-2.0 license · 0 weekly downloads

## Install

```sh
npm install jsmirrors
pnpm add jsmirrors
yarn add jsmirrors
bun add jsmirrors
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.0.0 |
| Published | 2017-08-10 |
| First published | 2017-08-10 |
| Weekly downloads | 0 |
| License | MPL-2.0 |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Maintainers | crussell |

## Links

- npm: https://www.npmjs.com/package/jsmirrors
- npm.io page: https://npm.io/package/jsmirrors

## Recent versions

- 1.0.0 (latest) — 2017-08-10

## README

# jsmirrors

Mirrors-based reflection interface for JavaScript

Originally based on work by Allen Wirfs-Brock

# Files:
 * mirrors.js is the reference implementation of the mirror interfaces; supports
   reflecting over local objects
 * doc/interfaces is a specification of the mirror interfaces using an
   interface description language based on TypeScript with ad hoc extensions
   for get and set
 * tests/harness.html runs a bunch of tests on mirrors.js in-browser; only
   ever tested in Firefox due to Chrome's restrictions on XHR from local
   file:// pages
 * tests/testRunner-node.js runs the same tests from the command-line using
   NodeJS


The reference implementation requires a JavaScript implementation that
supports ES5.  Neither the interface spec nor the implemenation take into
account changes made in ES6 and up.

For an introduction to the principles behind mirror-based reflection, read
[Mirrors: design principles for meta-level facilites of object-oriented
programming languages] by Gilad Bracha and David Ungar.  See also Allen
Wirfs-Brock's tour of the original jsmirrors implementation in his posts on
[reflection] in JavaScript.

[Mirrors: design principles for meta-level facilites of object-oriented
programming languages]:
<http://bracha.org/mirrors.pdf>

[reflection]:
<http://www.wirfs-brock.com/allen/posts/category/reflection-2>

---
_Source: https://npm.io/package/jsmirrors · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
