Skip to content
View arnelirobles's full-sized avatar

Block or report arnelirobles

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
arnelirobles/README.md

Arnel Robles

.NET engineer, 14 years in production software. I build headless CMS, event-driven backends, and developer tooling.

Everything below is open source and self-hostable, under @BaryoDev. No paid tier, no seat cap, no metered anything.


Upstream

Merged fixes in libraries I run in production. Each was found by using the thing, not by browsing for issues.

ProjectWhat was wrong
umbraco/Umbraco-CMS★5.2kInstances sharing a database failed each other's requests registering the same OpenIddict application. #23599, #23727
testcontainers/testcontainers-dotnet★4.4kMongoDb replica-set init was not idempotent, so a reused container hung against a one-hour timeout. #1731, #1735
JasperFx/marten★3.4kHardDeleteWhere could not remove already soft-deleted rows, and returned cleanly either way. #5215, #5202, #5240

upstream-fixes holds a runnable reproduction for each, against published NuGet packages, so you can watch the bug appear on one version and disappear on the next rather than take my word for it.


barakoCMS

Open-source headless CMS for .NET. Event-sourced on Marten and PostgreSQL, multi-tenant, user-defined content schemas, opt-in modules, an event-triggered workflow engine, and a Next.js admin UI.

115 endpoints, 13 modules, 594 tests against real PostgreSQL and MinIO through Testcontainers. MPL-2.0, and every module is included rather than sold separately.

Live at playground.baryo.dev/barakocms. Typed client:barako-client. baryo.dev itself is rendered from it.


.NET libraries

Each solves one problem, ships to NuGet, and is tested rather than described.

Project
Verdict★10Result pattern with a zero-allocation core. The allocation promise is the product, so it is enforced by benchmark rather than asserted in a README. Nine test projects.
MapsicleObject mapping. Fourteen test projects, one per integration package, plus performance tests. Published benchmarks say where it loses as well as where it wins.
CaromResilience: retry, timeout, circuit breaker, bulkhead, rate limiting, fallback. Zero dependencies, lock-free state, no allocations on the hot path.
TalaanSpreadsheet and CSV reader for .NET, xlsx and CSV, zero dependencies. barakoCMS consumes it as a published package rather than a project reference, so the packaging is exercised for real.

Umbraco packages

Project
umbraco-pwa★1Turns an Umbraco site into an installable, offline-capable app. On the Umbraco Marketplace. 86 tests.
umbraco-read-aloudRead-aloud for an Umbraco site using Microsoft Edge neural TTS.

TypeScript and JavaScript

Project
rnxjs★1Reactive UI framework. Bootstrap-native, no build step. 646 passing tests. Worked examples.
rnxORMNode.js ORM, integration-tested against PostgreSQL, SQL Server and MariaDB rather than mocked.
pwa-kitInstall prompt for Android and iOS, a network-first service worker, and the helpers around them.
read-aloudRead-aloud for any site. Headless controller, web component, word highlighting.
feed-slurpRSS and Atom fetching in the browser.
dopaminejsGame feel engine: juice, rewards and feedback for HTML5 games. Built with it.
BaryoDev.Libraries.JavaScriptZero-dependency TypeScript utilities on npm.

Tooling in Go

Project
BaryoVMPaaS-style deploys onto your own cheap VMs. Agentless, over SSH, one binary. Every BaryoDev deploy goes through it, which is how its gaps get found.
Baryo.CLILocal AI chat on Docker Model Runner. Models run on your machine, no API keys, nothing leaves the laptop.

How I work

Tests that cannot fail are the defect I look for first: a mock returning what the real dependency never returns, an assertion satisfied by a type's default value, a benchmark that prints and exits zero. Before trusting a gate I break the thing it guards and check it goes red.

Decisions that are expensive to reverse get written down with the reasoning, not just the outcome, so the next person can disagree with the argument rather than guess at it.

AI-assisted daily, held to the same gates as everything else.


Stack

Languages C#, TypeScript, JavaScript, Go, SQL Backend .NET 8 to 10, ASP.NET Core, REST and GraphQL, microservices, event sourcing, CQRS-influenced design Messaging RabbitMQ, SQS, SNS, webhooks, background jobs Data PostgreSQL, SQL Server, Marten, Redis Cloud AWS (CDK, ECS, Fargate), Azure (Functions, App Services, DevOps), Oracle Cloud, Docker Testing xUnit, NUnit, Moq, Testcontainers, Playwright, Vitest, BenchmarkDotNet, security scanning in CI


📫 arnelirobles@gmail.com · 🌐 baryo.dev · ✍️ baryodev.medium.com

Pinned Loading

  1. BaryoDev/VerdictBaryoDev/VerdictPublic

    Start with zero-allocation core. Scale to enterprise features through opt-in packages. Never compromise on speed.

    C# 10 1

  2. BaryoDev/barakoCMSBaryoDev/barakoCMSPublic

    A headless CMS suite for .NET 8: an event-sourced engine, opt-in modules, an admin UI, and a PWA kit.

    C# 3 3

  3. BaryoDev/CaromBaryoDev/CaromPublic

    Carom is a zero-dependency resilience library that enforces best practices by default.

    C# 1

  4. BaryoDev/dopaminejsBaryoDev/dopaminejsPublic

    Game Feel Engine for the Web - Add juice, rewards, and feedback to HTML5 games.

    JavaScript

  5. BaryoDev/MapsicleBaryoDev/MapsiclePublic

    Mapsicle is a high-performance, modular object mapping ecosystem for .NET.

    C#

  6. BaryoDev/umbraco-pwaBaryoDev/umbraco-pwaPublic

    Turn an Umbraco site into an installable, offline-capable app, and see who installed it from your own backoffice. Free, self-hosted, no third-party dashboard.

    C# 1 2