Developer pack

Open Source Pack

The packages we publish on npm, PyPI, NuGet, crates.io and Go modules, their licences and how to install them.

Generated on request from the live content of this site. Nothing about it is stored ahead of time. File name Tech-Style-Open-Source-Pack.pdf.

When we solve a problem that isn't specific to our business, we publish it. Seven packages on five registries (npm, NuGet, PyPI, crates.io and Go modules), plus platforms, plugins and tools on GitHub under MIT, Apache 2.0 or AGPL 3.0. Commercial licensing is available for the AGPL products.

Published on npm, NuGet, PyPI, crates.io & Go modules

Install and go

Seven packages, each taken from a problem we hit doing the work. JSON Compress and Secure Keystore are each one documented format in six languages, five of them on their registries and PHP installing from the repository. pgrecon is on PyPI under Apache 2.0. Four Strapi packages are on npm, and Content Sync Pro is also on the official Strapi Marketplace.

pgrecon

Migration reconnaissance for PostgreSQL. Oracle-to-PostgreSQL projects overrun because nobody measures the PL/SQL before committing to a date. pgrecon is the measurement. It parses your DDL and program units with a real grammar, applies 80 rules, reports every incompatibility with evidence and a remedy, turns the result into an effort estimate in person-days that shows its own arithmetic, and converts the schema it can prove into PostgreSQL DDL.

It never connects to your database. It generates a read-only SQL*Plus script your DBA reads and runs, and the analysis happens locally on the output files, so nothing but SQL*Plus ever runs against the database.

$ pip install pgrecon
Offline Analysis80 RulesEffort EstimationOracle 9.2 to 23aiPython 3.11+Apache 2.0

JSON Compress

Lossless JSON compression that is still JSON. Each key name is written once rather than once per record, arrays of like-shaped objects become columns and rows, and repeated values are written once. Record-shaped documents come out 45 to 75% smaller, and decompress returns exactly what went in, key order included.

It began as an internal helper for large result sets whose payloads were mostly repeated field names. We wrote it properly, specified the wire format, and implemented it six times: JavaScript, .NET, Python, PHP, Go and Rust.

$ npm install @tech-style/json-compress
$ pip install json-compress
6 Interoperable ImplementationsByte-perfect Round TripZero Dependenciesnpm · NuGet · PyPI · crates.io · GoCLI IncludedMIT

Secure Keystore

Encrypted secrets at rest, with no service to run: a directory of encrypted values and one user key that opens it. The user key is stretched with PBKDF2-SHA256 at 600,000 rounds, each value gets its own key through HKDF-SHA256, and each is sealed with AES-256-GCM and bound to its own name.

Version 3.0.0 (13 October 2026) brought format 3.0 and six implementations written from one specification (JavaScript, Go, .NET, Python, PHP and Rust), with the same CLI verbs, error codes and output, and each reads the others’ stores. The earlier secure-keystore-js 1.1.0 still backs credential storage in Strapi Content Sync Pro.

$ npm install @tech-style/secure-keystore
$ pip install secure-keystore
Format 3.06 ImplementationsAES-256-GCMPer-value KeysSame CLI in Every LanguageMIT

Strapi Content Sync Pro On Strapi Marketplace

Copy, migrate and live-sync content, media and data between Strapi environments. It handles the awkward parts of moving a CMS between staging and production: relations that must land in order, media that shouldn't be re-uploaded, and fields that should never cross the boundary at all.

It is published on the official Strapi Marketplace, listed under Content, Data, Database & Migrations and Import & Export, so it installs and updates alongside the rest of a Strapi project's plugins.

Bi-directional SyncMedia Sync (HTTP & rsync)Field-level PoliciesOn-demand · Scheduled · LiveBulk TransferHMAC-SHA256AGPL 3.0 + Commercial
$ npm install strapi-content-sync-pro

Two-Factor Auth Pro for Strapi New

Strapi ships no second factor for its admin panel. This plugin adds one: TOTP codes from any authenticator app after the password, with Strapi's own login handler still issuing the session. The same factor can guard website accounts on users-permissions, SSO sign-in included.

Administrators set the policy from Settings (optional, required, or required for chosen roles, with a grace period), and a coverage table shows who is actually protected. Since 0.7.0 an administrator can reset an admin’s or a website account’s authenticator from the panel, and every such reset needs a code from their own. One button ends every other admin session.

$ npm install strapi-admin-2fa-pro
Admin Panel & Users-PermissionsTOTP · RFC 623810 Hashed Recovery CodesRole-based PolicySSO Sign-in GatedAGPL 3.0 + Commercial

Strapi Provider Upload WebDAV

A WebDAV upload provider for Strapi v5. Point the media library at any WebDAV-capable storage (a NAS, a shared host, a self-managed box) instead of an object-store bucket you'd rather not pay for or depend on.

$ npm install strapi-provider-upload-webdav
Strapi v5WebDAVSelf-hosted StorageMIT

Strapi Remote Backup Pro CLI on npm

Back up and restore a Strapi instance without installing a plugin in it. It signs in to the same admin API the Strapi admin panel uses, so nothing is added to the CMS, nothing is redeployed and nothing runs inside your production process.

