Skip to content
View vndel's full-sized avatar

Block or report vndel

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
vndel/README.md
Mohammed Nafees

Mohammed Nafees · محمد نفيس

Backend & Game Server Engineer · Syria

I build the software behind game servers: APIs, Discord tooling, licensing systems,
Minecraft plugins, and the infrastructure that keeps them running under load.


Team website Discord @777m Email

English · العربية


Featured work

The projects I would show first. Each one builds and ships with tests or a verification script.

ServerPulse — Android · Kotlin

An Android app that monitors Minecraft and FiveM servers using each game's own protocol.

  • Protocols: implements the Minecraft Server List Ping handshake directly over TCP, and reads FiveM's dynamic.json.
  • History: stores every check in Room and shows 24-hour uptime, average and p95 latency, and peak players.
  • Alerts: debounced. A server is marked down only after two consecutive failures, so one dropped packet on mobile data does not wake anyone up.
  • Stack: Clean Architecture, Jetpack Compose, Hilt, WorkManager. English and Arabic with full RTL.
  • Quality: 44 unit tests, including the real prober running against a local TCP server that implements the protocol. Lint runs with warnings treated as errors.

hyper-economy-bridge — Paper plugin · Java 21

A Minecraft economy engine designed so that balance reads never touch the database on the main thread.

  • Balances live in an in-memory ledger and are flushed to storage in batches.
  • Money is stored as long minor units, never double, so there are no rounding errors.
  • Updates are atomic, and Redis is used only to invalidate caches across servers.
  • 15 tests.

mc-backup-daemon — Python · no dependencies

Takes consistent world backups from a running server.

  • Pauses saving through RCON (save-off), flushes, archives, then resumes. Resuming sits in a finally block so the server is never left with saving disabled.
  • A restore test compares the restored files against the original byte for byte.
  • 15 tests.

spigot-metric-exporter — Java · Prometheus

A Prometheus metrics exporter for Spigot/Paper, about 20 KB, with no client library.

  • The main thread samples metrics into an immutable record.
  • The HTTP thread serves that record and never touches the Bukkit API, so it cannot slow the game down.
  • 8 tests.

anvil-region-auditor — Python CLI

A read-only checker for Minecraft .mca region files.

  • Validates the sector table, detects overlapping or out-of-bounds chunks, and reports compression types.
  • Exports text, JSON or CSV. It never writes to the world folder.

Engineering approach

Respect the budget. A Minecraft tick has 50 ms. Database queries, HTTP calls and file I/O belong on worker threads, with results handed back as immutable snapshots.

Make failure boring. Debounce alerts. Cap packet sizes before allocating memory. Put cleanup in finally. Never use destructive migrations on user data.

Prove it. Every flagship repository builds from a clean clone and includes tests or a verify.sh. When I claim a number, there is a test behind it.

State the limits. Each README has a limitations section. A tool that is honest about what it does not do is easier to trust.


Minecraft plugins

Paper 1.20+, Java 21. Every repository in this table includes a verify.sh that builds the jar and checks it targets Java 21.

Repository What it does
hyper-economy-bridge Async economy: in-memory ledger, batched write-behind, exact integer money. 15 tests.
chronos-daily-rewards Daily streak rewards with day boundaries computed per time zone (DST-safe). 7 tests.
sentinel-guard-anticheat-heuristics Movement and combat telemetry, compensated for latency and server load. Collects evidence; does not auto-punish.
aether-dynamic-spawners Slows spawners in proportion to tick-time pressure, and restores vanilla timing when disabled.
nexus-proxy-sync Redis Pub/Sub message bus between Velocity backends, with reconnect backoff.
void-drop-cleaner Merges identical item stacks on the ground before removing anything.
celestial-combat-tag Combat tagging with fair logout penalties and an action-bar timer.
mc-network-watchdog Tick-time-aware health signals for Paper networks.
LITMinions Minions plugin (Kotlin, Gradle).
OGRedstonePvP RedstonePvP game-mode plugin (Java, Maven).
RepRegen Regeneration plugin (Java, Maven).

Server infrastructure and tooling

Repository What it does
mc-backup-daemon Consistent live-world backups with a byte-exact restore test. 15 tests.
spigot-metric-exporter Lightweight Prometheus exporter that never blocks the main thread. 8 tests.
anvil-region-auditor Read-only integrity checker for .mca region files. 8 tests.
aikars-flags-tuner Generates JVM flags (G1 or ZGC chosen by heap size) and hardened systemd units with graceful RCON stop.
paper-purpur-optimized-stack Paper/Purpur configuration for high player counts. Each changed key is explained.
velocity-edge-network-template Velocity modern forwarding, Geyser/Floodgate, and nftables rules that keep backends private.
luckperms-matrix-preset LuckPerms layout with separate donor and staff tracks and per-server contexts.
prison-rankup-eco-preset Prison economy where rank costs follow the income curve, keeping time per rank constant.
skyblock-island-schematics-pack Skyblock island grid with deny-by-default WorldGuard rules.
mc-rcon-operator-cli Minimal RCON client configured by environment variables.
mc-server-config-validator Validates server YAML and flags placeholder secrets.
mc-portfolio-provisioner The script that publishes these repositories. It refuses to touch private repositories.

