News

Introducing Abscissa, a security-oriented Rust application framework by iqlusion

2 min read

Earlier this month, iqlusion, an infrastructure provider for next-generation cryptocurrency technologies, announced the release of Abscissa 0.1, a security-oriented microframework for building Rust applications. Yesterday, the team announced the release of Abscissa 0.2.

Tony Arcieri, the co-founder of iqlusion, wrote in a blog post, “After releasing v0.1, we’ve spent the past few weeks further polishing it up in tandem with this blog post, and just released a follow-up v0.2.

After developing a lot of Rust applications ranging from CLI to network services and managing a lot of the same copy/paste boilerplate, iqlusion decided to create the Abscissa framework. It aims to maximize functionality while minimizing the number of dependencies.

What features does Abscissa come with?

Command-line option parsing

Abscissa comes with simple declarative option parser, which is based on the gumdrop crate. The option parser encompasses several improvements to provide better UX and tighter integration with the other parts of the framework, for example, overriding configuration settings using command-line options.

Uses component architecture

It uses a component architecture for extensibility, with a minimalist implementation and still is able to offer features like calculating dependency ordering and providing hooks into the application lifecycle.

Configuration

Allows simple parsing of Tom’s Obvious, Minimal Language (TOML) configurations to serde-parsed configuration types that can be dynamically updated at runtime.

Error handling

Abscissa has a generic ‘Error’ type based on the ‘failure’ crate and a unified error-handling subsystem.

Logging

It uses the ‘log’ crate to provide application-level logging.

Secrets management

The optional ‘secrets’ module contains a ‘Secret’ type that derives serde’s Deserialize, which can be used for representing secret values parsed from configuration files or elsewhere.

Terminal interactions

It supports colored terminal output and is useful for Cargo-like status messages with easy-to-use macros.

Read the official announcement for more details on Abscissa. You can also check out its GitHub repository.

Read Next

Introducing Ballista, distributed compute platform based on Kubernetes and Rust

Fastly CTO Tyler McMullen on Lucet and the future of WebAssembly and Rust [Interview]

Rust 1.36.0 releases with stabilized ‘Future’ trait, NLL for Rust 2015, and more

Bhagyashree R

Share
Published by
Bhagyashree R

Recent Posts

Top life hacks for prepping for your IT certification exam

I remember deciding to pursue my first IT certification, the CompTIA A+. I had signed…

3 years ago

Learn Transformers for Natural Language Processing with Denis Rothman

Key takeaways The transformer architecture has proved to be revolutionary in outperforming the classical RNN…

3 years ago

Learning Essential Linux Commands for Navigating the Shell Effectively

Once we learn how to deploy an Ubuntu server, how to manage users, and how…

3 years ago

Clean Coding in Python with Mariano Anaya

Key-takeaways:   Clean code isn’t just a nice thing to have or a luxury in software projects; it's a necessity. If we…

3 years ago

Exploring Forms in Angular – types, benefits and differences   

While developing a web application, or setting dynamic pages and meta tags we need to deal with…

3 years ago

Gain Practical Expertise with the Latest Edition of Software Architecture with C# 9 and .NET 5

Software architecture is one of the most discussed topics in the software industry today, and…

3 years ago