Advanced REST Client blog
Blog for Advanced Rest Client - a Google Chrome application.

Moving Data From Advanced REST Client Chrome Application To The Native Application

If you are ready to install new Advanced REST Client native application probably you would like to move your data along with you.
Unfortunately there's no automatic way to move the data from Chrome application to new native application. This has o be done manually by exporting the date to file (or to Google Drive) and then import it in the new app.

Let's start with installing Advanced REST Client native application if you haven't done that already.

Install

After new application is installed go to ARC Chrome application and export the data.

ARC components in Mulesoft's API Console

I am proud to announce that web components that are used to build ARC are now also used to build Mulesoft's API Console.

MuleSoft's API Console is a full-fledged API documentation tool that generates mobile-friendly web documentation based on RAML (Restful API Modeling Language) documents. It is an open source, community driven application that can be easily adjusted to any environment.

Background


While working on atomizing Advanced REST Client to a set of web components internally in the company we've realized that both products can share the same code base. So over a year ago I've started working on new version of the API console. The task was to create a best in class usability for API documentation tool. That includes mobile friendliness, ergonomic design, ease of reading documentation and learning the API structure. From a developer standpoint API console should be easy to use as a standalone application ready to run on a web server but also as a embeddable HTML element that can be added to existing products (like existing web pages with API documentation).

The result


API console is a web application based on web components standard. Therefore it can be used in any web environment and can work with any web framework (though some frameworks - like React - may require additional customizations). We've created a set of tools to make it even easier to build the API console from a RAML file. Our CLI tool can be used to generate production ready standalone website with API documentation or to generate development preview of the documentation while working on RAML. There also is the api-console-builder npm module that can be used in node environment to build the same API console.

Try new API console and design your APIs with RAML. I'll be happy to hear a feedback from you.

New Advanced REST Client native application - install today

New version of Advanced REST client is ready! It is installable native application available in all major platforms:
- Windows (32 and 64 bit)
- MacOS
- Linux (deb and rpm)

You can install it from install.advancedrestclient.com. Do it today and move your data from legacy Chrome application to new native application.

Changelog v11

- Tabs in the request panel are finally there. No need to open many windows of the application (though you still can)
- Automatic updates that can be turned off if necessary 
- Cookie manager - now you can create / edit / delete cookies in the application. Cookies are applied to matching request domain and path
- Web session setup - open URL in app's internal browser to create a web session. Cookies from this session are automatically applied to the request

Termination of Chrome Apps - ARC native application

Some time ago Google decided to terminate support for Chrome apps in Chrome. Therefore Advanced REST Client will be removed from Chrome.

For last few months I've been preparing the app to this by externalizing parts of application code to a number of web components. Web components based on the native platform helps me build ARC as a different applications running in different web environments (web, node, Chrome / Firefox extensions etc). Last week I've moved rest of the application logic to external component. This enabled me to work on alternatives for ARC as a Chrome App.

Now I'm proud to announce that currently I'm finishing testing Advanced REST Client native application. The app is available on all major platforms:

- Windows (32 and 64-bit)
- MacOS
- Linux - as a rpm and deb package (both 32 and 64-bit)

Because the application is still being tested I am not going to publish installation URL to you at this time. When I'm sure that the application is bugs free I'll update the Chrome Application with information about migration path and post another article on this blog.

Action to be taken now

Because Chrome Apps will be forcibly removed from Chrome your data will disappear as well. To not lost your data please use the export option today to export the data to a file or to Google Drive.

Note: Native application has different Google's Client ID and therefore it is not possible to open Google Drive file from the application ui. You'll have to authorize the application within the app UI and then go to Google Drive web app and choose "open with" option for the file.

Also you can export the file to Google Drive and later simply download it and import as file.


The timeline 

In a month (or so) from now Chrome applications will be removed from Chrome. Replacement application is ready but it's not fully tested. Also it still need a code verification certificate (I am working on this issue) before stable release.

In 2 weeks time new application should be released in stable channel. At the same time Chrome application is released with information about termination of Chrome apps and path to migrate.

In a month Chrome apps are terminated and hopefully all users have been migrated to new application.

See you in the new app!

New design proposal

Recently I've started working on a new design for ARC. It was caused by necessary changes in the body panel (especially multipart form).

I've come up with the following:


More of the mockup: https://xd.adobe.com/view/9fefbc1d-18fa-43e3-afb5-7b8af5efe586/

I am really interested your opinion. So please, if you have any thoughts about it, leave a comment below or commend directly on mockup page.

Thanks!

Web Components @ scale - my topic at the DevFest 2016 conference in Warsaw, Poland

Hi developers.

I'm proud to be a speaker at the DevFest 2016 conference in Warsaw, Poland.
The conference is this Saturday in Praha Cinema. My topic will be about building web applications that scales using web components. I’m going to talk about development workflow with web components, using platform over frameworks and how Polymer 2.0 is shifting from being framework to being support library for web components removing all framework alike functions.


The Advanced REST Client application is now a Polymer - or rather web component - application. For last year I managed to rebuild the app from GWT framework to web components. I have also an experience in other apps build with Polymer. But the case of ARC showed me that wrong architectural approach - even with web components - may end up with building another monolith that just use another framework. But web components are made to be a real building blocks of modular application.

If you are in Poland at the time I strongly encourage you to be at the conference. Many great speakers are managed to be there and many great talks are being prepared. If you will, just say hi to me :)

See you at DevFest!

PouchDB read optimisation - reducing time of data queries

Recent ARC version has so called API assistant. It's a helper program which queries history data for relevant information when the URL or HTTP method changed. It reads history of requests made to particular method (meaning endpoint and method) and analyse the statistics data about this method like connection time or response size.

Recently I was asked how it will behave when the app stores a lot of data. I mean hundreds of thousands of records. Then it occurred to me that I haven't performed test for this amount of data. It started a series of changes in the code of the assistant which finally allowed me to shorten database query time by 98.52%!