FiveM, Discord and web

Repository What it does
team-fivemcodehub-portfolio Bilingual (Arabic/English) website for the FiveM Code Hub team.
codehub-licenses License registry data for CodeHub FiveM resources.
pages Static pages and downloads for CodeHub projects.
yazn-page-ras Community website with rules, jobs and requirements pages.
ulg-calculator Browser-based calculators and admin tools.

Minecraft operations library

Reference material for running Paper and Velocity networks: runbooks, templates, checklists and policy examples. These repositories are mostly documentation rather than code. Validate anything from them in a staging environment first.

Show all 35 repositories

Reliability and incidents mc-incident-drills · mc-network-failover-lab · mc-backup-restore-drills · mc-server-restore-automation · mc-maintenance-window · mc-ops-runbook-index · mc-network-status-page

Monitoring and capacity mc-network-slo-kit · mc-server-resource-alerts · mc-log-anomaly-triage · mc-server-logging-baseline · mc-server-capacity-planner · mc-server-cost-model · mc-world-storage-audit · mc-traffic-replay-lab

Security and data mc-network-firewall-baseline · mc-server-secret-rotation · mc-plugin-permission-audit · mc-player-session-audit · mc-player-data-retention · minecraft-allowlist-service

Plugin lifecycle mc-plugin-release-pipeline · mc-plugin-release-checklist · mc-plugin-dependency-audit · mc-plugin-compat-matrix · mc-plugin-api-contract-tests · mc-plugin-config-migrations · mc-server-version-matrix · paper-plugin-template · velocity-plugin-template

Network and data services mc-queue-coordinator · mc-redis-topology · mc-database-migration-kit · minecraft-server-container · paper-world-pregen-planner


Stack

Area Tools
Languages Java 17/21 · Kotlin · Lua · TypeScript · JavaScript · Python · Bash
Game servers Paper · Purpur · Spigot · Velocity · Geyser/Floodgate · FiveM (ESX)
Android Jetpack Compose · Room · Hilt · WorkManager · Coroutines/Flow
Backend Node.js · Express · Discord.js · REST APIs
Data MySQL/MariaDB · SQLite · Redis
Operations Linux · systemd · Docker · nftables · Prometheus · RCON
JVM G1 · Generational ZGC · heap sizing · GC log analysis

العربية

محمد نفيس — مهندس أنظمة خلفية وخوادم ألعاب

أبني البرمجيات التي تعمل خلف خوادم الألعاب: الواجهات البرمجية، وأدوات ديسكورد، وأنظمة التراخيص، وإضافات ماينكرافت، والبنية التحتية التي تُبقيها مستقرة تحت الضغط.

عضو في فريق FiveM Code Hub · ديسكورد: 777m

أبرز المشاريع

  • ServerPulse: تطبيق أندرويد بلغة Kotlin يراقب خوادم ماينكرافت وفايف إم باستخدام بروتوكول كل لعبة مباشرة. يحفظ سجل الفحوصات، ويعرض نسبة التشغيل وزمن الاستجابة، ويرسل تنبيهاً عند توقف الخادم وعند عودته. يضم ٤٤ اختباراً، ويدعم العربية بالكامل.
  • hyper-economy-bridge: نظام اقتصاد لماينكرافت لا يتصل بقاعدة البيانات من الخيط الرئيسي عند قراءة الأرصدة، ويحفظ المبالغ كأعداد صحيحة لتجنّب أخطاء التقريب. ١٥ اختباراً.
  • mc-backup-daemon: نسخ احتياطي متّسق لعالم الخادم أثناء تشغيله، مع اختبار يتحقق من تطابق الاستعادة بايتاً ببايت. ١٥ اختباراً.
  • spigot-metric-exporter: مُصدِّر مقاييس لـ Prometheus بحجم ٢٠ كيلوبايت تقريباً، لا يُبطئ اللعبة. ٨ اختبارات.

منهجية العمل

  • احترام الميزانية الزمنية: لكل دورة في ماينكرافت ٥٠ ملّي ثانية فقط، فأي عمل بطيء يُنقل إلى خيوط منفصلة.
  • التعامل الآمن مع الأعطال: تنبيهات لا تنطلق من خطأ عابر، وحدود قصوى لحجم البيانات الواردة، وعمليات تنظيف مضمونة.
  • الإثبات قبل الادعاء: كل مشروع رئيسي يُبنى من نسخة نظيفة ويتضمن اختبارات أو سكربت تحقق.
  • الوضوح في القيود: كل مشروع يذكر صراحةً ما لا يفعله.

Mohammed Nafees · @vndel · Discord 777m · team.fivemcodehub.com

@vndel's activity is private