# Michał "DualFroz" Fox
**Software developer building games and IT ecosystems, based in Kraków**
Founder @ [VulCode](https://vulcode.com)
CEO & CTO, co-founder @ [Aphrodi](https://aphrodi.pl)
Co-founder & Developer @ Lunatic Studios
Lead Developer @ Flaem, Plazer, Gyred
dualfroz.com |
X |
Discord |
| 🌱 Beginnings 2020 |
My first lines of code. Simple static websites, each one teaching me something more interesting than the last. Nothing advanced yet, but everyone starts somewhere. |
| 🎮 Servers and community SCP: Secret Laboratory |
I ran SCP:SL servers and wrote add-ons for them in C#. That work grew into Nebula: a set of plugins with a moderation tool and server statistics aggregation. |
| 🛠️ Support and marketing MatHost |
Technical support across hundreds of tickets: game servers, Discord bots, Pterodactyl. This is where I really grew, and it shows. Between 2023 and 2025 I gained a huge amount of knowledge precisely by helping MatHost's customers. |
| 💼 Client projects since 2024 |
Serious freelance work: projects from start to finish, with a focus on system design, architecture and how everything works from the ground up. This is where I learned many of the things I use every day now. |
| 🏢 My own software house VulCode |
I founded VulCode. Quoting the website: "VulCode is a Polish software house with years of experience. Since 2020 it has been delivering high-quality software and has written over 6 million lines of code. It specializes in websites, panels, dashboards and applications, as well as building scalable platforms. It actively contributes to dozens of open source projects." |
| 🎨 Branding and marketing Aphrodi |
I co-run Aphrodi, a branding, digital and marketing studio that complements what VulCode builds in code. I regularly work on marketing and graphic design there, which rounds out my stack a little more every day. |
| 🌍 Open source today |
I contribute to open source projects used by millions of people, from developer tools to libraries. As I said above, I simply like helping others. It gives me a lot of joy. |
| 🚀 My own platforms today |
I build my own products: Flaem, Plazer, Gyred and the SaaS products Atrium and Lokal. There will be more over time, but for now I'm focused on polishing the existing projects rather than starting new ones. |
VulCode founderVulCode is a Polish software house with years of experience. Since 2020 it has been delivering high-quality software and has written over 6 million lines of code. It specializes in websites, panels, dashboards and applications, as well as building scalable platforms. It actively contributes to dozens of open source projects. |
|
Aphrodi CEO & CTO, co-founderA creative agency: branding, visual identity, web design, 3D graphics and video. |
|
Lunatic Studios co-founderAn independent game studio: online chess with custom rules and a collection of mini games. |
|
Querora founderSEO and visibility in AI answers on a subscription for small and medium businesses. |
|
Reelelle founderSocial media on a subscription: reels, graphics and carousels every month. |
|
Kouryer founderOutreach on a subscription: cold email and booked meetings. |
| Flaem A hosting and infrastructure platform: game servers and containers, VPS and LXC, network services (tunnels, transit, IP blocks, integrations with routers and anti-DDoS protection) and IPMI. Seven independent modules in Rust, Elixir and Go, a React panel, and apps for desktop, iOS and Android. |
|
| Plazer An end-to-end encrypted messenger: private, lightweight, highly customizable and self-hostable by anyone. Built around privacy, a small footprint and customization. Something I want to use myself. |
|
| Gyred A panel for complex, long-running autonomous AI agent sessions, with an assistant that keeps long-term context in indexed text files. A useful tool for developers when used well. |
6,495,301lines of code |
24,507commits |
200+projects |
|
610,000+OSS project stars |
74open source projects |
26languages |
1,665working days |
| Language | Lines of code | Projects | Share | |
|---|---|---|---|---|
| TypeScript | 2,730,373 | 51 | 50.4% ██████████ | |
| Rust | 995,825 | 11 | 18.4% ████ | |
| Go | 285,889 | 13 | 5.3% █ | |
| Kotlin | 206,250 | 7 | 3.8% █ | |
| C# | 162,872 | 8 | 3.0% █ | |
| JavaScript | 143,081 | 38 | 2.6% █ | |
| PHP | 130,914 | 6 | 2.4% █ | |
| Swift | 116,812 | 4 | 2.2% █ | |
| Elixir | 91,810 | 2 | 1.7% █ | |
| Python | 85,560 | 35 | 1.6% █ | |
| HTML | 80,563 | 45 | 1.5% █ | |
| CSS | 65,916 | 39 | 1.2% █ | |
| other (14) | 324,004 | 6.0% █ |
+293 -14 | [4](https://git.vulcode.com/dualfroz-oss/mozilla-firefox-firefox) |
| [proxmox/proxmox-widget-toolkit](https://www.proxmox.com/) | – | Perl | +59 -31 | [6](https://git.vulcode.com/dualfroz-oss/proxmox-git-proxmox-widget-toolkit) |
| [proxmox/pve-manager](https://www.proxmox.com/) | – | Perl | +497 -72 | [31](https://git.vulcode.com/dualfroz-oss/proxmox-git-pve-manager) |
| [proxmox/pve-storage](https://www.proxmox.com/) | – | Perl | +1050 -13 | [8](https://git.vulcode.com/dualfroz-oss/proxmox-git-pve-storage) |
| [proxmox/qemu-server](https://www.proxmox.com/) | – | Perl | +438 -34 | [12](https://git.vulcode.com/dualfroz-oss/proxmox-git-qemu-server) |
| [zed-industries/zed](https://github.com/zed-industries/zed) | ⭐ 91.8k | Rust | +123 -10 | [11](https://git.vulcode.com/dualfroz-oss/zed-industries-zed) |
| [telegramdesktop/tdesktop](https://github.com/telegramdesktop/tdesktop) | ⭐ 33.3k | C++ | +24 -5 | [3](https://git.vulcode.com/dualfroz-oss/telegramdesktop-tdesktop) |
| [composer/composer](https://github.com/composer/composer) | ⭐ 29.5k | PHP | +142 -4 | [3](https://git.vulcode.com/dualfroz-oss/composer-composer) |
| [icsharpcode/ILSpy](https://github.com/icsharpcode/ILSpy) | ⭐ 26.7k | C# | +4624 -13 | [16](https://git.vulcode.com/dualfroz-oss/icsharpcode-ILSpy) |
| [urfave/cli](https://github.com/urfave/cli) | ⭐ 24.3k | Go | +123 -12 | [3](https://git.vulcode.com/dualfroz-oss/urfave-cli) |
| [PHPMailer/PHPMailer](https://github.com/PHPMailer/PHPMailer) | ⭐ 22.3k | PHP | +135 -4 | [6](https://git.vulcode.com/dualfroz-oss/PHPMailer-PHPMailer) |
| [postcss/autoprefixer](https://github.com/postcss/autoprefixer) | ⭐ 22.2k | JavaScript | +50 -4 | [5](https://git.vulcode.com/dualfroz-oss/postcss-autoprefixer) |
| [gleam-lang/gleam](https://github.com/gleam-lang/gleam) | ⭐ 22k | Rust | +134 -1 | [2](https://git.vulcode.com/dualfroz-oss/gleam-lang-gleam) |
| [twpayne/chezmoi](https://github.com/twpayne/chezmoi) | ⭐ 21.9k | Go | +43 -17 | [2](https://git.vulcode.com/dualfroz-oss/twpayne-chezmoi) |
| [Seldaek/monolog](https://github.com/Seldaek/monolog) | ⭐ 21.4k | PHP | +41 -2 | [2](https://git.vulcode.com/dualfroz-oss/Seldaek-monolog) |
| [valeriansaliou/sonic](https://github.com/valeriansaliou/sonic) | ⭐ 21.4k | Rust | +88 -20 | [6](https://git.vulcode.com/dualfroz-oss/valeriansaliou-sonic) |
| [OpenRA/OpenRA](https://github.com/OpenRA/OpenRA) | ⭐ 17.6k | C# | +56 -5 | [2](https://git.vulcode.com/dualfroz-oss/OpenRA-OpenRA) |
| [briannesbitt/Carbon](https://github.com/briannesbitt/Carbon) | ⭐ 16.6k | PHP | +87 -0 | [3](https://git.vulcode.com/dualfroz-oss/briannesbitt-Carbon) |
| [PuerkitoBio/goquery](https://github.com/PuerkitoBio/goquery) | ⭐ 15k | Go | +183 -18 | [4](https://git.vulcode.com/dualfroz-oss/PuerkitoBio-goquery) |
| [App-vNext/Polly](https://github.com/App-vNext/Polly) | ⭐ 14.2k | C# | +19 -1 | [1](https://git.vulcode.com/dualfroz-oss/App-vNext-Polly) |
| [hajimehoshi/ebiten](https://github.com/hajimehoshi/ebiten) | ⭐ 13.6k | Go | +19 -13 | [8](https://git.vulcode.com/dualfroz-oss/hajimehoshi-ebiten) |
| [filp/whoops](https://github.com/filp/whoops) | ⭐ 13.2k | PHP | +115 -3 | [4](https://git.vulcode.com/dualfroz-oss/filp-whoops) |
| [spencermountain/compromise](https://github.com/spencermountain/compromise) | ⭐ 12.2k | JavaScript | +124 -11 | [38](https://git.vulcode.com/dualfroz-oss/spencermountain-compromise) |
| [doctrine/lexer](https://github.com/doctrine/lexer) | ⭐ 11.1k | PHP | +72 -2 | [2](https://git.vulcode.com/dualfroz-oss/doctrine-lexer) |
| [kanboard/kanboard](https://github.com/kanboard/kanboard) | ⭐ 9.9k | PHP | +127 -7 | [7](https://git.vulcode.com/dualfroz-oss/kanboard-kanboard) |
| [FluentValidation/FluentValidation](https://github.com/FluentValidation/FluentValidation) | ⭐ 9.8k | C# | +14 -1 | [2](https://git.vulcode.com/dualfroz-oss/FluentValidation-FluentValidation) |
| [serilog/serilog](https://github.com/serilog/serilog) | ⭐ 8.1k | C# | +12 -0 | [2](https://git.vulcode.com/dualfroz-oss/serilog-serilog) |
| [concourse/concourse](https://github.com/concourse/concourse) | ⭐ 7.9k | Go | +154 -24 | [1](https://git.vulcode.com/dualfroz-oss/concourse-concourse) |
| [predis/predis](https://github.com/predis/predis) | ⭐ 7.8k | PHP | +410 -28 | [5](https://git.vulcode.com/dualfroz-oss/predis-predis) |
| [vscode-neovim/vscode-neovim](https://github.com/vscode-neovim/vscode-neovim) | ⭐ 7.8k | TypeScript | +65 -2 | [6](https://git.vulcode.com/dualfroz-oss/vscode-neovim-vscode-neovim) |
| [NLog/NLog](https://github.com/NLog/NLog) | ⭐ 6.5k | C# | +19 -0 | [15](https://git.vulcode.com/dualfroz-oss/NLog-NLog) |
| [maildev/maildev](https://github.com/maildev/maildev) | ⭐ 6.1k | TypeScript | +69 -13 | [8](https://git.vulcode.com/dualfroz-oss/maildev-maildev) |
| [Pagefind/pagefind](https://github.com/Pagefind/pagefind) | ⭐ 5.5k | Rust | +48 -2 | [10](https://git.vulcode.com/dualfroz-oss/Pagefind-pagefind) |
| [xoofx/markdig](https://github.com/xoofx/markdig) | ⭐ 5.3k | C# | +223 -7 | [8](https://git.vulcode.com/dualfroz-oss/xoofx-markdig) |
| [dromara/carbon](https://github.com/dromara/carbon) | ⭐ 5.2k | Go | +41 -4 | [1](https://git.vulcode.com/dualfroz-oss/dromara-carbon) |
| [alecthomas/chroma](https://github.com/alecthomas/chroma) | ⭐ 5.1k | Go | +90 -3 | [1](https://git.vulcode.com/dualfroz-oss/alecthomas-chroma) |
| [olekukonko/tablewriter](https://github.com/olekukonko/tablewriter) | ⭐ 4.8k | Go | +16 -0 | [1](https://git.vulcode.com/dualfroz-oss/olekukonko-tablewriter) |
| [knadh/koanf](https://github.com/knadh/koanf) | ⭐ 4.2k | Go | +135 -10 | [2](https://git.vulcode.com/dualfroz-oss/knadh-koanf) |
| [spencermountain/spacetime](https://github.com/spencermountain/spacetime) | ⭐ 4.1k | JavaScript | +15 -40 | [7](https://git.vulcode.com/dualfroz-oss/spencermountain-spacetime) |
| [itchyny/gojq](https://github.com/itchyny/gojq) | ⭐ 3.8k | Go | +42 -5 | [9](https://git.vulcode.com/dualfroz-oss/itchyny-gojq) |
| [Suor/funcy](https://github.com/Suor/funcy) | ⭐ 3.5k | Python | +18 -2 | [2](https://git.vulcode.com/dualfroz-oss/Suor-funcy) |
| [thephpleague/csv](https://github.com/thephpleague/csv) | ⭐ 3.5k | PHP | +22 -9 | [2](https://git.vulcode.com/dualfroz-oss/thephpleague-csv) |
| [composer/satis](https://github.com/composer/satis) | ⭐ 3.3k | PHP | +55 -10 | [5](https://git.vulcode.com/dualfroz-oss/composer-satis) |
| [montanaflynn/stats](https://github.com/montanaflynn/stats) | ⭐ 3k | Go | +66 -23 | [3](https://git.vulcode.com/dualfroz-oss/montanaflynn-stats) |
| [versity/versitygw](https://github.com/versity/versitygw) | ⭐ 3k | Go | +124 -14 | [24](https://git.vulcode.com/dualfroz-oss/versity-versitygw) |
| [thephpleague/commonmark](https://github.com/thephpleague/commonmark) | ⭐ 3k | PHP | +17 -0 | [2](https://git.vulcode.com/dualfroz-oss/thephpleague-commonmark) |
| [mitsuhiko/insta](https://github.com/mitsuhiko/insta) | ⭐ 3k | Rust | +8 -2 | [1](https://git.vulcode.com/dualfroz-oss/mitsuhiko-insta) |
| [BurntSushi/jiff](https://github.com/BurntSushi/jiff) | ⭐ 3k | Rust | +37 -5 | [1](https://git.vulcode.com/dualfroz-oss/BurntSushi-jiff) |
| [zzzprojects/html-agility-pack](https://github.com/zzzprojects/html-agility-pack) | ⭐ 2.9k | C# | +158 -2 | [2](https://git.vulcode.com/dualfroz-oss/zzzprojects-html-agility-pack) |
| [Paymenter/Paymenter](https://github.com/Paymenter/Paymenter) | ⭐ 2.7k | PHP | +135 -11 | [4](https://git.vulcode.com/dualfroz-oss/Paymenter-Paymenter) |
| [api-platform/core](https://github.com/api-platform/core) | ⭐ 2.6k | PHP | +52 -27 | [2](https://git.vulcode.com/dualfroz-oss/api-platform-core) |
| [pelican/panel](https://github.com/pelican/panel) | ⭐ 2.4k | PHP | +64 -3 | [3](https://git.vulcode.com/dualfroz-oss/pelican-panel) |
| [gookit/goutil](https://github.com/gookit/goutil) | ⭐ 2.4k | Go | +12 -0 | [4](https://git.vulcode.com/dualfroz-oss/gookit-goutil) |
| [dedoc/scramble](https://github.com/dedoc/scramble) | ⭐ 2.2k | PHP | +23 -0 | [2](https://git.vulcode.com/dualfroz-oss/dedoc-scramble) |
| [gocarina/gocsv](https://github.com/gocarina/gocsv) | ⭐ 2.2k | Go | +89 -2 | [5](https://git.vulcode.com/dualfroz-oss/gocarina-gocsv) |
| [thephpleague/html-to-markdown](https://github.com/thephpleague/html-to-markdown) | ⭐ 1.9k | PHP | +3 -2 | [6](https://git.vulcode.com/dualfroz-oss/thephpleague-html-to-markdown) |
| [AfterShip/email-verifier](https://github.com/AfterShip/email-verifier) | ⭐ 1.6k | Go | +99 -3 | [3](https://git.vulcode.com/dualfroz-oss/AfterShip-email-verifier) |
| [fabiocaccamo/python-benedict](https://github.com/fabiocaccamo/python-benedict) | ⭐ 1.6k | Python | +66 -5 | [2](https://git.vulcode.com/dualfroz-oss/fabiocaccamo-python-benedict) |
| [gookit/color](https://github.com/gookit/color) | ⭐ 1.6k | Go | +12 -1 | [3](https://git.vulcode.com/dualfroz-oss/gookit-color) |
| [olebedev/when](https://github.com/olebedev/when) | ⭐ 1.5k | Go | +45 -1 | [4](https://git.vulcode.com/dualfroz-oss/olebedev-when) |
| [dgilland/pydash](https://github.com/dgilland/pydash) | ⭐ 1.4k | Python | +18 -5 | [4](https://git.vulcode.com/dualfroz-oss/dgilland-pydash) |
| [cakephp/chronos](https://github.com/cakephp/chronos) | ⭐ 1.4k | PHP | +17 -2 | [2](https://git.vulcode.com/dualfroz-oss/cakephp-chronos) |
| [go-playground/form](https://github.com/go-playground/form) | ⭐ 931 | Go | +35 -0 | [2](https://git.vulcode.com/dualfroz-oss/go-playground-form) |
| [mkideal/cli](https://github.com/mkideal/cli) | ⭐ 723 | Go | +22 -1 | [2](https://git.vulcode.com/dualfroz-oss/mkideal-cli) |
| [gookit/config](https://github.com/gookit/config) | ⭐ 585 | Go | +29 -8 | [2](https://git.vulcode.com/dualfroz-oss/gookit-config) |
| [rust-syndication/rss](https://github.com/rust-syndication/rss) | ⭐ 502 | Rust | +24 -2 | [2](https://git.vulcode.com/dualfroz-oss/rust-syndication-rss) |
| [kelindar/bitmap](https://github.com/kelindar/bitmap) | ⭐ 385 | Assembly | +146 -12 | [5](https://git.vulcode.com/dualfroz-oss/kelindar-bitmap) |
| [brick/date-time](https://github.com/brick/date-time) | ⭐ 361 | PHP | +67 -36 | [3](https://git.vulcode.com/dualfroz-oss/brick-date-time) |
| [pydantic/pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | ⭐ 338 | Python | +124 -1 | [2](https://git.vulcode.com/dualfroz-oss/pydantic-pydantic-extra-types) |
| [rodaine/table](https://github.com/rodaine/table) | ⭐ 324 | Go | +32 -2 | [2](https://git.vulcode.com/dualfroz-oss/rodaine-table) |
| [wroberts/pytimeparse](https://github.com/wroberts/pytimeparse) | ⭐ 299 | Python | +5 -1 | [3](https://git.vulcode.com/dualfroz-oss/wroberts-pytimeparse) |
| [QEDK/configparser-rs](https://github.com/QEDK/configparser-rs) | ⭐ 88 | Rust | +22 -1 | [3](https://git.vulcode.com/dualfroz-oss/QEDK-configparser-rs) |
| [thephpleague/uri-src](https://github.com/thephpleague/uri-src) | ⭐ 51 | PHP | +18 -2 | [4](https://git.vulcode.com/dualfroz-oss/thephpleague-uri-src) |
| [spiral/testing](https://github.com/spiral/testing) | ⭐ 7 | PHP | +255 -6 | [5](https://git.vulcode.com/dualfroz-oss/spiral-testing) |
## 🛠️ Technologies
### Programming languages
TypeScript |
Rust |
JavaScript |
Go |
PHP |
C# |
Python |
Kotlin |
Elixir |
Swift |
C++ |
Java |
C |
Dart |
Solidity |
Ruby |
Lua |
Zig |
Haskell |
Scala |
F# |
Assembly |
Node.js |
ASP.NET Core |
Laravel |
Symfony |
Django |
Flask |
FastAPI |
Docker |
Kubernetes |
nginx |
Grafana |
Linux |
Git |
PostgreSQL |
MySQL |
MariaDB |
SQLite |
Redis |
MongoDB |
ClickHouse |
Cassandra |
Prisma |
JSON |
React |
Next.js |
Vue |
Angular |
Astro |
Vite |
Tailwind CSS |
Bootstrap |
HTML |
CSS |
Sass |
Electron |
Tauri |
Avalonia |
VS Code |
Visual Studio |
JetBrains IDEs |
Android Studio |
Xcode |
Unity |
Godot |
Unreal Engine |
Figma |
Photoshop |
DaVinci Resolve |
Blender |