¿Hay alguna forma de generar documentación de la API de Javascript como la Documentación de la API de la Biblioteca de Cierre de Google?


Estoy tratando de encontrar una herramienta que genere documentación HTML para mi código fuente Javascript.

¿Alguien sabe si la herramienta que utiliza Google para generar la interfaz en las siguientes URLs es de código abierto? ¿Sería capaz de generar resultados similares?

Http://closure-library.googlecode.com/svn/docs/class_goog_proto2_Serializer.html

Http://closure-library.googlecode.com/svn/docs/namespace_goog_date.html

Http://closure-library.googlecode.com/svn/docs/namespace_goog_events.html

Http://closure-library.googlecode.com/svn/docs/class_goog_gears_Database.html

Http://closure-library.googlecode.com/svn/docs/class_goog_ui_DatePicker.html

Estoy consciente de http://code.google.com/p/jsdoc-toolkit /

Pero me gustaría saber si el generador específico que usa Google está disponible para que lo use para mi propia fuente (que va a ser de código abierto, si eso importa).

Gracias de antemano...

Author: Homer6, 2010-09-29

5 answers

Cierre de Google + JSDoc

Como usted mismo mencionó en su comentario, se basan en JSDoc Toolkit para agregar anotaciones especiales utilizadas por el Compilador de Cierre para la comprobación de tipos y otras cosas, pero esto significa que también puede usar JSDoc encima del código de cierre para generar su documentación. Generar una salida con la apariencia deseada es solo cuestión de escribir su propia plantilla y hoja de estilo.

Las herramientas de cierre de Google son todas de código abierto, excepto para algunas partes que no se revelan en este momento. En cualquier caso, puedes echar un vistazo a la documentación y al código fuente y ver qué utilizan para generar Javadocs.

ExtJS + Ext-Doc

Otro que posiblemente podría echar un vistazo para inspirarse y ver cómo lo hacen es el documento en línea para ExtJS. Me parece un poco confuso navegar al principio, pero te acostumbras bastante rápido. Un proyecto de código abierto, Ext-Doc , genera documentación con un estilo, aunque ahora es un poco anticuado.

YUI Doc

Como menciona Matthew Manela , YUI Doc también produce bastante buena documentación en línea.

Mi consejo sería ir por JSDoc, ya que es el estándar de facto para muchas herramientas y refleja las prácticas de Java, pero realmente depende de lo que quieras.

 28
Author: haylem,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-05-23 12:34:04

Echa un vistazo a YUI Doc.

 2
Author: Matthew Manela,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2010-09-29 05:11:32

Para los que usan ExtJS, https://github.com/senchalabs/jsduck {[2] } es impresionante.

Para los que no usan ExtJS pero están familiarizados con Ruby, https://github.com/b-studios/doc.js {[2] } es genial.

 2
Author: Utensil,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-15 05:50:12

Una opción más nueva es http://documentation.js.org/ que usa JSDoc y genera HTML:

Documentación.js ejemplo

Puedes ejecutarlo con gulp https://github.com/documentationjs/gulp-documentation

 2
Author: Andrew MacFie,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-02-08 16:31:19

Dossier se está utilizando actualmente (2016) para construir la documentación de la Biblioteca de cierre . Es una herramienta fantástica que está construida sobre el propio Compilador Closure, por lo que lee toda la información de tipo usando el compilador y luego genera documentación en lugar de código.

Todavía hay algunas cosas que se están resolviendo sobre la interfaz de usuario de los documentos. Actualmente esa página de Closure Library docs parece bastante vacía you tienes que hacer clic en el menú " hamburguesa" símbolo en la parte superior izquierda para empezar.

 1
Author: owler,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2016-07-09 22:18:49