Skip to content
View illright's full-sized avatar
  • Amsterdam, Netherlands
  • 06:21 (UTC +01:00)
  • LinkedIn in/illright

Organizations

@pnpm @feature-sliced @Innopoints

Block or report illright

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
illright/README.md

I'm a front-end developer. Hi! πŸ‘‹

23 y.o. β€’ πŸ‡·πŸ‡Ί πŸ‡ΊπŸ‡Έ πŸ‡³πŸ‡±

Trusted technologies:

  • πŸš€ Svelte, React, Remix
  • 🌐 TypeScript, JavaScript
  • πŸ› οΈ Vite, Rollup, Webpack
  • 🚦 Git, Docker, GitHub Actions
  • πŸ” Jest/Vitest, Cypress

Connect with me on LinkedIn!

My Developer Origins

I started coding in 2015, got really invested in Python. Their documentation was so nice to read that I would read it like a book instead of history classes. Pretty soon I realized that I just really enjoy seeing what I build, and so began my journey into the world of web dev. I loved learning because I would do it for pleasure rather than pressure such as from a job, which is how I ended up with many open-source projects and a deep respect for good developer experience.

Major Projects

I know CV's are supposed to list projects from the most recent one to the least, but that doesn't tell a good story, now does it?

Prior to these projects, I had a 🐍 back-end background, then started building static HTML pages and learning the intricacies of CSS. Around that time I also chewed on the YDKJS book series, which got me from "JavaScript is weird, {} + [] == 0? πŸ˜’" to "Oh yeah, JavaScript makes perfect sense (almost) πŸ€“".

Innopoints β€’ 2019

Read the story

In 2019, I wanted to make a difference so I embarked on a large passion project to create a service for managing and rewarding extracurricular volunteer work at Innopolis University. I wasn't in it alone, working with two of my mates from university, but it is only when I look back at it that I realize how much was there to be desired in terms of project management. I designed the whole thing from scratch and played a major role in both the frontend and the backend. This was my first experience with a proper JS framework, and it all just clicked.

Also I may have been in love while doing this project, which really helped with the motivation :)

Here I learned modern JS, Svelte, Docker, Figma... Just practically everything that's needed for a full-stack web application these days.

🌐 Live Version Β /Β  πŸ“• Repositories


Attractions β€’ 2020

Read the story

In order to design the Innopoints, I needed a solid UI kit. So I designed my own. Somewhat Material-ish, but at the same time, not at all. From the beginning it was made to be accessible by default, though it still has a way to go until it will get the title of β€œfully accessible”. My teammate from Innopoints joined me on evolving this UI kit into a separate project. We called it Attractions. Then came the trouble of creating an npm package and all the learning that came with it. The Svelte ecosystem wasn't as rich as it is now, so we wanted to give developers the benefits of strong typing without the burden of committing to TypeScript. I'd say it went well.

Here I learned TypeScript and npm packaging and got experience of maintaining an open-source project.

🌐 Website Β /Β  πŸ“• Repository


Draw, I'll Help β€’ 2021

Read the story

A curious front-end developer taps into the unknown β€” practical machine learning! It's amazing how little effort is required nowadays for a very solid computer vision system, thanks to the state-of-the-art YOLOv4/YOLOv5 model. This project is not about that, however, and what it does surely doesn't require computer vision, but take my word for it, YOLOv4 is insanely powerful.

So what's this project about, then? Well, imagine if a powerful machine learning model of the YOLO variety ran in your browser. No need to wake up, it's not a dream. This project is a proof-of-concept that you can embed a computer vision model right into your SvelteKit application and export it into a bunch of static files to serve on GitHub Pages! This project was a solo effort, and that includes an all-nighter to get the project the best it can be before it has to be presented next morning. Yeah, not particularly proud of the sleep deprivation πŸ’€.

Here I learned how to train and embed an ML model into the browser to be executed by JavaScript, powered by Web Workers. Also I learned about Feature-Sliced Design, which is now my favorite frontend architecture.

🌐 Live Version Β /Β  πŸ“• Repository


Cast β€’ 2022

Read the story

Remember the Innopoints team? Reunited with two other strong developers into what is basically an unstoppable team, we started working on... a podcast player? Not just any podcast player, though, as the mission was to create the most robust podcast player out there.

Tools of the trade? Unit tests, integration tests, end-to-end tests, security tests, accessibility tests, visual tests- *deep breath in* CI/CD pipelines, type checking, uptime monitoring, beautiful architecture, GitHub authentication, unmanaged backend with Supabase *deep breath out*. Impressed yet? Then go check out the README in the repository, it speaks quite well for itself.

This project was a ton of fun, and a way for us to discover just how great it is to build a web app these days. I managed the team and was the lead developer, working on the project from all aspects. Also I created the design, sweet and simple. And a README (my best one yet!)

Here I learned all about automated testing, Supabase, but most importantly, how to manage a team of developers and create a productive and motivating environment where everyone feels equal and heard.

🌐 Live Version Β /Β  πŸ“• Repository

Acknowledgments & On Privilege

I recognize that my developer journey and my current skill set is a result of years of dedication, passion and practice. However, I also recognize that I'm privileged enough to have a strong education and all of the internet at my fingertips to turbocharge my self-learning and practice. Not everyone has such an advantage, and I would be honored to make a difference in the world that would enable more people a brighter future they dream of.

I'm grateful to:

  • my mother, who encouraged me to take a scary leap in education and always trusted me to do the right thing.
  • my high school, SESC USU, where the teachers were very talented and supportive.
  • my university, Innopolis University, for a comfortable roof over my head, complete financial independence, and 4 years of creative freedom to find myself wherever it may be.
  • my friends, who always made sure I have a fulfilling life apart from all this computer frenzy.

I believe in the principles of Ethical Design and pledge to use my privilege for the better.


My musical recommendation is WLUWD by Tristam.

My homeland, Russia, has brought war to Ukraine.
I feel ashamed for the actions of Russian authorities and stand with the people of Ukraine.

Thank you for reading this far ❀️

Pinned Loading

  1. feature-sliced/documentation feature-sliced/documentation Public

    🍰 Architectural methodology for frontend projects

    MDX 1.6k 168

  2. feature-sliced/steiger feature-sliced/steiger Public

    Universal file structure and project architecture linter

    TypeScript 95 6

  3. attractions attractions Public archive

    [DEPRECATED, see readme] A pretty cool UI kit for Svelte

    Svelte 1k 35

  4. aabounegm/cast aabounegm/cast Public archive

    A podcast listening progressive web app with all-around automated quality assurance

    TypeScript 22 2

  5. Innopoints/frontend Innopoints/frontend Public

    The frontend for the IU Innopoints project

    Svelte 3

  6. worker-request-response worker-request-response Public

    A Promise API for submitting requests to workers and tracking responses.

    TypeScript