Photo by Priscilla Du Preez on Unsplash

WebRTC makes it possible to transfer files between two browsers, eliminating the need to upload a file to a server before sharing. Data is not stored in an intermediary server, which makes the transfer fast and secure. In this article, we will build a simple React app that will allow users to share images directly with each other using WebRTC.

A demo of what we will be building:


Interactive maps are good for displaying geographic information. But we can also use them to get location data from users. This comes in handy if we are building location-based applications and we want an alternative to address text fields.

Here is a demo of what we will be building in this article:

Final demo

Our Location selector will be able to do the following:

  • Initially, it starts off at the user's current location, if location tracking is allowed and supported by the browser. If not, it will be centered at a default location.
  • Double tapping(clicking) will place a marker on that spot…


Build and change themes to fit your app’s different purposes

Photo by Lukasz Szmigiel on Unsplash.

Vuetify is a Material Design component framework for Vue.js. It provides a lot of features, including the ability to problematically change theme colors in your application. Enabling users to change themes is a good customization feature that gives their app a more personalized feel.

In this article, we will create a Vuetify web application that can dynamically change between themes at runtime and also switch between dark and light modes.

To start, we will create a new Vue.js application. We can do this through the Vue CLI on the terminal:

vue create dynamic-theme

Once that is done, we add Vuetify…


In this article, we are going to build a text similarity checker using Cosine Similarity in JavaScript and HTML.

What is cosine similarity?

Cosine similarity measures the similarity of two vectors. It measures the cosine of the angle between two vectors projected in a multi-dimensional space. We can use this metric to determine how similar two documents are irrespective of their size.

cos(a,b) = a . b / ||a|| ||b||

The cosine similarity between two texts can be found by using the above formula on the vector representation of each of the text’s word count. …


The finished Events Board application Home Page

Ruby on Rails is an open-source framework for building modern web applications using the Ruby programming language.

In this post we will be making a simple CRUD web app called “Events Board”. The app displays information about an event, where and when it is happening. It will also have a dashboard to add, update and delete events.

We will be using PostgreSQL as our database. You can use any kind of database you prefer. By default Rails configures an SQLite database for you. If you want you can use that. We will also use Materialize CSS for styling our HTML.

Eyuel Berga Woldemichael

Software Engineering student at Addis Ababa Institute of Technology

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store