Dash, Zeal and DevDocs: a way to organize your API repository

Dash, Zeal and DevDocs: a way to organize your API repository

Application development interfaces for Java, JavaScript, C, C++, PHP, HTML, Ruby, Python, Scala, Go... There are endless examples of syntax and tools such as editors, development frameworks and libraries which are difficult to harness if you don't have a browser to sort their use.

11 Apr. 2016

The world of software development has jumped into a Ferrari on a German highway. There is an increasing number of programming languages, development frameworks, server-side interpreters, databases and APIs which you need to handle to be able to launch competitive projects. Following from this major boom in options, new management and productivity tools have been created. The organizers of application programming interfaces are a perfect example of this.

The market currently offers several organizers for APIs, syntax and framework technical documentation and all kinds of book shops or libraries. The main organizers are Dash, Zeal and DevDocs. They are possibly the most commonly used solutions by the developer community. And this popularity helps to evolve the tool quickly and efficiently. 

Dash: access to over 150 APIs

Dash is a tool for iOS and OSX which developers can use to browse technical documentation for more than 150 APIs. This organizer provides documentation offline. Users choose what they wish to download and Dash does it for them. Developers can also create their own technical information documents or request third-party documents. 

At the moment, Dash contains technical information about the entire Apple universe (iOS, OSX, watchOS and TVOS) as well as JavaScript (AngularJS, Ember.js, Express.js, Node.js, jQuery, jQuery UI, jQuery Mobile, Knockout.js, MongoDB, D3.js...), PHP (CakePHP, symfony, Zend Framework…), Django, Java, Microsoft .NET, and CMS such as Wordpress and Drupal… The full list of solutions is astounding.   

Dash can also be integrated into third-party package managers so as to request and download any special and necessary documentation for a project. This includes the packages for the following: Ruby (Ruby Gems), Scala, Java, C, C++, C#, Objective-C, Python, JavaScript, HTML, Dart, Go and PHP. Additionally, you can download documentation from Stack Overflow, the page for developers. If you create docsets, you can share them with other users through a personalized URL.

In addition to searching for and downloading technical documents, Dash allows you to manage code fragments. This feature offers advantages that are very useful for developers:

●      Storage and reuse of code fragments.

●      Labelling of fragments for their classification and sorting.

●      Syntax highlighting.

In June 2015, Dash 3 (version 3) was launched for the Mac OSX operating system; this is the latest and biggest update to date. Dash 3 incorporates some fundamental changes and additions at the request of the users:

●      Less disk space used thanks to a new archiving system for technical documentation; documents are only unarchived when they are going to be used. Dash's creators estimate that ten times less space is now used.

●      Automatic tab restoration: the tool resumes the work session where you left it off.

●      Configuration synchronization through the Mac, including installed technical documentation, search profiles and favorites.

●      Opening local or online pages.

●      Open-source, configurable annotations server: developers can add annotations with comments and examples and configure them as private only or completely public. 

Zeal: Dash for Linux and Windows

Inspired by Dash, this is an offline browser of technical documentation for Linux and Windows operating systems. Zeal capitalizes on the market outside the Apple environment. Zeal makes it possible for development teams to always be able to access documents about their own as well as third-party APIs without having to be online, while benefitting from the integration of text editors such as VIM, Sublime Text, Emacs and KTextEditor or integrated development environments (IDEs) such as IntelliJ IDEA by using plugins:

●      Plugin for integrating Sublime Text. Packages for the integration of editors or IDEs can be installed using package control (Git, the well-known version control tool, through the command git clone; alternatively, you can do it manually (download the Zeal package from its website on GitHub, unzip the file and copy the folder to the Sublime Text directory).

●      Plugin for Emacs.

●      Plugin for VIM.

Zeal also has other interesting characteristics:

●      Generate your own technical documentation.

●      Free and open-source tool.

In a very similar way to Dash, it supports all types of documents: programming languages such as JavaScript, Java, Ruby, Python, C, C++, C#, PHP, Dart, Go, .NET and HTML. And solutions such as AngularJS, BackBoneJS, EmberJS, KnockoutJS, Bootstrap, CakePHP, Laravel, MongoDB, Ruby on Rails, symfony, Drupal, Wordpress, Xaramin and jQuery. In total, 

Zeal is pretty easy to install. If your operating system is Ubuntu, you only need to run these three codes:

$ sudo add-apt-repository ppa:zeal-developers/ppa
$ sudo apt-get udpate
$ sudo apt-get install zeal

To install in Windows download the installer, run it and follow the instructions.

DevDocs, an offline browser with extension for Chrome

DevDocs, is another option for browsing technical documentation about different programming languages, software development tools and APIs. It was created by Thibaut Courouble, a developer for Shopify (online business creator) and CSSFlow (one of the most interesting pages with free widgets in HMTL5, CSS3 and Sass for front-end development of user interfaces).  

These are some of its defining characteristics:

●      Offline API browser: you don't need to be connected to the internet.

●      It has an extension to connect to Chrome.

●      Free and open source.

●      Integration plugins for editors such as Sublime Text, Atom and Brackets.

More information on APIs here

Follow us on @BBVAAPIMarket