Welcome
Hi! My name is Marat, and I'm a self-taught coder with no university or college degree in Computer Science. Programming provides you with limitless possibilities to express your creativity, and you always have something new to learn. That is why I chose this path.
Portfolio
Random Quote Generator
A simple web page which displays random quotes when a user clicks a button at the bottom of the screen. This project reflects my ability to work with basic JavaScript code, HTML and CSS. A new quote appears on the screen every 10 seconds even if a user doesn't do anything due to setInterval function.
Pagination and Content Filter
This is a web page which contains contacts of fictional employees. All the data are stored on the page. A user can look through employees list using pagination buttons at the bottom of the screen or a search field. The project demonstrates my knowledge of how to iterate through arrays of data and find the paticular information that is required.
Interactive Web Form
This web form validates user's input on the client side of a web application. Form data are not submitted and request to a server is not send until all the fields of the form are filled in the correct format. The project is based on DOM elements targeting and manipulation as well as on conditional statements.
Object Oriented Programming Game
A browser-based, word guessing game 'Phrase Hunter'. A player tries to guess a random, hidden phrase by clicking letters on the screen or keyboard. This is an application built on foundation of object oriented programming paradigm. It is divided into separate objects each of which has its set of properties and methods.
Employee Directory
This project represents a database of employees for a fictional company. Employees data are received from a third-party API after a GET request is sent to it. Then the response from the API in JSON format is converted to HTML on the web page. Here you may observe a technology known as AJAX in action.
Let Me Remind You
A to-do list application with the help of which a user can create tasks, assign subtasks to them, edit, delete, and mark them as completed. This project involves the usage of browser's local storage so that tasks created by user are stored in its memory and don't dissapear after the browser is closed.
Star Quiz
A quiz about stars in the Milky Way Galaxy. A user must answer 5 questions. There are 4 possible answers for every question with only one being true. Depending on total score different messages appear on the final screen. Vanilla JavaScript and basic CSS were used for this project.
Keyboard of Victory
A fun little game. Attention! It is meant to be played on a computer with a keyboard. Player must eliminate words falling from the top of the screen before they reach the red line. This is achieved by typing them on a keyboard without mistakes. Successful typing during one minute provides victory. The project combines CSS animations and JavaScript DOM event listeners.
Basics of Electricity
A learning resource dedicated to the topic that has always sparked my interest - electricity! The information is divided into sections to make it easy to consume and understand. Each section provides one or more visual animations illustrating the idea described in its text.
Connect Four
A two players browser game where the goal is to connect four circles either horizontally or vertically by dropping them inside the special board before your opponent does. I explored basic interactive SVG animations controlled by JavaScript event listeners in this fascinating project.
Tic-tac-toe
A classic game of tic-tac-toe. Two players compete, trying to fill either a row, a column, or a diagonal with their figures before the rival does. Each player has their turn and finishes it by clicking a mouse cursor on an unoccupied cell in the grid. This project was good practice for sharpening my coding skills in JavaScript and functional programming.
Directions
A small game that I made for my nephew to help him remember the names of different directions. You need to move a mouse cursor according to labels that are written in the middle of the screen. If you move the cursor wrongly, the panel will turn red, and a mistake counter at the top right corner of the screen will increase by one. The goal of the game is to move cursor in right directions without making any mistakes.
Exercise Timer
A web application for composing a program of exercises with different duration. A timer is set for each exercise which sounds the alarm after the time limit comes to an end. A user can also set time for rest between exercises the end of which is also announced by a sound alarm.
Word Memory
A set of interactive exercises to help the user memorize the names of different things and creatures. The task is simple: type correctly the name of the object which image is displayed on the screen. I did this project for my nephew.
Maze
Find a way out of a maze using key arrows! Complete all levels and watch a colorful animation, or open a side bar and choose a level that you like.
Finnish Now!
This is a web app, built with JaveScript front-end library React, for learning Finnish language.
Learn to choose
This is another small project for my nephew. The goal is to teach him to choose one right answer from given different options.
Pick a shape
There is a set of colorful shapes on the screen. The goal is to choose the one that is mentioned in the instruction field. User must find the shape and click on it. The shape disappears after being clicked. After that another shape is chosen randomly among the remaining ones.
Skills
Languages
- JavaScript
- Python
Libraries
- React
- React Native
- Express
- Flask
Databases
- Firebase
- MongoDb
- SQL