octo-deno/README.md

67 lines
2.4 KiB
Markdown
Raw Normal View History

2018-02-06 02:03:36 +00:00
<p align="center">
<img src="https://github.com/posidron/posidron.github.io/raw/master/static/images/octo.png" alt="Logo" />
</p>
2017-04-07 15:08:49 +00:00
2018-02-06 02:03:36 +00:00
<p align="center">
A unified shared library which aids in building fuzzers for browsers or as complement for an already existing fuzzing framework.
</p>
2017-06-08 03:04:42 +00:00
2018-02-06 02:03:36 +00:00
<p align="center">
<a href="https://standardjs.com"><img src="https://img.shields.io/badge/code_style-standard-brightgreen.svg" alt="JavaScript Style Guide"></a>
2018-03-22 17:32:29 +00:00
<!--<a href="https://travis-ci.org/MozillaSecurity/octo"><img src="https://api.travis-ci.org/MozillaSecurity/octo.svg?branch=es6" alt="Build Status"></a>-->
<!--<a href="https://img.shields.io/github/release/mozillasecurity/octo.svg"><img src="https://img.shields.io/github/release/mozillasecurity/octo.svg" alt="Current Release"></a>-->
<!--<a href="https://coveralls.io/github/MozillaSecurity/octo?branch=es6"><img src="https://coveralls.io/repos/github/MozillaSecurity/octo/badge.svg?branch=es6" alt="Coverage Status"></a>-->
2018-02-06 02:03:36 +00:00
<a href="https://www.irccloud.com/invite?channel=%23fuzzing&amp;hostname=irc.mozilla.org&amp;port=6697&amp;ssl=1"><img src="https://img.shields.io/badge/IRC-%23fuzzing-1e72ff.svg?style=flat" alt="IRC"></a>
</p>
2017-04-25 23:06:13 +00:00
2018-02-06 02:03:36 +00:00
Octo.js bundles core functions and generic boilerplate code commonly used in most frameworks for fuzzing browsers. It is designed for the sharing of improvements between our individual fuzzers, and with the purpose of reducing the maintainability of those core features with minimal effort.
2017-04-07 15:08:49 +00:00
2018-02-06 02:03:36 +00:00
Octo's future aims to be a stable, well-tested and well-documented standard library for fuzzing in a JavaScript environment.
2017-04-23 00:59:55 +00:00
2018-03-22 17:32:29 +00:00
## Playbook
https://runkit.com/posidron/octo-js-playbook
2017-04-23 00:59:55 +00:00
2018-03-19 06:05:35 +00:00
## Node
```
2018-03-22 17:32:29 +00:00
npm i @mozillasecurity/octo
2018-03-19 06:05:35 +00:00
```
```
const {random} = require('@mozillasecurity/octo')
2018-03-22 17:32:29 +00:00
random.init()
2018-03-19 06:05:35 +00:00
```
## Browser
2018-03-22 17:32:29 +00:00
We have not yet merged ES6 to master, hence the browser version which was released on master is not up-to-date.
Use the `dist/octo.js` version of this branch by running the following command.
2017-06-10 11:00:08 +00:00
```
2018-03-22 17:32:29 +00:00
npm run build
2018-02-06 02:03:36 +00:00
```
2017-06-10 11:00:08 +00:00
## Development
```bash
2018-02-06 02:03:36 +00:00
npm install
npm run build
npm run watch
npm run test:lint
2017-06-10 11:00:08 +00:00
```
2017-04-23 00:59:55 +00:00
2017-04-10 18:14:01 +00:00
## Testing
2017-04-07 15:08:49 +00:00
2017-04-10 18:14:01 +00:00
Tests live in the `tests/` subdirectory, and are written for [QUnit](https://qunitjs.com/).
To run tests locally, open `tests/index.html` in a browser.
2017-06-10 11:00:08 +00:00
The automated tests are run in Firefox or Chrome using [Karma](https://karma-runner.github.io/).
2017-04-10 18:14:01 +00:00
To run the automated tests:
2017-04-07 15:08:49 +00:00
2017-06-10 11:00:08 +00:00
```bash
2018-03-22 17:32:29 +00:00
npm test
2017-06-10 11:00:08 +00:00
```