The engine and CLI work today: a live Strapi v5 instance backs up and restores into another, proved by a round-trip test against two live instances. The desktop app is designed but not built, and of eight destinations only the local folder is wired up.

No Plugin InstalledStrapi v5 Proved · v4 WrittenCLI on npmReviewable Restore DiffLocal Destination TodayAES-256-GCM ArchivesMIT
$ npx @tech-style/strapi-remote-backup-pro backup
Open-source platforms

Not just utilities: whole products

Five of our platforms are open source in full, licence and all, and several pieces of the Rutba estate are published as repositories of their own.

Actively developed

Rutba Suite

The next generation of our business software, sold as SaaS on rutba.io. Pieces of the estate are published in their own right: Rutba MTA, Rutba Media FileServer and Rutba Native Apps each have a public repository. The core engine, the app groups and the control plane are not published while we settle how the suite is licensed. Actively developed

Archived

Rutba ERP

The first generation, kept online as an archive: 22 Next.js applications on a shared API covering point of sale, inventory, manufacturing, orders, marketplace, helpdesk, HR, payroll and accounting. MIT, and yours to run yourself. New work happens in Rutba Suite. Archived

Actively developed

Rutba Office

A complete desktop office suite given away, in open beta: ten applications in one installer on twenty-one engine packages, among them OOXML, a spreadsheet calculation engine, a .pptx renderer, a PDF reader and writer with no dependencies, and a mail library that reads Outlook .pst and .ost in full. 2,712 engine tests at v2.4.0, none failing. AGPL 3.0, with commercial licensing available. Actively developed

Actively developed

Rutba Media FileServer

A masters-only media origin with on-demand resizing and LRU caching, plus an optional digital asset platform: index, versions, collections, MFA, WebDAV and AI enrichment. AGPL 3.0, with commercial licensing available. Actively developed

Actively developed

Rutba MTA

Multi-tenant email relay middleware with reputation-based pacing, suppression management, bounce capture and signed webhooks. AGPL 3.0, with commercial licensing available. Actively developed

Actively developed

pgrecon

Oracle-to-PostgreSQL migration reconnaissance: a read-only extraction script, grammar-based PL/SQL parsing, 80 rules with evidence and remedies, an effort estimate in person-days, and a converter that emits PostgreSQL DDL for what it can prove. Apache 2.0. Actively developed

More repositories

Also on GitHub

The published estate repositories, plus the smaller tools and plugins (some on a registry, some still repository-only). All open to read, fork and use.

The Rutba estate: the published repositories

Rutba

The workspace root: the design record, the repo map and the guardrail hooks

Rutba Native Apps

Windows desktop shells for POS, Mail and Studio, over the offline sync framework · AGPL 3.0 + commercial

Rutba MTA

Multi-tenant email relay middleware · AGPL 3.0 + commercial

Rutba Media FileServer

Masters-only media origin and asset platform · AGPL 3.0 + commercial

Tools & plugins

Strapi Permission Manager Pro

The earlier Strapi permissions plugin, since succeeded by API Guard Pro · MIT

Strapi API Guard Pro

Record- and field-level access rules for the Strapi API: tenant isolation, ownership filters, response field stripping, observe before enforce · alpha

Strapi To Strapi Data Sync

The earlier Strapi-to-Strapi sync plugin, since succeeded by Content Sync Pro · MIT

Strapi Remote Backup Pro

Agentless backup and restore for Strapi · CLI on npm, desktop app in development

Because the alternative is rewriting it

Every one of these packages started as internal code: a keystore because credentials sat in config files, a sync plugin because staging and production kept drifting, a media server because six pre-generated variants per image cost more disk than they earned, a migration assessor because Oracle projects set dates before anyone read the PL/SQL, and a backup tool for Strapi hosts we could not deploy to.

Publishing them costs us documentation time and gains us three things: the discipline of writing an interface someone else can use, the scrutiny of people who don't already know how it works, and the certainty that we can still use our own tools if our priorities change.

Small utilities get permissive licences (MIT, or Apache 2.0 where patent grants matter) because a restrictive licence on a keystore helps nobody. Whole products, and the Strapi plugins sold as products in their own right (Content Sync Pro and Two-Factor Auth Pro), are AGPL 3.0 with a commercial licence beside it: free to use and study, paid for only by those who want to ship them closed or host them for others.

Using our packages?

Libraries free for commercial use under MIT / Apache 2.0 · Commercial licences for the AGPL products and plugins · Issues and pull requests welcome on GitHub · Commercial support and custom work available · Happy to talk through an integration before you commit

Contact

Talk to us

Tech Style Ltd is a UK technology company building enterprise software, procurement intelligence and AI platforms. Tell us what you are trying to do and we will tell you honestly whether we are the right people for it.

This document onlinewww.tech-style.co/open-source
Websitewww.tech-style.co
Enquirieshello@tech-style.co
Productswww.tech-style.co/products
Partner programmewww.tech-style.co/partners
This document was generated on request. It is built from the live content of tech-style.co at the moment you downloaded it, so it can never quote a price, a version or a status the site has since moved on from. Request a fresh copy any time at www.tech-style.co/downloads.

Take this away as a PDF

Open Source Pack, typeset when you click, from the content above.