aka petafloppa

Zakhar Voloschuk

About me

I'm a web developer from Ukraine. I like making websites pretty (and sometimes even fast), learning new APIs and tinkering with stuff. While I primarily work with browsers, I'm also into embedded development and other low-level shenanigans.
I'm quite sociable and open to communication. Reach me out and say hi, I don't bite!

Frontend

  • 5/5 Vue 3
  • 4/5 Nuxt 3
  • 4/5 Electron
  • 2/5 ReactJS
  • 2/5 Tailwind CSS

Compooter languages

  • 5/5 TypeScript
  • 4/5 Go
  • 4/5 C
  • 4/5 JavaScript
  • 3/5 Python
  • 2/5 Bash

Technologies

  • 5/5 Linux
  • 4/5 Node.js
  • 4/5 Docker
  • 4/5 Nix

IRL Languages

  • B1 English
  • Native Ukrainian
  • Native Russian

Personal projects

Screenshot of main menu inside a game with bright background
Bamboo
Go Ebiten

2D Top-down sandbox inspired by Minecraft. You spawn on an island an need to survive. Find resources, craft equipment and make yourself home.

Screenshot of a website with sidebar on the left and canvas in center showing a grid of colorful cells
Cell simulation
Web Vue

Genetic algorithm that simulates living cells: each cell has a set of instructions (genome), essentially acting as a tiny VM. Cells can move, make energy through photosynthesis, mutate, kill each other and reproduce, just like their real counterparts.

Screenshot of a music player application showing a page with liked tracks
spdl
Desktop Electron Vue TypeScript Quasar

An electron app to download tracks/playlists via your spotify account.
As spotify prohibits ripping tracks from their platform, we search the best matching video on YouTube, and download the track using yt-dlp in the .mp3 format
Based on the older Python script, but now with friendly user interface, and a lot more options.

More about frontend

Stuff listed here does not necessarily correspond to what I'm using now. As of September 2025, I'm mostly working with vanilla JavaScript

Tailwind

I used Tailwind a lot when I started rolling into webdev in early 2023, but as I progressed I started to dislike it more and more. Writing regular CSS is just easier, as it does not require an additional build step, is more maintenable and is easier to read. Tailwind creates specificity problems that CSS has already solved, often requiring you to prefix classes with ! to make them !important

Vue

When I started webdev, I chose Vue (Vue 3 had just released at that time), and it has been my go-to framework ever since. Although I mostly write vanilla JS now, if would have to build a large application, I would definetely go with Vue. It has a large ecosystem of everything you would need, and it feels simple, which is a big compliment.

Cell simulation is written in Vue

Nuxt

A bunch of applications I've made with Vue actually used Nuxt. It's a valid option that has all the batteries included with built-in server-side rendering, backend logic and other niceties. It can be a bit heavy for a simple project, but ultimately it has proven itself useful.

Electron

Love it or hate it, that's what 90% of modern apps use. Websites have long ago grown to full-blown apps with complex logic, and Electron is simply a tool that allows those apps to be truly "native". By native, of course, I do not mean using native UI components, but rather the deeper integration into host OS, beyond what browser allows.

SPDL uses electron.

React

Actually, React was my first JS "framework", back in 2022. I didn't build anything serious with it, but I've learned the basics. There is a lot of hate towards React nowadays and it's easy to understand why. Folks from Facebook found a decent rendering technique with functional components making UI a function of state. While the idea is powerful, the execution is not among the best. React is among the slowest thanks to it's virtual DOM and the fact that it also wraps all events inside that virtual dom.

Bamboo

Screenshot of main menu inside a game with bright background

Bamboo is my top-down sandbox game. I started developing it in late 2022 as i was learning Go.
I used Ebitengine as a rendering engine.
That idea of building a "top-down minecraft" went a long way, I've added a lot of features, and had a lot of fun with this project.

Gameplay

You start in a procedurally generated world with trees, ocean and vegetation. Chopping trees gives you sticks and saplings. Sticks can be used in crafting, while samplings can be planted to grow more trees.
There is a crafting system for crafting items, while some entities can be created by placing items on the ground, such as the campfire.

Development

I started progress in late 2022, and it has stalled in late 2023. It has been a great journey and I'm quite proud ofthe project.
I've drawn my own font, all textures except player's are also by me, and I've made a whole UI library in Go just to draw some buttons on screen

Screenshots

Bamboo screenshot showing player standing on a grass field near a campfire, among some trees
Near the spawnpoint
Bamboo screenshot showing player standing near to a cave entrance
Cave entrance
Bamboo screenshot showing player inside cave standing near to iron ore
Iron ore inside a cave