Skip to content
View svyatov's full-sized avatar
👨‍💻
👨‍💻

Block or report svyatov

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
svyatov/README.md

Full-Stack Engineer · Open-Source Maintainer · AI-Augmented Builder

Ruby at the core, 15+ years shipping production systems end to end.


Languages & Frameworks

Ruby Rails Hotwire Sidekiq TypeScript React Next.js Tailwind CSS Python Go

Data & Infrastructure

PostgreSQL Redis Docker AWS Ansible Linux CI/CD

AI & Dev Tools

OpenAI Claude Code Cursor

Open source I maintain

The work below is mostly closed-source, so here's the stuff you can actually click into:

  • sec_id - validate, parse, normalize and convert securities identifiers (ISIN, CUSIP, SEDOL, FIGI, LEI, IBAN, and more), check-digit math included. My oldest gem.
  • clsx-rails - clsx/cn view helpers for Rails; a drop-in class_names replacement that benchmarks 2–4× faster.
  • clsx-ruby - the framework-agnostic core: conditional CSS class strings for ViewComponent, Phlex, or plain templates.
  • hacker_news_sorted - Chrome extension to re-sort the HN front page by points/time/comments. TypeScript, Manifest V3, zero data collection.
  • oz - config-driven CLI wizard framework in Go: define prompts in YAML, wrap any tool in a discoverable TUI.
  • create-rails-app · create-gem - interactive wizards for rails new and bundle gem, so you stop looking up flags.
  • http_wrapper - a small, ergonomic skin over stdlib Net::HTTP.
  • smsru_ruby - dependency-free client for the SMS.ru API: send SMS, phone-call verification, delivery status. Fully RBS-typed, with constant-time webhook signature verification.

a few more on the repos tab

What I like working on

  • A blank repo and broad ownership - schema, infra, deploy pipeline, the lot. Building something from zero is the part that actually energizes me.
  • Small teams with a short chain of command. Move fast, but with quality; no long approval chains.
  • Designing good interfaces - clean APIs for the people who call them, sharp CLIs and libs for the people who build with them.
  • Untangling messy code into something you can reason about. Decomposition is the fun part, not the chore.
  • Making slow things fast - finding the real bottleneck and killing it: N+1 queries, missing indexes, counter caches, hot-path denormalization. Measured wins, not guesses.
  • Ruby/Rails by default, Go for CLIs and small services, TypeScript on the front end - increasingly AI-augmented across all of it.

Pinned Loading

  1. sec_id sec_id Public

    A Ruby toolkit for securities identifiers — validate, parse, normalize, detect, convert, generate, and classify. Supports ISIN, CUSIP, CEI, SEDOL, FIGI, LEI, IBAN, CIK, OCC, WKN, Valoren, CFI, FISN…

    Ruby 8 1

  2. hacker_news_sorted hacker_news_sorted Public

    Google Chrome extension for sorting Hacker News your way — by points, time, or comments — instantly.

    TypeScript 3

  3. clsx-rails clsx-rails Public

    The fastest conditional CSS class builder for Rails - 2-4x faster than class_names

    Ruby 8

  4. smsru_ruby smsru_ruby Public

    A modern, dependency-free, fully typed Ruby client for the SMS.ru HTTP API

    Ruby 1

  5. oz oz Public

    Config-driven CLI wizard framework

    Go 2

  6. dotfiles dotfiles Public

    My "dotfiles"

    Shell 2 1