Code Monkey home page Code Monkey logo

apigen's Introduction

ApiGen - PHP source code API generator

Build Status Quality Score Code Coverage Downloads this Month Latest stable

ApiGen generates nice looking and user-friendly documentation.

Just look at Doctrine ORM API or Nette API.

Features

Installation

1. As a PHAR (recommended)

  1. Download ApiGen RC5

  2. Run ApiGen with source and destination options:

php apigen.phar generate -s src -d ../my-project-api

To omit cli options just create apigen.neon file in your project using Neon syntax.

source:
    - src

destination: ../my-project-api

For global installation, see documentation.

2. Using Composer as dependency of your project

composer require apigen/apigen --dev

Then run with options as above:

php vendor/bin/apigen generate -s src -d ../my/project-api

Options

# list of scanned file extensions (e.g. php5, phpt...)
extensions: [php]

# directories and files matching this file mask will not be parsed
exclude:
	- tests/
	- vendor/
	- *Factory.php

# similar to above, but this files will be included in class tree
skipDocPath:
    - *Component\Console

# character set of source files; if you use only one across your files, we recommend you name it
charset: [UTF-8]

# elements with this name prefix will be considered as the "main project" (the rest will be considered as libraries)
main: ApiGen

# title of generated documentation
title: ApiGen API

# base url used for sitemap (useful for public doc)
baseUrl: http://api.apigen.org

# custom search engine id, will be used by search box
googleCseId: 011549293477758430224

# Google Analytics tracking code
googleAnalytics: UA-35236-5

# choose ApiGen template theme
templateTheme: default # or: bootstrap

# want to use individual templates, higher priority than option templateTheme
templateConfig: my/template/config.neon

# the way elements are grouped in menu
groups: auto # also: namespace, packages, none; auto will detect namespace first, than packages

# access levels of included method and properties
accessLevels: [public, protected] # also [private]

# include elements marked as @internal/{@internal}
internal: false

# generate documentation for PHP internal classes
php: true

# generate highlighted source code for elements
sourceCode: true

# generate tree view of classes, interfaces, traits and exceptions
tree: true

# generate documentation for deprecated elements
deprecated: false

# generate list of tasks with @todo annotation
todo: false

# add link to ZIP archive of documentation
download: false

Detailed documentation

Performance

When generating documentation of large libraries, not loading the Xdebug PHP extension will improve performance.

apigen's People

Contributors

kukulich avatar andrewsville avatar dg avatar milo avatar fltr avatar majkl578 avatar grogy avatar pfefferle avatar pierredup avatar zemistr avatar smasty avatar yoosefi avatar mikulas avatar admad avatar marian-r avatar tomaswindsor avatar tomasvotruba avatar vrtak-cz avatar voda avatar miclf avatar mattskala avatar kravco avatar finwe avatar malkusch avatar mavimo avatar ravage84 avatar lopo avatar vrana avatar gharlan avatar leonex-cs1 avatar

Watchers

Leonard Odlozilik 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.