aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Miller <[email protected]>2017-02-25 15:57:44 -0500
committerGitHub <[email protected]>2017-02-25 15:57:44 -0500
commitaf189c411d79e84ce1f9e349ac5be6a03ff4c55d (patch)
tree7b99e39fd7bb7c793ac4f5ce4f591de7e0c6c173
parent3fb2dc21223b414afc6f1fa3c8bc8fc7de2d48d5 (diff)
parent1fbe781649b09627935cd68f2446f3e1d572e3be (diff)
Merge branch 'master' into master
-rw-r--r--.babelrc3
-rw-r--r--.editorconfig17
-rw-r--r--LICENSE.md21
-rw-r--r--README.md89
-rw-r--r--package.json10
5 files changed, 116 insertions, 24 deletions
diff --git a/.babelrc b/.babelrc
new file mode 100644
index 0000000..eaf3238
--- /dev/null
+++ b/.babelrc
@@ -0,0 +1,3 @@
+{
+ "presets": ["es2015", "stage-0"]
+}
diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..ac0adb7
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,17 @@
+root = true
+
+[*]
+indent_style = tab
+end_of_line = lf
+charset = utf-8
+trim_trailing_whitespace = true
+insert_final_newline = true
+
+[{package.json,.*rc,*.yml}]
+indent_style = space
+indent_size = 2
+
+[*.md]
+trim_trailing_whitespace = false
+indent_style = space
+indent_size = 2
diff --git a/LICENSE.md b/LICENSE.md
new file mode 100644
index 0000000..3b90ec9
--- /dev/null
+++ b/LICENSE.md
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2017 Jason Miller
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/README.md b/README.md
index f9f34c4..3141a88 100644
--- a/README.md
+++ b/README.md
@@ -1,29 +1,55 @@
<p align="center">
- <img src="https://i.imgur.com/BqsX9NT.png" width="256" height="256" alt="mitt">
+ <img src="https://i.imgur.com/BqsX9NT.png" width="300" height="300" alt="mitt">
<br>
- <b>Mitt</b>: tiny 200b functional event emitter / pubsub.
- <br>
- <a href="https://www.npmjs.org/package/mitt"><img src="https://img.shields.io/npm/v/mitt.svg?style=flat" alt="npm"></a> <a href="https://travis-ci.org/developit/mitt"><img src="https://travis-ci.org/developit/mitt.svg?branch=master" alt="travis"></a>
+ <a href="https://www.npmjs.org/package/mitt"><img src="https://img.shields.io/npm/v/mitt.svg?style=flat" alt="npm"></a> <a href="https://travis-ci.org/developit/mitt"><img src="https://travis-ci.org/developit/mitt.svg?branch=master" alt="travis"></a> <a href="https://david-dm.org/developit/mitt"><img src="https://david-dm.org/developit/mitt/status.svg" alt="dependencies Status"></a>
</p>
+# Mitt
-## Why Mitt?
+> Tiny 200b functional event emitter / pubsub.
-- **Microscopic:** weighs less than 200 bytes gzipped
-- **Useful:** a wildcard `"*"` event type listens to all events
-- **Famliar:** same names & ideas as [Node's EventEmitter](https://nodejs.org/api/events.html#events_class_eventemitter)
-- **Functional:** methods don't rely on `this`
-- **Great Name:** somehow [mitt](https://npm.im/mitt) wasn't taken
+- **Microscopic:** weighs less than 200 bytes gzipped
+- **Useful:** a wildcard `"*"` event type listens to all events
+- **Familiar:** same names & ideas as [Node's EventEmitter](https://nodejs.org/api/events.html#events_class_eventemitter)
+- **Functional:** methods don't rely on `this`
+- **Great Name:** somehow [mitt](https://npm.im/mitt) wasn't taken
-> Mitt was made for the browser, but works in any JavaScript runtime. It has no dependencies and only uses basic language features. It probably works in Internet Explorer 5.
+Mitt was made for the browser, but works in any JavaScript runtime. It has no dependencies and supports IE9+.
+## Table of Contents
+- [Install](#install)
+- [Usage](#usage)
+- [Examples & Demos](#examples--demos)
+- [API](#api)
+- [Contribute](#contribute)
+- [License](#license)
-* * *
+## Install
+This project uses [node](http://nodejs.org) and [npm](https://npmjs.com). Go check them out if you don't have them locally installed.
-## Usage
+```sh
+$ npm install --save mitt
+```
+
+Then with a module bundler like [rollup](http://rollupjs.org/) or [webpack](https://webpack.js.org/), use as you would anything else:
+
+```javascript
+// using ES6 modules
+import mitt from 'mitt'
+
+// using CommonJS modules
+var mitt = require('mitt')
+```
+
+The [UMD](https://github.com/umdjs/umd) build is also available on [unpkg](https://unpkg.com):
+
+```html
+<script src="https://unpkg.com/mitt/dist/mitt.umd.js"></script>
+```
+You can find the library on `window.mitt`.
-After installing via `npm install --save mitt`:
+## Usage
```js
import mitt from 'mitt'
@@ -45,7 +71,13 @@ emitter.on('foo', onFoo) // listen
emitter.off('foo', onFoo) // unlisten
```
-* * *
+## Examples & Demos
+
+<a href="http://codepen.io/developit/pen/rjMEwW?editors=0110">
+ <b>Preact + Mitt Codepen Demo</b>
+ <br>
+ <img src="https://i.imgur.com/CjBgOfJ.png" width="278" alt="preact + mitt preview">
+</a>
## API
@@ -53,7 +85,7 @@ emitter.off('foo', onFoo) // unlisten
Mitt: Tiny (~200b) functional event emitter / pubsub.
-Returns **Mitt**
+Returns **Mitt**
#### on
@@ -82,3 +114,28 @@ If present, `"*"` handlers are invoked prior to type-matched handlers.
- `type` **[String](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String)** The event type to invoke
- `event` **\[Any]** An event object, passed to each handler
+
+## Contribute
+First off, thanks for taking the time to contribute!
+Now, take a moment to be sure your contributions make sense to everyone else.
+
+### Reporting Issues
+Found a problem? Want a new feature? First of all see if your issue or idea has [already been reported](../../issues).
+If don't, just open a [new clear and descriptive issue](../../issues/new).
+
+### Submitting pull requests
+Pull requests are the greatest contributions, so be sure they are focused in scope, and do avoid unrelated commits.
+
+- Fork it!
+- Clone your fork: `git clone https://github.com/<your-username>/mitt`
+- Navigate to the newly cloned directory: `cd mitt`
+- Create a new branch for the new feature: `git checkout -b my-new-feature`
+- Install the tools necessary for development: `npm install`
+- Make your changes.
+- Commit your changes: `git commit -am 'Add some feature'`
+- Push to the branch: `git push origin my-new-feature`
+- Submit a pull request with full remarks documenting your changes.
+
+## License
+
+[MIT License](LICENSE.md) &copy; [Jason Miller](https://jasonformat.com/)
diff --git a/package.json b/package.json
index 16b5b83..a387049 100644
--- a/package.json
+++ b/package.json
@@ -1,7 +1,7 @@
{
"name": "mitt",
"amdName": "mitt",
- "version": "1.0.0",
+ "version": "1.0.1",
"description": "Tiny ~200b functional event emitter / pubsub.",
"jsnext:main": "src/index.js",
"main": "dist/mitt.js",
@@ -24,7 +24,7 @@
"eventemitter",
"pubsub"
],
- "homepage": "httsp://github.com/developit/mitt",
+ "homepage": "https://github.com/developit/mitt",
"authors": [
"Jason Miller <[email protected]>"
],
@@ -33,12 +33,6 @@
"src",
"dist"
],
- "babel": {
- "presets": [
- "es2015",
- "stage-0"
- ]
- },
"eslintConfig": {
"parser": "babel-eslint",
"extends": "eslint:recommended",