Skip to main content

What makes Kreya a good Insomnia alternative

The first version of Insomnia was released in 2016. It was later acquired by Kong. The simplicity of Insomnia heavily inspired the UI of Kreya. Here is why Kreya is a good Insomnia alternative and why you should consider switching from Insomnia to Kreya.

Kreya vs Insomnia comparison: What are the differences?

Limited gRPC support

Using the Insomnia gRPC feature, it is sometimes obvious that adding support for gRPC was an afterthought. Kreya supports a lot of gRPC features that Insomnia lacks, such as server reflection, ability to refresh protobuf definitions, environments, templating and more.

Authentication

Kreya supports several authentication mechanisms such as OAuth2 or Windows authentication, which Insomnia also supports. Reusing the same authentication configuration in Kreya is easy, as there is no need to duplicate authentication information for different requests. Comparing this with Insomnia, it is much more of a hassle to reuse the same authentication configuration for multiple requests, as the authentication parameters must be copied each time.

Project and directory settings

A feature that makes Kreya a joy to use are the project resp. directory settings. It allows users to specify default settings for multiple operations in a folder or the whole project. For example, if all operations in a project use the same host or the same authentication configuration, it only needs to be specified once. This even supports templating and environment specific values, so switching between environments works flawlessly after the initial configuration. Insomnia does not have a comparable feature.

Data storage and sharing

Insomnia stores the data in a single database file in the appdata directory. Sharing Insomnia projects continuously with other users requires a paid plan. Storing a Insomnia project in a VCS (eg. alongside the actual API code) is not easy, as it would require constant manual exports and imports. In contrast, Kreya explicitly stores the data in a format that is easy to sync with for example git. Case in point is that Kreya does not store stringified JSON (which could cause a lot of merge conflicts) and allows users to choose where the data is stored. Users can choose the software responsible for syncing themselves and are not locked into using Kreya.