To start All of this, you need get a raw-data of any files.

Suppose you have a PNG file.

We can get its raw data by HEX-readers or just javascript.

// html
<input type="file" id="file1" />
// js

let ui8 = new Uint8Array(resp);
let rawData = [...ui8];


Let’s say you have two project A and B, B depends on A, which you are working on B but also A sometimes.

You’ve npm installed A in B, once A’s file changed you need npm install A in B again in every time.

It’s a piece of shit, right?

Base configs to combine these packages in project

Node env

node version: 12.16.2
npm version: 7.19.0

Packages version

"eslint" : "^7.32.0",
"prettier" : "2.4.1"

Install and config eslint

npm install eslint -D./node_modules/.bin/eslint --init# For question How would you like to use ESLint?
# To check syntax, find problems, and…

There was a weird Bug annoying me for weeks, since i embed GeoGebra(GGB)-evaluator in a web app.

When user invoked GGB-related components in web app, GGB keep running and using a ton of cpu and memory, if you keep tab’s opening, may lead several issues like huge cpu using, high…

  1. Enter the official website of Centos to download appropriate system file.
  2. Click plus icon which on the top right corner of Control-Center of Parallels Desktop. Choose Install Windows or another OS from a DVD or image file. Parallels Desktop will show you all usable files with continuously scanning. Click Centos OS Linux item and Continue. Uncheck Express Installation, change User Name to root, leave the rest inputs field empty. Continue and Create.
  3. Once Parallels Desktop Ready to Install, you will see that GUI to lead you choose language, Timezone and time, and something other setting. click INSTALLATION DESTINATION and set where you want to install system.
  4. during the installation you can set your user’s password or create a new user.
  5. waiting for GUI showed the message that notice you the installation was finished, then reboot your virtual system.

Simplest demo by using basic methods and events in the WebRTC


  • one pc ( with camera and mic ) and one mobile devices(or any Mobile-UA client)
  • solid network



Interactive Connectivity Establishment (ICE) is a technique used in computer networking to find ways for two computers to talk to each other…

Since you can’t control a gif while its playing . resolve its bit data will use a ton of the memory when you have dozens GIF files. We need an alternative solution to reach that.

So by analysis the GIF format that has a several advantages/features :

  1. highly compression(with LZW…



A simple method even through your are a newbie. It had two parameters start and end, but in so many using cases we ignore them.

Look up the MDN and tc39

let arr = [1,2,3,4,5];
let arrCopy = arr.slice();

Similar one


var arr = [1,2,3,4,5,6]
var arrCopy = arr.slice();

yahone chow

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