Skip to content
Section 05

About this studio

A short note on who runs this site, where it lives, and what it is for.

Colophon — the person

Elena Kuznetsov, runs PixelCraft.

I draw small things at 32×32 and write the GLSL that pretends to be the screen they grew up on. This site is the working notebook for that practice — tutorials, palette studies, and the occasional gamedev log from Quiet Frame.

Portrait of Elena Kuznetsov in her Kyoto studioKyoto, March 2026. Studio next to the Kamogawa, third floor.

The short version

I am a pixel artist and graphics programmer in Kyoto, Japan, originally from Novosibirsk in southwestern Siberia. I have been drawing pixels since 2013, writing shaders since 2016, and selling small things on Itch.io since 2019. I trained as a computer-vision engineer, which informs almost everything I write about colour and dithering. PixelCraft is a one-person studio. There is no marketing department, no editor, no funnel. If a piece is here, I wrote it because I wanted to remember something.

What is on the site

There are three kinds of post.

Tutorials are short, with working code, and an honest list of what they do not cover. The bayer-dither shader piece is the canonical example — eighty lines of GLSL, a thirty-line writeup, links to the original references. If a tutorial here cannot be reproduced in an evening, I have failed at writing it.

Process pieces are slower. They are about how I work, not what to copy. The piece on switching from Photoshop to Aseprite is the kind of post I mean — it is mostly opinion, lightly argued, and the value is in the second read.

Gamedev logs are notes from work on Quiet Frame, my browser-pixel game that I am slowly porting to Steam. The recent Tauri post-mortem is one of those. These exist mainly so I can find them again in a year.

Tools I actually use

I run Aseprite as the default editor, with LibreSprite as the backup on machines that cannot run a licence-locked tool. Shader work happens in Godot 4.3 or Shadertoy for prototyping. Game code is Rust where I can get away with it and GDScript where I cannot. Palettes come from Lospec more than from my own hand — I publish there occasionally, under the same handle.

For colour science I lean on Björn Ottosson's OKLab writeup and Edward Tufte's Envisioning Information (still the best book on the subject). The CRT-style shaders draw heavily on the libretro shader pack, with my own small additions stripped down to about five functions.

What this site runs on

VitePress, with a small custom theme. Hosted on Cloudflare Pages. Set in Fraunces (display, with the SOFT axis turned up), Inter Tight (body), and JetBrains Mono (code). Build pipeline takes about nine seconds on a 2020 M1. No analytics other than Umami, no tracking, no cookies.

The full source for the site is on GitHub under the MIT licence, including the posts. The pixel-photography on the index page is by various Unsplash contributors and is credited per image.

How to reach me

I do not run comments. If you want to discuss a piece, the easiest place is Mastodon at @[email protected]; replies there are the conversation and I answer most of them within a day. For longer things, email is open. For commissions, I take on roughly four pieces a year and they are usually palette-design and shader work, not sprites — that is an honest division of my time, not a price signal.

If you find a bug, broken link or typo, please open an issue on the site repository. I get to those within the week.

A note on the work

The pieces here are mostly tutorial and process, not opinion. I am suspicious of art writing that tells you what to think, and I try not to do that. When I have an opinion — usually about a tool — I label it as one and try to give you the data I used to form it. You are welcome to disagree; that is what Mastodon is for.

Thanks for reading. The index of work and the full archive are both one click away.

— Elena