Arcana

Category: Кто я

Личная ОС + творческое портфолио

Самостоятельно собранная «личная операционная система»: планер, трекер, 3D-граф знаний — и витрина-портфолио как публичное лицо. Всё self-hosted, приватное ядро под /login.

Tags: personal-os, self-hosted, портфолио

ARCANA

Yaroslav Vlasov|Software engineer|Personal OS and portfolio

The interactive 3D scene did not start: this browser has no WebGL, or JavaScript is turned off. Everything it shows is below as text — who I am, what I build, selected work and contacts.

Who I am

Yaroslav VlasovSoftware engineer. Saint Petersburg State University · Faculty of Mathematics and Computer Science · Modern Software Engineering, year 2. Saint Petersburg.

I build systems end to end — from the database schema and the deployment to the shaders. The site you are scrolling right now is the proof: every line of it is mine, from docker-compose to the last line of GLSL.

System pulse

  • Nodes in the knowledge graph: 12
  • Edges between them: 19
  • System online: 4 hours
  • Last deploy: August 18

Work

  • Arcana

    A personal OS on my own server: planner, exam mode, knowledge graph, tree of goals.

    Next.js 16, PostgreSQL, Docker

  • EDF scheduler

    Works out whether you will make your deadlines, and says plainly what to move.

    TypeScript, algorithms, tests

  • Observatory

    A renderer for knowledge on bare R3F — the same one that drew this page.

    three.js, WebGL, shaders

More on GitHub

  • C_Cpp — Practice in C and C++: algorithms and data structures.
  • OOP_25-26 — лабы и проекты по 1 курсу ООП
  • ConcoleCheck — Консольное приложение шашки
  • Kotlin — Course projects in Kotlin.

Trajectory

  1. July 2026Foundation on my own hardware

    Built: Next.js 16 + PostgreSQL + Docker Compose + Caddy with automatic HTTPS, layered data access (zod → repository → service).

    Learned: Defence in depth: a proxy redirect is UX, not a security boundary; the real check is the first line of every server action.

  2. July 2026Backups that do not leak

    Built: pg_dump → gzip → gpg in a single pipeline, with no plaintext ever touching the disk; optional off-site upload of the encrypted dump.

    Learned: A backup without a tested restore is not a backup. And one intermediate file on disk undoes all of the encryption.

  3. July 2026A planner with honest arithmetic

    Built: A priority engine and an EDF scheduler: it works out whether the deadlines are reachable and names what has to move. All of it under tests.

    Learned: An algorithm is worth exactly as much as it is trusted. So the scheduler does not just hand over a plan — it explains why a task ended up on top.

  4. July 2026Estimates that learn

    Built: A timer and real minutes tracking; size estimates adjust to how the work actually goes.

    Learned: Feeding reality back into the model is the cheapest way to make a system more accurate without adding a single new form.

  5. July 2026Exam mode

    Built: A 0–5 mastery model on top of the subject catalogue, separate calculation engines, import of a preparation plan.

    Learned: A mastery scale beats a “learned it” checkbox: it shows where you actually are, and where to go next.

  6. July 2026Knowledge graph and the secret circuit

    Built: The knowledge graph as a projection layer over the data; the Tree of Goals in separate tables, with AES-256-GCM encryption of its contents.

    Learned: Secrecy holds better in architecture than in a filter: the private zone is simply never imported by the public one, and a guard test keeps it that way.

  7. July 2026A public window

    Built: A whitelisted snapshot of the graph for the outside world, plus a separate showcase editor: draft, publish as a snapshot, roll back.

    Learned: Splitting “draft” from “published” costs one table and removes the one real fear — showing something by accident.

  8. July — August 2026The “Skeleton of Knowledge” showcase

    Built: This scroll experience on bare React Three Fiber: a crystal skull, a knowledge graph inside the brain, a descent along the skeleton, custom dust and nebula shaders.

    Learned: In 3D almost every visible defect is not a wrong parameter but a wrong model. The jittery dust was not fixed by tuning — it was fixed by simulating velocities.

How this site works

  • My own VPS, Docker Compose, Caddy with automatic HTTPS. Not a single external panel.
  • Next.js 16 and PostgreSQL. The database port is not published at all.
  • Eleven written architectural decisions — each one with its reasoning.

Full infrastructure diagram and architectural decisions

CV

CV on one page

Contact