Skip to content

Instantly share code, notes, and snippets.

View Heunsig's full-sized avatar

Heunsig Jo Heunsig

View GitHub Profile
@faustinoaq
faustinoaq / myAngular.html
Last active March 28, 2025 22:30
Front-end libraries (React, Vue, Angular) and the basic principles of how they work, all in a single file using pure JavaScript (VanillaJS).
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>My Angular from Scratch</title>
<style>
.my-component {
font-family: Arial, sans-serif;
@nemorize
nemorize / korean-subway-station-list.json5
Last active March 28, 2025 04:53
대한민국 국내에 존재하는 지하철역 정보(역명, 지역구, 노선, 위/경도) 목록
[
// =======================================================
// 본 자료는 CC0-1.0 라이선스를 따릅니다.
// https://creativecommons.org/publicdomain/zero/1.0/deed
// 저작권자의 허락을 구하지 않아도 상업적인 목적을 포함한 어떠한 목적으로든
// 자유롭게 복사, 수정, 배포, 실연할 수 있습니다.
// =======================================================
// 모든 정보는 직접 수집하여 정리한 정보입니다.
// 일부 정보가 오기되었거나, 위/경도 좌표가 부정확할 수 있습니다.
// Gist 댓글을 통해 오류를 제보해주세요.
@AlexVipond
AlexVipond / README.md
Last active February 18, 2025 18:10
Updating arrays of elements with function refs in Vue 3

Updating arrays of elements with function refs in Vue 3

I did a screencast series recently talking about my favorite Vue 3 feature: function refs. Check out the screencast series for more context-in this gist, I'm going to answer a fantastic question I got in one of the videos' comment section.

This question was about how to properly update arrays of elements that are captured by function refs. Let's check out the basic principle first, before we look at the details of the question.

<script setup>
import { ref, onBeforeUpdate } from 'vue'
@kvnxiao
kvnxiao / awesome-selfhosted-sorted-by-stars.md
Last active April 27, 2025 09:31
awesome-selfhosted-sorted-by-stars.md

Awesome-Selfhosted

Awesome

Selfhosting is the process of locally hosting and managing applications instead of renting from SaaS providers.

This is a list of Free Software network services and web applications which can be hosted locally. Non-Free software is listed on the Non-Free page.

See Contributing.

@faressoft
faressoft / dom_performance_reflow_repaint.md
Last active February 10, 2025 17:21
DOM Performance (Reflow & Repaint) (Summary)

DOM Performance

Rendering

  • How the browser renders the document
    • Receives the data (bytes) from the server.
    • Parses and converts into tokens (<, TagName, Attribute, AttributeValue, >).
    • Turns tokens into nodes.
    • Turns nodes into the DOM tree.
  • Builds CSSOM tree from the css rules.
@davisford
davisford / Setup MongoDB on localhost as Replica Set
Last active February 15, 2025 11:17
Setup MongoDB replica set on local host with only a single primary
Add the `replication` section to the mongod.conf file:
```
$cat /usr/local/etc/mongod.conf
systemLog:
destination: file
path: /usr/local/var/log/mongodb/mongo.log
logAppend: true
storage:
engine: mmapv1
@joyrexus
joyrexus / README.md
Last active June 8, 2023 07:45
form-data vs -urlencoded

Nice answer on stackoverflow to the question of when to use one or the other content-types for POSTing data, viz. application/x-www-form-urlencoded and multipart/form-data.

“The moral of the story is, if you have binary (non-alphanumeric) data (or a significantly sized payload) to transmit, use multipart/form-data. Otherwise, use application/x-www-form-urlencoded.”


Matt Bridges' answer in full:

The MIME types you mention are the two Content-Type headers for HTTP POST requests that user-agents (browsers) must support. The purpose of both of those types of requests is to send a list of name/value pairs to the server. Depending on the type and amount of data being transmitted, one of the methods will be more efficient than the other. To understand why, you have to look at what each is doing

@miguelmota
miguelmota / randomDate.js
Last active October 9, 2024 22:10
Random date in JavaScript
function randomDate(start, end) {
return new Date(start.getTime() + Math.random() * (end.getTime() - start.getTime()))
}
console.log(randomDate(new Date(2012, 0, 1), new Date()))
@timohausmann
timohausmann / gist:5003280
Created February 21, 2013 08:43
Javascript Math: get the distance between two points.
/**
* return the distance between two points.
*
* @param {number} x1 x position of first point
* @param {number} y1 y position of first point
* @param {number} x2 x position of second point
* @param {number} y2 y position of second point
* @return {number} distance between given points
*/
Math.getDistance = function( x1, y1, x2, y2 ) {