TangleMesh as a 3rd layer application (TaaS)

The system architecture is constantly changing. With new possibilities and innovations emerging, new architectural concepts are constantly being developed. The new decentralized technologies offer new revolutionary concepts for the development of applications.

In the past, enterprise software applications were programmed using the client-server principle. In this 2 tier architecture there is a client on which the GUI works and a server which contains the database and business logic. This model has evolved over time. More layers have been added, the software is cut vertically instead of horizontally, the applications are fragmented into microservices and nowadays the possibilities of cloud solutions are often used.

For the first time, the cloud has provided a practical way to generally cut software into several separate areas that include not only the software but also the hardware. The three most common levels are:

1Infrastructure as a Service (IaaS) — At this level, hardware is delivered as a service for computing power, storage, networking and similar functionalities.

2Platform as a Service (PaaS) — Application platform components such as application runtimes, databases and messaging infrastructure are offered as a service.

3Software as a Service (SaaS) — core business applications like email, CRM, HCM or office ERP applications.

The abstraction layers of mordern cloud environments

Most enterprise applications today are built on this foundation. This architecture offers a fault tolerant and highly scalable availability which are necessary attributes of all enterprise applications.

The decentralized technologies that are now becoming more and more practical, however, offer countless new use cases. In order to be able to use this technology in classic or new applications, we would like to add a new level to this model: Tangle as a Service (TaaS).

With our service we offer a simple interface to connect classic system architectures with the decentralized world of the tangle. New functionalities such as micropayments can be implemented in IOTA via a simple interface. No special hardware, software or other requirements have to be purchased. As with the other three levels, new use cases and applications can be created inexpensively, without much effort and without in-depth know-how.

We take care of all underlying levels and requirements to offer the highest possible developer experience.

The abstraction layers of mordern cloud environments with a DLT as backnone

So single individuals as well as start-ups or big international companies can profit from the possibilities of the tangle. No technical experts or dedicated IOTA developers have to be hired. In addition, a prototype or working software can be developed without great initial efforts and purchases.

Our documentation helps to achieve a quick start and a steep learning curve.

As already mentioned, this makes countless applications possible in a very short time. In order to live up to this claim, we have developed and published a use case prototype within about a week.

This is a voucher service with which user experience friendly vouchers can be created. You can read more about the functionality and the service in this article: Create IOTA vouchers with ease.

Example code of creating a withdrawal via the tangleMesh:api

In this article we would like to discuss the technology and the implementation of the tangleMesh:api.

This service was written in NodeJs and has a SPA as interface to the customer. The web application communicates with our developed voucher API via an API interface. This Api takes care of the “user recognition” and creation of the vouchers. All areas related to the deposit and withdrawal as well as the tracking of transactions are only handled via API calls to tangleMesh:api. Essentially, our voucher service uses only 3 API endpoints:

1 /references/<USER_IDENTIFIER>/<CHANNEL_IDENTIFIER> — To create a new Deposit address to recharge the voucher.

2/references/<USER_IDENTIFIER>/<CHANNEL_IDENTIFIER>/<ReferenceIdentifier> — This request is used to check whether the IOTA payment has already been received.

3/withdrawals/<USER_IDENTIFIER>/<CHANNEL_IDENTIFIER> — This endpoint is used to initiate a payout to the user’s address when the voucher is redeemed.

This example shows how easily and with how few requests a connection to decentralized technologies can be established. In the future, however, it will not only remain the case for payments of IOTAs via the tangle. In the future, our service will be able to map further functions of the tangle via a simple interface for further use cases.

To continuously improve our product, we are of course very interested in your suggestions for improvements and requests for functions regarding missing functionalities. Therefore, please write us in our Discord or use our contact form.

Thanks for reading this article!