Full-stack developer, Founder & CEO @ VulCode. Open source contributor: Firefox, Blender, Godot, Zed, Node.js, Docker, Home Assistant and more.
MichaÅ âDualFrozâ Fox
Programista, deweloper gier i ekosystemów IT z Krakowa
ZaÅożyciel @ VulCode
WspóÅzaÅożyciel @ Aphrodi
WspóÅzaÅożyciel & Deweloper @ Lunatic Studios
GÅówny Deweloper @ Flaem, Plazer, Gyred
dualfroz.com |
X |
Discord |
Polski · English
Hej, jestem MichaÅ. Jestem z Krakowa i mam 18 lat. Od 2020 roku regularnie tworzÄ różnego rodzaju projekty programistyczne. WiÄkszoÅÄ czasu spÄdziÅem tworzÄ c logiki backendowe, ale ostatnimi czasy zaczÄ Åem skupiaÄ siÄ bardziej na designie i UIUX, które sÄ dziedzinami zdecydowanie bardziej odpornymi na wpÅyw LLMów - wierzÄ Å¼e kreatywnoÅÄ i pomysÅ to dwie rzeczy, które zostanÄ na zawsze nietkniÄte.
CzÄsto i aktywnie kontrybuuje do różnego rodzaju projektów open source. LubiÄ pomagaÄ i wspieraÄ spoÅecznoÅci tam, gdzie potrafiÄ. ChoÄ wiem że nie moja praca nie zawsze jest idealna, zawsze staram siÄ jÄ przeglÄ daÄ tak, aby najwyższej jakoÅci dodatki i poprawki trafiaÅy do projektów używanych przez tysiÄ ce/miliony.
Mam ponad 6 lat doÅwiadczenia w programowaniu. W tym czasie napisaÅem ponad 6 000 000 linijek kodu w 105 projektach. ÅÄ cznie doÅożyÅem swojÄ cegieÅkÄ do 75 repozytoriów open source, które ÅÄ cznie majÄ 630 000+ gwiazdek na GitHubie.
Poza programowaniem interesujÄ siÄ wieloma rzeczami - sztukÄ , historiÄ , lingwistykÄ , matematykÄ , szachami, muzykÄ ... dÅugo by wymieniaÄ.
Teraz: Od niedawna pracujÄ nad ukoÅczeniem pierwszej wersji Flaema, panelu hostingowego. Projekt jest napisany w kilku jÄzykach (TypeScript, Rust, Elixir, Golang, a także mikroserwisy w Javie, Pythonie, C) i ÅÄ cznie skÅada siÄ z prawie miliona linijek kodu. Pierwsze wydanie Flaema planujÄ na ~ październik/listopad 2026.
ð« Kontakt
|
|
ð Historia
| ð± PoczÄ
tki 2020 |
Pierwsze linijki kodu. Proste strony statyczne, każda nastÄpna uczyÅa coraz to ciekawszych kwestii. Nie byÅo tu jeszcze nic zaawansowanego, ale każdy zaczynaÅ od czegoÅ. |
| ð® Serwery i spoÅecznoÅÄ SCP: Secret Laboratory |
ProwadziÅem serwery SCP:SL i pisaÅem do nich dodatki w C#. Z nich wyrosÅa Nebula: zestaw pluginów z narzÄdziem do moderacji i agregacji statystyk z serwera. |
| ð ï¸ Support i marketing MatHost |
Support techniczny przez setki zgÅoszeÅ: serwery gier, boty Discord, Pterodactyl. DziÄki temu naprawdÄ siÄ rozwinÄ Åem, co z resztÄ widaÄ po rozwoju. W latach 2023-2025 zdobyÅem ogromnÄ wiedzÄ, dziÄki wÅaÅnie pomaganiu klientom MatHost. |
| ð¼ Projekty dla klientów od 2024 |
Mocny freelance: projekty od poczÄ tku do koÅca, ze skupieniem na designie systemu, architekturze, i tym jak wszystko dziaÅa od podstaw. Tutaj nauczyÅem siÄ wielu rzeczy, których dziÅ używam na codzieÅ. |
| ð¢ WÅasny software house VulCode |
ZaÅożyÅem VulCode. CytujÄ c ze strony: "VulCode to polski software house z wieloletnim doÅwiadczeniem. Od 2020 roku dostarcza oprogramowanie wysokiej jakoÅci i napisaÅ już ponad 6 mln linijek kodu. Specjalizuje siÄ w stronach, panelach i dashboardach oraz aplikacjach, a także w budowie skalowalnych platform. Aktywnie kontrybuuje do dziesiÄ tek projektów open source." |
| ð¨ Branding i marketing Aphrodi |
WspóÅtworzÄ Aphrodi, studio brandingu, digitalu i marketingu, które dopeÅnia to, co w VulCode powstaje w kodzie. Regularnie udzielam siÄ w zakresie marketingu oraz samego designu graficznego, dziÄki czemu dopeÅniam swój stack - z każdym dniem coraz bardziej. |
| ð Open source dziÅ |
DokÅadam siÄ do projektów open source, z których korzystajÄ miliony ludzi, od narzÄdzi deweloperskich po biblioteki - tak jak opisywalem wyżej, po prostu lubiÄ pomagaÄ innym. Sprawia mi to ogromnÄ przyjemnoÅÄ. |
| ð WÅasne platformy dziÅ |
BudujÄ wÅasne produkty: Flaema, Plazera, Gyreda oraz SaaS-y Atrium i Lokal. Z czasem bÄdzie ich wiÄcej, ale obecnie jestem skupiony raczej na dopracowaniu istniejÄ cych projektów, niż tworzeniu nowych. |
ð¢ Firmy i role
VulCode  zaÅożycielVulCode to polski software house z wieloletnim doÅwiadczeniem. Od 2020 roku dostarcza oprogramowanie wysokiej jakoÅci i napisaÅ już ponad 6 mln linijek kodu. Specjalizuje siÄ w stronach, panelach i dashboardach oraz aplikacjach, a także w budowie skalowalnych platform. Aktywnie kontrybuuje do dziesiÄ tek projektów open source. |
|
Aphrodi  wspóÅzaÅożycielAgencja kreatywna: branding, identyfikacja wizualna, projektowanie stron, grafika 3D i wideo. |
|
Lunatic Studios  wspóÅzaÅożycielNiezależne studio gier: szachy online z wÅasnymi zasadami i zestaw mini gier. |
â GÅówne projekty
Mniejsze projekty z opisem
- Vulp: aplikacja terminalowa w Rust do zarzÄ dzania caÅym workspace'em repozytoriów (stan repo, synchronizacja, projekty, pull requesty, statystyki)
- Atrium: panel dla hoteli z żywym planem piÄter i pokoi, rezerwacjami, housekeepingiem i room service
- Lokal: panel dla restauracji, barów i kawiarni z rezerwacjami na planie sali, zamówieniami i grafikiem
- VulBio: strony wizytówki skÅadane z panelu, bez dotykania kodu
- Nebula: pluginy do SCP: Secret Laboratory, w tym moderacja i analityka serwerów
- Pharos: monitoring dostÄpnoÅci z publicznÄ stronÄ statusu i incydentami, jedno binarium Go
- Frostbyte: hobbystyczne jÄ dro systemu operacyjnego x86_64 w C i asemblerze
- Cobalt: wbudowany magazyn klucz-wartoÅÄ oparty o drzewo LSM, napisany w Zig
- Gambit: silnik szachowy alfa-beta w Scali 3
- Lumen: dynamicznie typowany jÄzyk skryptowy w Kotlinie
- Voxelforge: silnik voxelowy w C++17 z grywalnym demo w przeglÄ darce
- Cellar: silnik arkusza kalkulacyjnego z jÄzykiem formuÅ w Dart
- Prism: framework webowy w Ruby bez zewnÄtrznych bibliotek
- Bazaar: sklep internetowy na wÅasnym mikroframeworku PHP ze Stripe
- Chip8Sharp i GameBoySharp: emulatory CHIP-8 i Game Boya w C#
ð§° Czym siÄ zajmujÄ na co dzieÅ
Poza gÅównymi projektami robiÄ dużo mniejszych rzeczy, zarówno na zlecenie, jak i dla siebie:
| Obszar | PrzykÅady | |
|---|---|---|
| ð | Strony, panele i aplikacje na zlecenie | strony firmowe z CMS-em, panele klienta, dashboardy, sklepy, integracje i automatyzacje |
| âï¸ | Platformy SaaS | PracujÄ nad platformami dla branży: hostingowej, hotelarskiej, restauracyjnej, a w przyszÅoÅci chciaÅbym poszerzyÄ dziaÅalnoÅÄ o kolejne branże. |
| ð¥ï¸ | Hosting i infrastruktura | serwery gier, Pterodactyl, Docker, monitoring, wÅasne API do statystyk ghapi, i przede wszystkim Flaem. |
| âï¸ | Systemy i niski poziom | hobbystyczne jÄ dro systemu x86_64 w C i asemblerze, silnik bazy klucz-wartoÅÄ (LSM) w Zig, emulatory Game Boy i CHIP-8 w C#. PodsumowujÄ c, robiÄ różne rzeczy tylko po to żeby siÄ nauczyÄ jak co dziaÅa. |
| 𧪠| JÄzyki i silniki | jÄzyk skryptowy w Kotlinie, silnik szachowy w Scali, silnik voxelowy w C++ z demem w WebAssembly, silnik arkuszy kalkulacyjnych w Dart. |
| ð® | Gry i pluginy | pluginy do SCP: Secret Laboratory (Nebula), mini-gry przeglÄ darkowe i nie tylko. |
| ð¤ | Boty i narzÄdzia | boty Discord, aplikacja terminalowa Vulp do zarzÄ dzania repozytoriami, narzÄdzia CLI, narzÄdzia dla agentów AI. |
| ð± | Desktop i mobile | aplikacje na Windows, macOS, iOS i Androida w Swift, Kotlinie i C# |
ð W liczbach
6 396 043linii kodu |
24 313commitów |
105projektów |
|
630 000+gwiazdek projektów OSS |
75projektów open source |
26jÄzyków |
1 679dni pracy |
+ 7 573 499 linii dodanych
- 1 318 429 linii usuniÄtych
! 6 255 070 linii netto
JÄzyki
Frameworki i narzÄdzia wykryte w projektach (liczba repozytoriów)
Docker 62 · React 31 · Express 27 · Vite 26 · Tailwind CSS 24 · Motion 18 · Prisma 16 · discord.js 14 · Serde 10 · Tokio 7 · reqwest 7 · Gorilla WebSocket 6 · SQLite 6 · xUnit 6 · Stripe 5 · Avalonia 4 · Axum 4 · JUnit 4 · PHPUnit 4 · Playwright 4 · SQLx 4 · Vitest 4 · Framer Motion 3 · Jetpack Compose 3 · Redis 3 · Zod 3 · clap 3 · gRPC 3 · wasm-bindgen 3 · Android 2 · BullMQ 2 · Chart.js 2 · Coroutines 2 · FastAPI 2 · Guzzle 2 · HTTPX 2 · Jest 2 · Laravel 2 · Next.js 2 · Pterodactyl 2 · aiohttp 2 · discord.py 2 · i18next 2 · pytest 2 · webpack 2 · Click 1 · Cobra 1 · Discord.Net 1 · Docker SDK 1 · Ecto 1 · Electron 1 · Expo 1 · GORM 1 · Gin 1 · Json.NET 1 · Paper 1 · PostgreSQL 1 · Preact 1 · Pydantic 1 · Ratatui 1 · React Native 1 · SQLAlchemy 1 · Spring Boot 1 · Storybook 1 · TanStack Query 1 · Tauri 1 · chi 1 · discordgo 1 · gopher-lua 1 · pygame 1 · tonic 1
Liczone przez moje API ghapi.dualfroz.com ze wszystkich repozytoriów, także prywatnych. Aktualizowane raz na 24 godziny.
ð Open source
Poza GitHubem
Kod przyjÄty poza GitHubem, przez listy mailowe i wÅasne systemy review: 12 commitów w 5 repozytoriach. Pod nimi zmiany zaakceptowane przez maintainerów, które czekajÄ na merge.
| Projekt | Repozytorium | Stan | Zmiany |
|---|---|---|---|
| Proxmox VE | pve-manager git.proxmox.com |
przyjÄte, 6 commitów | e42092e fix #6475: ui: upload: only show the file name of the selected file ac0c87d fix #4986: jobs: do not get stuck if the task log is missing 8efee57 fix #7108: ui: ipset: do not offer aliases that are already added +3 wiÄcej |
| Proxmox VE | qemu-server git.proxmox.com |
przyjÄte, 3 commity | 167f3d70a5 fix #6907: memory: allow multi-digit host nodes with hugepages a4efa5f9ad partially fix #4012: migrate: mention snapshots referencing a local ISO image 5abda85 test: migration: support volumes other than images |
| Proxmox VE | pve-storage git.proxmox.com |
przyjÄte, 1 commit | c10faa6972 fix #6969: plugin: keep content directory when freeing its last file |
| Proxmox VE | proxmox-widget-toolkit git.proxmox.com |
przyjÄte, 1 commit | b92a9ad19f fix #6943: ui: network selector: show comments of IPv6 entries |
| Mozilla Firefox | mozilla-central hg.mozilla.org |
przyjÄte, 1 commit | Bug 1996443 zgÅoszenie w Bugzilli D332854 rewizja w Phabricatorze 9c1b9b8ff0a8 commit w mozilla-central 16fd06a0033d mirror na GitHubie |
| Blender | blender/blender projects.blender.org |
zaakceptowane, czeka na merge | #165627 Fix #92527: unhide w Local View #165628 Fix #96432: klawisz D w edycji tekstu |
| OBS Studio | obsproject/obs-studio GitHub |
zaakceptowane, czeka na merge | #14080 libobs: numpad bez NumLocka na Waylandzie |
Na GitHubie
Poniżej lista projektów, do których kontrybuowaÅem (tylko te z zaakceptowanymi zmianami). Projekty posortowane wedÅug liczby gwiazdek. ÅÄ cznie 630 000+ â w 75 repozytoriach. Kolumna âCommityâ prowadzi do repozytorium z moimi commitami (autor, data, diff).
| Projekt | Gwiazdki | JÄzyk | Zmiany | Commity |
|---|---|---|---|---|
| mozilla/firefox | â | JavaScript | +293 -14 |
4 |
| proxmox/proxmox-widget-toolkit | â | Perl | +59 -31 |
6 |
| proxmox/pve-manager | â | Perl | +497 -72 |
31 |
| proxmox/pve-storage | â | Perl | +1050 -13 |
8 |
| proxmox/qemu-server | â | Perl | +438 -34 |
12 |
| zed-industries/zed | â 92,2 tys. | Rust | +123 -10 |
11 |
| telegramdesktop/tdesktop | â 33,4 tys. | C++ | +7 -5 |
3 |
| composer/composer | â 29,6 tys. | PHP | +10 -4 |
3 |
| icsharpcode/ILSpy | â 26,8 tys. | C# | +4724 -29 |
16 |
| urfave/cli | â 24,3 tys. | Go | +52 -12 |
3 |
| PHPMailer/PHPMailer | â 22,3 tys. | PHP | +135 -4 |
6 |
| postcss/autoprefixer | â 22,2 tys. | JavaScript | +314 -63 |
5 |
| twpayne/chezmoi | â 22 tys. | Go | +43 -17 |
2 |
| gleam-lang/gleam | â 22 tys. | Rust | +134 -1 |
2 |
| Seldaek/monolog | â 21,4 tys. | PHP | +41 -2 |
2 |
| valeriansaliou/sonic | â 21,4 tys. | Rust | +217 -36 |
6 |
| lichess-org/lila | â 18,9 tys. | Scala | +35 -7 |
2 |
| OpenRA/OpenRA | â 17,6 tys. | C# | +43 -5 |
2 |
| briannesbitt/Carbon | â 16,6 tys. | PHP | +87 -0 |
3 |
| PuerkitoBio/goquery | â 15 tys. | Go | +183 -18 |
4 |
| App-vNext/Polly | â 14,3 tys. | C# | +19 -1 |
1 |
| hajimehoshi/ebiten | â 13,6 tys. | Go | +381 -297 |
8 |
| filp/whoops | â 13,2 tys. | PHP | +115 -3 |
4 |
| spencermountain/compromise | â 12,2 tys. | JavaScript | +498 -89 |
38 |
| doctrine/lexer | â 11,1 tys. | PHP | +72 -2 |
2 |
| kanboard/kanboard | â 9,9 tys. | PHP | +293 -11 |
7 |
| FluentValidation/FluentValidation | â 9,8 tys. | C# | +14 -1 |
2 |
| serilog/serilog | â 8,1 tys. | C# | +12 -0 |
2 |
| concourse/concourse | â 7,9 tys. | Go | +153 -23 |
1 |
| predis/predis | â 7,8 tys. | PHP | +352 -27 |
5 |
| vscode-neovim/vscode-neovim | â 7,8 tys. | TypeScript | +65 -2 |
6 |
| NLog/NLog | â 6,5 tys. | C# | +94 -4 |
15 |
| maildev/maildev | â 6,2 tys. | TypeScript | +69 -13 |
8 |
| Pagefind/pagefind | â 5,5 tys. | Rust | +48 -2 |
10 |
| xoofx/markdig | â 5,3 tys. | C# | +357 -48 |
8 |
| dromara/carbon | â 5,2 tys. | Go | +41 -4 |
1 |
| alecthomas/chroma | â 5,1 tys. | Go | +90 -3 |
1 |
| olekukonko/tablewriter | â 4,8 tys. | Go | +16 -0 |
1 |
| knadh/koanf | â 4,2 tys. | Go | +28 -7 |
2 |
| spencermountain/spacetime | â 4,1 tys. | JavaScript | +67 -62 |
7 |
| itchyny/gojq | â 3,8 tys. | Go | +42 -5 |
9 |
| Suor/funcy | â 3,5 tys. | Python | +18 -2 |
2 |
| thephpleague/csv | â 3,5 tys. | PHP | +22 -9 |
2 |
| composer/satis | â 3,3 tys. | PHP | +105 -12 |
5 |
| versity/versitygw | â 3,1 tys. | Go | +1004 -85 |
24 |
| montanaflynn/stats | â 3 tys. | Go | +66 -23 |
3 |
| mitsuhiko/insta | â 3 tys. | Rust | +8 -2 |
1 |
| thephpleague/commonmark | â 3 tys. | PHP | +17 -0 |
2 |
| BurntSushi/jiff | â 3 tys. | Rust | +37 -5 |
1 |
| zzzprojects/html-agility-pack | â 2,8 tys. | C# | +27 -1 |
2 |
| Paymenter/Paymenter | â 2,8 tys. | PHP | +137 -11 |
4 |
| api-platform/core | â 2,6 tys. | PHP | +52 -27 |
2 |
| pelican/panel | â 2,4 tys. | PHP | +338 -32 |
3 |
| gookit/goutil | â 2,4 tys. | Go | +12 -0 |
4 |
| dedoc/scramble | â 2,2 tys. | PHP | +23 -0 |
2 |
| gocarina/gocsv | â 2,2 tys. | Go | +185 -22 |
5 |
| thephpleague/html-to-markdown | â 1,9 tys. | PHP | +20 -9 |
6 |
| AfterShip/email-verifier | â 1,6 tys. | Go | +99 -3 |
3 |
| fabiocaccamo/python-benedict | â 1,6 tys. | Python | +66 -5 |
2 |
| gookit/color | â 1,6 tys. | Go | +12 -1 |
3 |
| olebedev/when | â 1,5 tys. | Go | +45 -1 |
4 |
| dgilland/pydash | â 1,4 tys. | Python | +18 -5 |
4 |
| cakephp/chronos | â 1,4 tys. | PHP | +17 -2 |
2 |
| go-playground/form | â 931 | Go | +35 -0 |
2 |
| mkideal/cli | â 723 | Go | +22 -1 |
2 |
| gookit/config | â 585 | Go | +29 -8 |
2 |
| rust-syndication/rss | â 503 | Rust | +24 -2 |
2 |
| kelindar/bitmap | â 385 | Assembly | +146 -12 |
5 |
| brick/date-time | â 360 | PHP | +67 -36 |
3 |
| pydantic/pydantic-extra-types | â 339 | Python | +124 -1 |
2 |
| rodaine/table | â 324 | Go | +32 -2 |
2 |
| wroberts/pytimeparse | â 296 | Python | +5 -1 |
3 |
| QEDK/configparser-rs | â 88 | Rust | +22 -1 |
3 |
| thephpleague/uri-src | â 51 | PHP | +18 -2 |
4 |
| spiral/testing | â 7 | PHP | +255 -6 |
5 |
ð ï¸ Technologie
JÄzyki programowania
TypeScript |
Rust |
JavaScript |
Go |
PHP |
C# |
Python |
Kotlin |
Elixir |
Swift |
C++ |
Java |
C |
Dart |
Solidity |
Ruby |
Lua |
Zig |
Haskell |
Scala |
F# |
Assembly |
Backend i DevOps
Node.js |
ASP.NET Core |
Laravel |
Symfony |
Django |
Flask |
FastAPI |
Docker |
Kubernetes |
nginx |
Grafana |
Linux |
Git |
Bazy danych
PostgreSQL |
MySQL |
MariaDB |
SQLite |
Redis |
MongoDB |
ClickHouse |
Cassandra |
Prisma |
JSON |
Frontend i aplikacje
React |
Next.js |
Vue |
Angular |
Astro |
Vite |
Tailwind CSS |
Bootstrap |
HTML |
CSS |
Sass |
Electron |
Tauri |
Avalonia |
Oprogramowanie
VS Code |
Visual Studio |
JetBrains IDEs |
Android Studio |
Xcode |
Unity |
Godot |
Unreal Engine |
Figma |
Photoshop |
DaVinci Resolve |
Blender |
SzczegóÅy z opisem, jak używam każdej technologii: dualfroz.com/pl/stack
âï¸ Poza kodem
Krótko: uwielbiam... myÅleÄ. LubiÄ rozwiÄ zywaÄ nonogramy, sudoku o zÅożonych zasadach, a w szachy gram co najmniej godzinÄ dziennie. Regularnie przekraczam 2000+ elo na chess.com, lecz niestety moje konto notorycznie jest banowane przez chess.com (false-positive cheating). W najbliższym czasie bÄdÄ walczyÅ o tytuÅ FIDE (CM), co powinno oczyÅciÄ mnie z żaÅosnych zarzutów ze strony niekompetentnego personelu chesscom. BÄdÄ także aplikowaÅ do stowarzyszenia Mensa.
ð¤ WspóÅpraca
| Sprawa | Gdzie |
|---|---|
| Zlecenie komercyjne: strona, panel, aplikacja, platforma | vulcode.com |
| Branding, design, grafika i wideo | aphrodi.pl |
| Open source, rozmowa, rekrutacja, wszystko inne | [email protected] (lub sociale!) |