Open Source CLI Tooling
Patrick Kelly
As a Rust shop, at Sideko we naturally chose to build our CLI in Rust (https://lnkd.in/dX5BcamR). During our journey toward the v1 CLI release, we discovered several exceptional open-source tools that enabled features we hadn't initially thought possible. These powerful open-source projects form just a part of our development foundation. Sharing these links to promote the tools and to help anyone in my network who might be evaluating different languages for their CLI development.
🏗️ cargo-dist (https://github.com/axodotdev/cargo-dist)
Automates developer distribution completely. With no additional engineering effort, the Sideko CLI becomes available for installation across all operating systems via shell, PowerShell, npm, Homebrew, and MSI installers. It also includes a built-in update mechanism for users to easily access the latest versions.
🔐 keyring-rs (https://github.com/open-source-cooperative/keyring-rs)
Cross-platform library that manages the secure storage and retrieval of passwords and other sensitive data using platform-native secure stores. While many CLIs store API keys and credentials in plain text, leaving them vulnerable to security breaches, the Sideko CLI automatically stores user API keys in the most secure location for each platform:
Linux/FreeBSD/OpenBSD: DBus-based Secret Service
macOS/iOS: Local keychain
Windows: Windows Credential Manager
🐍 maturin (https://github.com/PyO3/maturin)
cargo-dist doesn't support Python builds natively, we use Maturin to automatically deploy our CLI to PyPI, making it easily accessible for Python users.
Scale your DevEx and Simplify Integrations
Read More
Sideko Releases C# SDK Generator
Sideko's new C# SDK generator, leveraging C#'s growth (+1.43% in TIOBE), creates invisible, fully tested, strongly typed, and auto-authenticated SDKs with customizable code and complete documentation.
Can APIs Be Beautiful?
Sideko's team, with insights from Keith Casey, explores why some APIs "feel right" by connecting API design trends to art and architecture movements, aiming to articulate the concept of "beautiful" APIs.