What’s new in Compodoc v1.0.0

Vincent Ogloblinsky
Vincent Ogloblinsky
3 min readApr 5, 2017
© Glen Noble — Unsplash.com

I started and release a few months ago my first big open-source project, a documentation tool for Angular applications (https://medium.com/vincent-ogloblinsky/compodoc-documentation-tool-for-angular-2-applications-44ec650e01a8).

The feedbacks were very good, and ideas of improvement or bugs come very quickly on the Github repository.

I have working on several enhancements during the last months that make now Compodoc a very interesting alternative to TypeDoc for Angular projects.

Here are some details of most of them :

Routing graph

Compodoc now support default Angular routing configurations with “routing modules” and “lazy loading” for example.

The routing demo project has for example one lazy-module and others modules that are directly loaded during the bootstrap of the application.

Routing graph with lazy-module and routing module definition.

It helps to understand very quickly which component is routed, how many routes are availables, which one is lazy loaded etc.

The limitations are for now support of variables in routes array definitions. This will be fixed soon.

const APP_ROUTES: Routes = [...ROUTES];

Watch flag

During documentation of a project, it is far useful to have a dynamic documentation updated with last details written by the developer.

Compodoc has now a “watch” feature. Just launch the tool with -w flag and let the magic happen.

Additional documentation

Extending the generated documentation is also interesting for providing additional informations about the main features of the application.

With version 1, you can supply markdown files located in a separate directory, and a special entry in the menu will appear.

compodoc to @compodoc/compodoc

I have moved compodoc to a scoped package, with also others related projects like ngd from Wassim Chegham.

So now for the installation, you just need to use the scope @compodoc :

npm i @compodoc/compodoc --save-dev or -g

Website

I also create a dedicated website for hosting the documentation in a easiest way than a simple README file on github.

What’s next ?

The roadmap for the newt months is dedicated to :

  • handle AngularJS 1.6.x projects with TypeScript
  • move “Modules graph” from a static image to a svg graph, may be using vis.js
  • support of more general TypeScript/ES6 syntax

We appreciate your feedbacks. Please open any issue you may encounters and pull-requests are more than welcome.

Follow Vincent Ogloblinsky / @vogloblinsky for getting updates.

Resources

--

--

Vincent Ogloblinsky
Vincent Ogloblinsky

Frontend architect at SII Ouest / Rennes / Brittany, France. In ❤ of (Java || Type)Script, web components, Angular, HTML5. Trainer, speaker…