Aman Khanna

Building open-source software used by thousands every day.

I am a software developer based in the UK, focused on contributing to the open source community and shipping real products. I care about software quality, freedoms and accessibility.

OpenDeck
OpenDeck is a desktop application for the Stream Deck and similar devices. I built it to provide powerful tools to Linux users by staying compatible with the existing Stream Deck plugin ecosystem, and it drives the workflows of 2,500+ daily users.
GitHub Repo stars
Tacto
Tacto is a productivity platform that builds on OpenDeck's foundation, turning smartphones into powerful control surfaces. It's designed to be affordable, pair fast and be secure.

Expertise in production

OpenDeck and Tacto demonstrate systems engineering in action.

OpenDeck

~5,000 LoC Rust backend + ~2,500 LoC Svelte frontend

Concurrency

Communication with each plugin, as well as with the application frontend, is handled in parallel, each on a separate worker thread.

Why: Communication with plugins is event-driven, which prevents a single plugin from being a point of failure for the entire app.

Learned: How to build systems that manage long-lived connections with dozens of clients simultaneously

Synchronization

Persisted data is accessed through a single shared object with locks to coordinate concurrent reads and writes.

Why: The app is highly concurrent, every thread touches shared state, and many plugins can target a profile at once.

Learned: How to coordinate shared-state concurrency while preventing data corruption and avoiding deadlocks

Fault tolerance

Rust typing and thread-safety boundaries reject malformed plugin data early and safely.

Why: Earlier iterations of the application taught me that, in a stack of many moving parts, technologies that enforce correctness are essential.

Learned: How to use static typing and strict contracts to make software resilient to unpredictable external data

Tacto

Commercial product built on OpenDeck's foundations

P2P networking

Reliable WebRTC-based flows support the product, removing USB cable assumptions while keeping latency practical for daily workflows.

Why: Despite additional complexity, communicating directly offers lower latency, reduced costs and improved user privacy and security.

Learned: How to use distributed networking technologies and stacks to enable communication in unpredictable network configurations

Secure licensing

Payments, licensing, accounts, and user data are managed as needed for a production SaaS product.

Why: Sustainable product development requires secure billing and entitlement logic that integrates cleanly with application behavior.

Learned: How product architecture changes when revenue, access control, and user management become core requirements

Commercial compliance

Terms of service and a privacy policy ensure the product meets all requirements for a commercial offering.

Why: Operating as a commercial entity requires adherence to legal and regulatory standards.

Learned: How to make a commercial product ready for public use while managing liability

GitHub activity graph

I'm active throughout the year, working hard on my projects and in the open source ecosystem.

Live GitHub contribution graph for nekename

Other projects and what I learned from building them

Each one helped me build a part of my engineering skillset.

Foliage

2024

Rust

A compiled, strictly-typed programming language with lexer and parser scaffolding.

What I learned: I learned about compiler design, abstract syntax trees, and type systems.

Emergent

2024

SvelteKit, TypeScript, OAuth, Matter.js

An open-source web-based game engine and editor with Git-powered version control.

What I learned: I learned about managing complex state in a browser-based IDE and wrapping Git to be web-friendly.

Muffin

2023

TypeScript, Deno

An HTTP proxy that rewrites HTML URL-bearing attributes to route traffic through a controlled host.

What I learned: I learned about the intricacies of HTTP and other aspects of the web platform.

CrowPanel ESP32 PlatformIO Starter

2024

C/C++, Embedded

A reproducible PlatformIO base for my projects involving a 7-inch ESP32 display, using LovyanGFX.

What I learned: I learned about working closer to the hardware in C++ and the challenges of embedded systems.

Oaxaca

2022

Java, Networking

A Minecraft server software implementation for protocol version 47 (1.8.x).

What I learned: I learned about low-level packet handling, binary data representation, and network protocol design.

LeafyGuesser

2024

SvelteKit, TypeScript, Google Maps, Firebase

A free multiplayer GeoGuessr alternative with Street View gameplay.

What I learned: I learned about Google Maps API integration and syncing multiplayer state in real time using Firebase.

Expertise and focus

Languages and frameworks

Skill icons for Rust, TypeScript, Deno, HTML, Svelte, Tailwind CSS, and Python

Tooling and platforms

Skill icons for Linux, Arch, GitHub, VS Code, IntelliJ IDEA, Android Studio, and Cloudflare

Current direction

  • • Harnessing the potential of neural networks for making technology more accessible
  • • Scaling Tacto's commercial avenue to keep OpenDeck development sustainable
  • • Exploring work experience opportunities in software engineering