Skip to content
View darkdi's full-sized avatar

Block or report darkdi

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.

Content in all repositories owned by your account will be closed.
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
darkdi/README.md

Backend for a living: 1C-Bitrix and Bitrix24, PHP, MySQL, fourteen years of it. Moscow. The rest of my time goes to a game and to other people's codebases.

DarkVell

github.com/darkdi/darkvell

An open-source browser MMORPG. Phaser on the client, an authoritative NestJS server on the other side, TypeScript across npm workspaces. Authoritative means the server owns the world state and the client only asks: no trusting the browser about where you are or what you hit. That constraint is most of the interesting work, and it is why realtime PvP is the part I care about getting right.

Reading other people's code

I contribute bug fixes and API documentation corrections to other people's projects. The bugs range from infinite recursion and broken Windows paths to object comparisons that throw on valid input and layer-name handling that silently skips work. Sometimes the mismatch is between a comment and a signature; sometimes it is between what the code is meant to do and what it actually does.

I use language-specific checkers to find suspicious patterns, then inspect each finding in context: the surrounding code, callers, and history. A checker result is a lead, not proof. For behavior changes, I reproduce the failure and add regression tests where practical, checking that they fail before the fix and pass after it. False positives go into a separate record so the tools can improve. The aim is a small, useful patch that a maintainer can verify.

What came out of it

Merged pull requests across open-source projects, among them:

Project Contribution
Apple — Core AI Torch fixed infinite recursion when comparing non-Torch graphs
Apple — Swift Crypto, SwiftProtobuf, SwiftNIO HTTP/2, App Store Server Library corrected API documentation to match the actual parameters, including nonce handling in decryption APIs
PHP restored Windows path detection when loading extensions in phpdbg
home-assistant/core config entry removal was not shielded from a client disconnect. A race, with tests, not a comment fix
laravel/telescope merged by Taylor Otwell
nlohmann/json merged by Niels Lohmann
NVIDIA — cuDF corrected Doxygen parameter and template-parameter documentation in the C++ API
mrdoob/three.js stale JSDoc in the WebGPU renderer
twisted/twisted eight epytext fields in the core
saltstack/salt · tesseract · mlflow · astropy · FreeCAD · qutebrowser · Prefect the rest of the same work

Open pull requests: Google SAM — clarify the required service type in the discovery tool schema; Apple Embedding Atlas — prevent deep equality checks from crashing on null-prototype objects or a shadowed hasOwnProperty; NVIDIA Model Optimizer — fix layer-name truncation that silently skips selected layers during sparsity processing. The latter two include regression tests.

Three rules I did not have at the start and would not drop now. Read the project's own policy on AI assistance before touching the code, and follow it even when nobody would check. One pull request per project per day, because twelve in a day reads as a campaign no matter how correct each one is. And write the description by hand: if a sentence can be verified by opening the diff, it does not belong in the description.

rant.ae · Telegram @rant_root

Popular repositories Loading

  1. darkvell darkvell Public

    Open-source browser MMORPG with a Phaser client and authoritative NestJS realtime server

    TypeScript 3

  2. redtest redtest Public

    CSS

  3. school21 school21 Public

    C

  4. htgpt htgpt Public

    JavaScript

  5. extensions extensions Public

    Forked from raycast/extensions

    Everything you need to extend Raycast.

    TypeScript

  6. undici undici Public

    Forked from nodejs/undici

    An HTTP/1.1 client, written from scratch for Node.js

    JavaScript