Skip to content
View viktor-yakubiv's full-sized avatar
🇺🇦
🇺🇦

Organizations

@oacore

Block or report viktor-yakubiv

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.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

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

Report abuse
viktor-yakubiv/README.md

 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

Pinned Loading

  1. every-color every-color Public

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

    JavaScript 6

  2. oacore/design oacore/design Public

    Design Elements is shared components library for CORE. Made with ❤️ and React

    JavaScript 4

  3. ioitua/spring-journey ioitua/spring-journey Public archive

    Презентація «7 міст для весняних подорожей Європою». Завдання 2 туру 4 етапу ІОІТ 2017

    HTML

  4. brackets-ect brackets-ect Public archive

    Forked from SteveMcArthur/brackets-eco

    Provides ECT template syntax highlighting for the Adobe Brackets IDE

    JavaScript 1 1