Layer is a community where everyone can draw a pixel on a common "board". The original idea was born on Reddit. The r/Layer community is a metaphor for co-creation, that everyone can be a creator and contribute to a common cause.
What you will learn when creating your Layer project:
How JavaScript canvas works, knowing how to operate canvas is a critical skill in many applications.
How to coordinate user permissions (user permissions). Each user can draw one pixel every 15 minutes without having to log in.
Squoosh is an image compression app with many advanced options.
Gif 20 mb
By creating your own version of Squoosh, you will learn:
How to work with image sizes
Master the Basics of the Drag'n'Drop API
Understand how APIs and event listeners work
How to upload and export files
Note: the image compressor is local. It is not necessary to send additional data to the server. You can have a compressor on your own, or you can on a server, of your choice.
Calculator
Come on? Seriously? Calculator? Yes, that's right, a calculator. Understanding the basics of mathematical operations and how they work together is a critical skill to simplify your applications. Sooner or later you will have to deal with numbers and the sooner the better.
Everyone used a search engine, so why not create your own? Crawlers are used to search for information. Everyone uses them every day and the demand for this technology and specialists will only grow over time.
Google search engine
What will you learn by creating your own search engine:
How crawlers work
How to index sites and how to rank them by rating and reputation
How to store indexed sites in a database and how to work with a database
Music player (Spotify, Apple Music)
Everyone listens to music - it's just an integral part of our lives. Let's build a music player to better understand how the basic mechanics of a modern music streaming platform work.
Spotify
What you will learn by creating your own music streaming platform:
How to work with the API. use APIs from Spotify or Apple Music
How to play, stop or rewind to the next/previous track
How to change the volume
How to manage user routing and browser history
PS
What projects would you suggest to “repeat” on your own to improve your skills?