GithubHelp home page GithubHelp logo

 Russia invaded Ukraine, killing tens of thousands of civilians and displacing millions more. It's a genocide. Please, help us defend freedom, democracy and Ukraine's right to exist.

Hello 👋

I am an open source developer with background in software engineering and passion in user interfaces and crafting great experiences, for developers as well as non-tech users.

Currently, I contribute to open source software among three categories: working with abstract syntax trees (ASTs) enriching the markup data and automatic writing routines, styling web pages in a plain human language, sharing my personal workflows and configs for inspiration. As a member of Kottans, I give lectures focussing on semantics of HTML markup and the best practices of styling web pages, mentor students guiding them along web developerʼs path.

Previously, I was a Head of Web and an author of problems at Internet Olympiad in Information Technologies, leading front-end engineer and a product designer at CORE.

Highlighted work

My engineering interests in open source are shaped among three categories, described below.

Transforming ASTs, unified and rehype

Traversing and transformation of abstract syntax trees for linting and enrichment of simlplified markup like Markdown to heavy and accessible HTML.

The use-case can be simply found here on GitHub: in a repository you write a README.md in a simple Markdown markup (GitHub Flavoured Markdown to be precise) and GitHub converting it to rich HTML in its web interface, transforming specific blockquote syntax to highlighted notes or warnings.

This is achieved by parsing Markdown text into a tree, transforming it into another AST, e.g. HTML and transforming it more along the way applying context-related data and enrichments, then serialising the tree back to text. In my work, I utilize unifiedʼs ecosytem, including remark and rehype to do this magic. Unified.js uses plugins to apply such kind of AST transformations. Below, I list a few ones that I wrote for my needs and might be useful for you:

Styling the Web

Going against common trend in scoped styling and heavy usage of utility-based CSS, I develop libraries that focus on: embracing semantic and accessible markup; using plain language for definitions; and applying modern best practices and future technologies. The goal is to build a solid styling foundation for the Web. My current work listed below:

  • css — a styling library applying modern best practices in colours, typography and layout, embracing semantic and accessible markup, putting it over class-based styling
  • every-color — an experimental CSS-library enabling users apply colours to text and blocks using plain human language

Personal workflow enrichments

Sometimes, I write code to be able to write more code more efficiently. This is what I did for it so far.

  • dotfiles — how I configure my workspace
  • nvim — I use Vim (btw); here is how I configure it.
  • brightness.js — once I needed to synchronise brightness of my external display with amount of sunlight along the day
  • macos.itermcolors — I like smooth integration of terminal with the colour scheme of the operating system but there was no such an option

Viktor Yakubiv's Projects

brackets-ect icon brackets-ect

Provides ECT template syntax highlighting for the Adobe Brackets IDE

css icon css

CSS Framework. Early development

every-color icon every-color

A utility class library, letting you write semantically correct and concise sentences in the class attribute.

filechecker icon filechecker

Simple file checker and counter with Python and SHA256

hast icon hast

Hypertext Abstract Syntax Tree format

init icon init

A repository template for quick starting of my future projects

lp icon lp

LP timetables parser

musishop icon musishop

Practice with network services on Java with the Music Shop example

nvim icon nvim

Another neovim configuration

rehype icon rehype

HTML processor powered by plugins part of the @unifiedjs collective

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.