Git Product home page Git Product logo

electron-api-docs's Introduction

🚧 THIS PROJECT IS NO LONGER MAINTAINED. To get the latest version of Electron's structured docs, see the electron-api.json artifact in any Electron releaase: https://github.com/electron/electron/releases

electron-api-docs Build Status

Electron's API documentation in a structured JSON format.

Installation

npm install electron-api-docs --save

Or take it for a spin in your Node.js REPL:

npm i -g trymodule && trymodule electron-api-docs=apis

Note: This package is not semantically versioned. It is published in step with Electron. When you install [email protected], you're getting the API docs from Electron v1.4.1.

Usage

This module exports structured API data in a few different formats. Choose the one that works best for your use case:

Object Tree Structure

To access the docs as a big object tree:

const apis = require('electron-api-docs/tree')

This gives you an object with keys for easy traversal:

apis.BrowserWindow.instanceMethods.setAspectRatio

Array Structure

To access the docs as an array of API objects:

const apis = require('electron-api-docs/electron-api.json')

This gives you an array of API objects, so functional methods like find, map, filter, and every can be used:

apis.find(api => api.name === 'BrowserWindow')
apis.filter(api => api.type === 'Class')
apis.filter(api => api.type === 'Module')
apis.map(api => api.name)

Keyed Array Structure

For the best of both worlds (arrays and objects), you can require the module as a keyed array:

const apis = require('electron-api-docs')

When you require it, you get an array of API objects

apis.length
// => 33

The array has a key for each API name, for convenient access:

apis.BrowserWindow
apis.BrowserWindow.staticMethods.getAllWindows.description
apis.WebContents.instanceMethods.savePage.parameters.saveType.possibleValues
apis.app.events.quit

All of the arrays have named keys, but they're still actually arrays, so functional methods like find, map, filter, and every can be used:

apis.find(api => api.name === 'BrowserWindow')
apis.filter(api => api.type === 'Class')
apis.filter(api => api.type === 'Module')
apis.map(api => api.name)

// All arrays have named keys, not just the top-level array!
apis.BrowserWindow.instanceMethods.map(method => method.name)

Tests

npm install
npm test

Dependencies

  • keyed-array: Recursively add named keys to arrays of objects

Dev Dependencies

  • chai: BDD/TDD assertion library for node.js and the browser. Test framework agnostic.
  • gh-latest-release: Get the latest published full release for the Github repository
  • json: a 'json' command for massaging and processing JSON on the command line
  • mocha: simple, flexible, fun test framework
  • standard: JavaScript Standard Style
  • standard-markdown: Test your Markdown files for Standard JavaScript Style™

License

MIT

electron-api-docs's People

Contributors

zeke avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.