All notable changes to this project will be documented in this file. See standard-version for commit guidelines.
3.9.0 (2022-05-21)
- css-box: box viewport height (b025f9b)
- css-box: min and max box width (7a57735)
- css-normalize: modern CSS normalize (08406ff)
- css-object: object fit element (843b5d7)
- css-prefix: CSS vendor prefix order (e928bcc)
- css-variables: CSS variables usage (0de291d)
- css-variables: dark mode CSS variables (a45d393)
- js-array: powerful
reduce
method (60debe9) - js-debugging: chrome devtool
rendering
panel (601cacc) - js-debugging: chrome devtool rendering panel (f08d430)
- js-events: implement mobile device gesture events (54c9b3d)
- js-events: standard
wheel
UI event (88f9026) - js-JamStack: build your own
Next.js
(b39080c) - js-low code: low-code development (8516ffb)
- js-performance:
WebPageTest
tool (3df77a7) - js-webpack: TSX properties parser webpack plugin (be19baf)
- js: global execution context (d39b8bb)
- react-store: atom store pattern (811478f)
- ts-interface: extend 3rd-party module interface (14b09f1)
- vim-neovim:
NvChad
configuration (2246b2a) - vim:
Nvchad
lspconfig (d92e773) - web-library: collaborative rich text editor (ff51321)
- web-library: components library (463ce0b)
- web-library: HTTP security headers library (2c44385)
- web-library: LaTeX math web component (6c17725)
- web-library: math components (a630d64)
- web-library: scroll effect library (aee7a34)
- web-library: short links expander library (0c00c7f)
- web-library: TSX React components properties parser (0926313)
- web-security: security HTTP headers (a675259)
3.8.2 (2022-05-18)
- baseUrl: change
baseUrl
based on CI information (731be95) - deps: update dependencies (non-major) (#291) (65f2214)
- deps: update dependencies (non-major) (#295) (61547af)
- assets-images: [ImgBot] optimize images (#302) (2630a04)
- assets-images: [ImgBot] optimize images (#305) (d5da2ff)
- assets: [ImgBot] optimize images (#290) (746e033)
- a11y: required context role and valid aria attribute (23f165e)
- css-color: CSS color module level 5 (46b4656)
- css-design: design better language selector (acd864f)
- css-design: navigation design (3543704)
- css-design: push notification design guide (5688e48)
- css-design: vertical rhythm (7b53efd)
- css-fonts:
font-display
for fonts fallback (fd4bc1f) - css-fonts:
unicode-range
for[@font-face](https://github.com/font-face)
(31c0e41) - css-performance: CSS loading performance (56cee1e)
- css-performance: CSS selectors performance (33500c2)
- css-performance: put
Critical CSS
in<head>
to avoid re-rendering (74b5b9f) - css-selector:
:is
selector priority (93aee31) - css-selectors:
:has
selector (458a099) - css-selectors: focusable selectors (9239d33)
- css-tailwind: tailwind.css configuration (4816302)
- css-text: text wrapping and word breaking (782ea6d)
- css: carousel design pattern (c3c2b86)
- css: CSS
color
value reference (923ecca) - css: inline block model (489887c)
- css: mouse-only focus CSS styles (37017ae)
- css: put critical CSS in
<head>
to avoid un-styled content (b6ff018) - css: search light effect (e3417e2)
- css: state of CSS 2022 (0328177)
- design patterns: design patterns in jQuery (9fa720d)
- design patterns: frameworks paradigms patterns (b287f3a)
- design patterns: implement singleton pattern using TypeScript (53531b7)
- design patterns: IoC and DI pattern (3c20163)
- html-a11y: a11y form field (fd7c123)
- html-a11y: a11y tips (f76544c)
- js-abort: abort controller API (cfc239b)
- js-array:
Array.from
function signature (515d01d) - js-array:
Array.from
mapper (0dc3c30) - js-array:
reduceRight
for array (3d1e64d) - js-array:
Typed Array
usage (600e039) - js-array:
Typed Array
use case (58c2db5) - js-array: array like interface (7213525)
- js-array: array methods (580accf)
- js-array: arrays difference and intersection (aed83a2)
- js-array: ES2022 array
at
method (481d41a) - js-array: implement
groupBy
viareduce
(3462e76) - js-array: recursively flatten array (8802bb6)
- js-array: remove redundant code examples (bfdbc4b)
- js-async: callback style asynchronous programming cons (e9f87d7)
- js-async: prefer
async
/await
not generator control flow (203fc57) - js-bigint: bigint usage (a670b2a)
- js-boolean: convert values to boolean (095e512)
- js-browser: browser process architecture (5983c80)
- js-browser: browser thread pipeline (ebf1235)
- js-browser: renderer process (dd9f21d)
- js-canvas: draw recursive tree (8bab477)
- js-class: anonymous class expression (6f48177)
- js-class: class constructor (21453b5)
- js-class: class declaration create temporal dead zone (43f95b1)
- js-class: class inheritance (c01fa43)
- js-class: class private and public fields (273d6d8)
- js-class: class private member (3c7e406)
- js-class: class private member never clash (79c86e2)
- js-class: class private member store place (d377939)
- js-class: class properties (bd3b64c)
- js-class: class prototype chain (60911a7)
- js-class: throw TypeError for constructing abstract class (9156a6c)
- js-collection: WeakMap and WeakSet use case (0ebc3f2)
- js-comparison: loose equality comparison algorithm (0a65939)
- js-Date:
getHours
andgetSeconds
(bdd91d0) - js-Date: Date and Temporal API cheet sheet (e2de30c)
- js-debug: logging setup (ab9f4b9)
- js-descriptor:
Object.getOwnPropertyDescriptor
usage (7db76e2) - js-destructuring: array and object destructuring (43ef8e6)
- js-destructuring: iterator and object conversion (2de8875)
- js-devops:
Webpack
configuration for CSS loading (8d6acbc) - js-devops: docker deployment (5571393)
- js-DOM:
clientLeft
andclientTop
(4b98d4c) - js-DOM: DOm append, insert and traverse (3c22ca8)
- js-DOM: DOM UI events (574131a)
- js-DOM: File API (9b15688)
- js-DOM: form events processing (88a46f0)
- js-error: ES2022
AggregateError
adnError.cause
(d107104) - js-error: ES2022 error class (436936c)
- js-esbuild: ESBuild basic configuration (e15bc13)
- js-esbuild: esbuild configuration for webpack (54a973f)
- js-events: ready UI events (b0cfcf1)
- js-factory: asynchronous factory method (88fe248)
- js-function:
functin.length
definition (6bd2a44) - js-function:
SetFunctionName
spec (06833ac) - js-functional: functional programming (1139ccb)
- js-functional: stream and observable (3af287e)
- js-function: function expression scope (4f9b998)
- js-function: function invocation types (746bb28)
- js-function: function parameters (91c5385)
- js-function: lexical scope for arrow function (0994a08)
- js-generator: generator object is self iterable iterator (68fc88c)
- js-generator: generator role (46695de)
- js-generator: generator traversal (245bd53)
- js-generator: generator type definition (self reference iterable iterator) (0aa0450)
- js-immutable: immutable data structure (f7a1891)
- js-iterator:
NodeList
is iterable (1f50df8) - js-iterator:
return(value)
for iterator (765275c) - js-iterator:
return
andthrow
for iterator (5e9717f) - js-iterator: asynchronous iterator (7dc4bd8)
- js-iterator: asynchronous iterator types (86388a5)
- js-iterator: closable iterator (8f62785)
- js-iterator: iterable object and class (335854f)
- js-iterator: iteration protocol (ba03a90)
- js-iterator: iterator and iterable interface definition (9edf3ad)
- js-iterator: self iterable iterator (a8b21d6)
- js-iterator: self iterable iterator usage (5582789)
- js-JSON:
JSON.stringify
replacer (2b35955) - js-math: math rounding functions (91c457e)
- js-Math: random number generator (bac1487)
- js-module:
import.meta.url
(edcd12c) - js-module: ES6 module features (40b85e9)
- js-module: ES6 module features (6c2ec64)
- js-module: ES6 module features and exports (b50c73c)
- js-module: ES6 module static analysis (6bc2568)
- js-module: ES6 module static structure (c06cf27)
- js-module: export default value and live reference (3b411bd)
- js-module: module design principles (0331c65)
- js-modules: CommonJS (CJS) to ES Module (ESM) exports (bfe21f6)
- js-modules: CommonJS bundler (79bbbea)
- js-modules: ES6 imports order (1b39071)
- js-modules: ES6 module export behavior (213e886)
- js-modules: import assertion and map (6502a11)
- js-number: ES6 number feature (49647a7)
- js-number: NaN query (7e57d26)
- js-number: number
toXXX
static methods (6ede218) - js-number: number conversion (20214b1)
- js-number: number judge methods (5ca2f7c)
- js-number: number static properties (c0a5774)
- js-number: safe number (f7f5ee0)
- js-number: underscore separator (3ad1fa8)
- js-object:
Object.assign
feature (528551f) - js-object:
Object.assign
pitfall (6139362) - js-object: concise deep clone (fbed5ef)
- js-object: difference between
Object.assign
and spread syntax (9445f26) - js-object: functional concise deep update (ef1321e)
- js-object: get global object additional keys (acc3026)
- js-object: obejct descriptor functions (665c70f)
- js-object: object deep clone (255e127)
- js-object: object descriptor functions comparison (5a32ce1)
- js-object: object descriptor get function (72ae887)
- js-object: object entries methods usage (e5e6ca4)
- js-object: object spread syntax features (814ed53)
- js-object: protect objects (094db34)
- js-object: shallow object freeze (efbeed3)
- js-operator: logical assignment operators (5bde2a2)
- js-operators: operator lookup tool (7f9e735)
- js-: parse HTML via fragment (3859a76)
- js-patterns: abstract factory method (a134646)
- js-patterns: class constructor pattern (55b3abb)
- js-patterns: decorator pattern (ec77d65)
- js-patterns: deprecated mixin pattern (b2b2717)
- js-patterns: disadvantage of mediator pattern (99d06bb)
- js-patterns: disadvantage of pub-sub pattern (8960ff9)
- js-patterns: factory method pattern (70b4d5a)
- js-patterns: flyweight pattern (845feef)
- js-patterns: JavaScript patterns guide (515b4f8)
- js-patterns: JavaScript useful code patterns (b8dc84a)
- js-patterns: mixin pattern (9c6732d)
- js-patterns: observer and pub-sub design pattern (326939a)
- js-patterns: rendering patterns (dd127cb)
- js-patterns: review command pattern (debbe44)
- js-patterns: use
Map
for flyweights (b53826b) - js-performance:
cloneNode
for performance (c66f516) - js-performance: 3rd party scripts loading (2303234)
- js-performance: bad
delete
operator (5d03969) - js-performance: brotli compression algorithm (bb95efb)
- js-performance: caching and reducing DNS lookups (81efda3)
- js-performance: changing optimization for HTTP/2 (c7f511b)
- js-performance: data loading best practice (e3d8ffc)
- js-performance: debounce and throttle (8e8052b)
- js-performance: dynamic loading scripts (e5a5d42)
- js-performance: ETag request and response (81ed8b0)
- js-performance: HTTP/1 long live connection (cb6f045)
- js-performance: HTTP/2 compress header (2e81373)
- js-performance: image sprites anti-pattern (b376e96)
- js-performance: LCP
SpeedIndex
optimization (ec628ac) - js-performance: legacy sprites optimization (643b9d5)
- js-performance: loading priority (6c753ce)
- js-performance: memoized function helper (db082f5)
- js-performance: performance best practice (637cb8b)
- js-performance: performance best practice (c29c86a)
- js-performance: prefetch library (0f8e422)
- js-performance: preload pattern (1dced8e)
- js-performance: preload scanner upside and anti-pattern (2dcf179)
- js-performance: PRPL pattern (7545a11)
- js-performance: reduce network protocols cost (e6dc197)
- js-performance: review HTTP/2 upside (487046f)
- js-performance: script loading type (72fb6dc)
- js-performance: simple
debounce
andthrottle
(659f997) - js-primitives: falsy bigint (e2513d7)
- js-primitives: zero value expression (e92764e)
- js-promise:
Promise.all
usage (1a65188) - js-promise: promise combinator functions (ccdf28b)
- js-promise: promise polyfill (92d2ea7)
- js-promise: promise pros over callback (eafa04c)
- js-prototype:
Symbol.hasInstance
for reference type detection (074cf8f) - js-prototype: create own property (b440821)
- js-proxy: proxy handler for
this
binding (e28814c) - js-proxy: proxy pros (e8289a6)
- js-proxy: proxy real world usage (bb0cacf)
- js-proxy: proxy usage (b1704c2)
- js-reactive: data stream (e89e8bc)
- js-reactive: observable interface definition (160179b)
- js-reactive: observable subscription types (b6b8376)
- js-reactive: observable usage (97e0ac7)
- js-reactive: RxJS utility functions (d5fd1a4)
- js-RegExp: common useful patterns (d13b762)
- js-RegExp: RegExp functions guide (c74a02b)
- js-RegExp: RegExp named groups usage (da837b1)
- js-rollup: basic rollup configuration (e117e9b)
- js-RxJS: reactive programming vs asynchronous iteration (3567901)
- js-scope: global scope and global object (3cdbb86)
- js-security: zero trust access control (16e82af)
- js-set: two set manipulation (f381055)
- js-stream: data fetch mode between producer and consumer (36b96f2)
- js-string:
string.repeat
(4af0570) - js-string: ES6 string methods (3dba8de)
- js-string: string conversion (faa9a12)
- js-string: string methods (b74a972)
- js-string: string split/join/slice (9a8817b)
- js-style guide: remove redundant examples (1bdcaae)
- js-symbol: object wrapper for symbol primitive (170778d)
- js-symbol: symbol conversion (effa946)
- js-tc39: ES2015 features overview (210b269)
- js-tc39: TC39 proposals process (47cbbf3)
- js-Temporal: Temporal API (64f9694)
- js-testing:
cy.its
andcy.invoke
handy methods (1b7dbd1) - js-testing: bottom-up vs top-down testing (2de8135)
- js-testing: cypress action commands (cfb97af)
- js-testing: cypress async nature (a8c3ef3)
- js-testing: cypress code coverage plugin (757ad2a)
- js-testing: cypress commands plugin (216430d)
- js-testing: cypress custom command (28f64a0)
- js-testing: cypress custom request commands (eb84a70)
- js-testing: cypress e2e testing principles (b5155a2)
- js-testing: cypress e2e testing setup (5775b41)
- js-testing: cypress events plugin (51c8abb)
- js-testing: cypress flake resistance and retry-ability (b99c003)
- js-testing: cypress network commands (113a8a4)
- js-testing: cypress visual testing plugin (e1a6626)
- js-testing: fast and isolated tests principle (a4e81f4)
- js-testing: Jest async return value mocks (a4f2321)
- js-testing: Jest aysnc reject value mocks (db2b08c)
- js-testing: Jest mocks API (6155785)
- js-testing: mock
Date
API for repeatable tests (92eb8b0) - js-testing: mock
Timer
API for repeatable tests (cd381d5) - js-testing: mock make tests deterministic (f62f84d)
- js-testing: mocks border (1a72532)
- js-testing: positive, negative and Exception tests (39d292d)
- js-testing: repeatable tests via mocks (21707c3)
- js-testing: test-driven development principle (6c21b4d)
- js-testing: testing design principles (60919da)
- js-testing: testing-library jest-dom extend matchers (b14a4d8)
- js-testing: update React testing example (1554da3)
- js-this:
this
binding for callable invocation (2a0e564) - js-timer:
requestAnimationFrame
usage (372b6b0) - js-type: generator type detection via
toString
(1c73a3b) - js-types: type conversion algorithms (2cb04e0)
- js-type: type detection regexp (b3de5fb)
- js-variable: const variable temporal dead zone (8f9dd9b)
- js-variable: explicit object wrapper for primitives (789eee0)
- js-variable: object wrapper for primitives (35faf1d)
- js-variables: variables comparison (2ff0e1c)
- js-vite: basic vite configuration (e5ee7f4)
- js-webpack:
css-loader
CSS modulesmode
configuration (57c5d60) - js-webpack: huge bundle downside (6ee1e0d)
- js-webpack: Next.js
splitChunks
best practice (09cc61a) - js-webpack: Next.js granular chunking (1f2dcd5)
- js-webpack: webpack css configuration (e624caf)
- js:
Symbol.toStringTag
(e218724) - js: dataset (a0ec1c2)
- js: dynamic script loader (2906619)
- js: encoding and decoding module (40024b1)
- js: iframe basis (4d6e4a7)
- js: iterator and gnerator type definition (eeb6942)
- js: server side rendering (45f10c5)
- js: web APIs (f777f71)
- linux-: compress and extract commands (8008932)
- linux-ffmpeg: scale and merge pictures (6394a78)
- linux-man: linux manual pages (e6ee35a)
- linux:
/etc/passwd
configuration file (3d7d966) - linux: find and search commands (711dfd4)
- node-assert: Node.js assert module (f76fcff)
- node-ENV: environment configuration setup (e2acca9)
- node: Node.js best practice (25a4136)
- node: Node.js version manager written in Rust (efeaef6)
- performance-fonts: compress and subset fonts (5141ada)
- PWA-service worker: caches version for service worker (c74b9f2)
- react-18: React 18 development strict mode (2c6f7f5)
- react-components: review compound components pattern (9f99691)
- react-deployment: skip
gh-pages
with single command (38753f2) - react-hooks:
useEffect
cleanup function (14c5927) - react-hooks: hooks composition pattern (71aebf2)
- react-patterns: framework paradigm (72eaf65)
- react-performance: babel plugin to hoist immutable values (82873af)
- react-performance: composition pattern (a22b8bd)
- react-router: React router internals (758befb)
- react-styles: variants driven styled components (4bc03e9)
- react-types: breaking change in
@types/react
v18 (24bd510) - react: Suspense and ErrorBoundary combined (ffc67e0)
- security: supply chain attack (0b773ab)
- ts-cli: ts compiler cli (40466cf)
- ts-decorators: Reflect metadata API (37b088d)
- ts-design: function interface design (29faf7d)
- ts-enum: enums usage (bff66e9)
- ts-function: funcion overload runtime (619b6a4)
- ts-generic: generic programming (ff99043)
- ts-guards:
Array.isArray
for type guards (0585280) - ts-guards: type guards (8330a63)
- ts-guards: type predicates guard (9cb8599)
- ts-infer:
infer
pull request (efebf99) - ts-infer: infer type transform (ec94635)
- ts-interface: interface definition merging (e2adbcc)
- ts-namespace: namespace compiles to IIFE pattern (4209146)
- ts-never: exhaustiveness checks (6947696)
- ts-readonly:
readonly
is shallow (5891bc8) - ts-runtime:
TypeScript
is superset ofJavaScript
(a717a2a) - ts-system: structural type system (819a098)
- ts-tools: type coverage tool (e723d47)
- ts-tools: TypeScript tools (a29da92)
- ts-types: covariant and contravariant for types (d076393)
- ts-types: nominal brand types (038c541)
- ts-types: syncify mapped types (9853a0a)
- ts-union:
IteratorResult
discriminated union (#294) (059ad5a) - ts-union: discriminated union (4c7562b)
- ts-union: interface union design (2bea8ac)
- ts:
as const
type assertion (d0171bf) - ts:
void
vsnever
(9e19706) - ts: excess property check (43c5836)
- ts: index types (f592806)
- ts: type meta programming (abf24de)
- ts: TypeScript terms to Set terms (bf65861)
- vim: neovim format configuration (319035c)
- web-browser:
RenderingNG
pre-paint
phase (ede3d41) - web-browser:
RenderingNG
key changes (a9ead20) - web-browser:
RenderingNG
layout engine (d126ae3) - web-browser:
RenderingNG
video rendering (e370949) - web-browser:
Viz
process for OOP-D, OOP-R and OOPIFs (73f8a69) - web-browser:
Viz
process threads (9b262c6) - web-browser: browser engine list (e09bd18)
- web-browser: Chromium rendering engine (ab4d265)
- web-browser: components of
main
thread andcompositor
thread (41b4d8e) - web-browser: CSS transform animation performance (280e037)
- web-browser: generate immutable flat list for inline content (d66d0f3)
- web-browser: multi-threads architecture performance advantages (cb2c58d)
- web-browser: multi-threads render process architecture (3d41a08)
- web-browser: outputs of RenderingNG
layout
engine (1cc992a) - web-browser: property trees for
paint
andcomposite
(e252c6d) - web-browser: RenderingNG architecture and pipeline (a399838)
- web-browser: separate
main
thread andcompositor
thread (1a54a0e) - web-browser: web platform tests (1daeabb)
- web-devops: devops free list (d6ede53)
- web-library: accessible primitives UI frameworks (a9b1e15)
- web-library: audio UI and HTML parser (7f8fd0d)
- web-library: avatar editor (c280d91)
- web-library: Babylon.js 3D web engine (0a6227a)
- web-library: CLI and performance tools (c6537f5)
- web-library: cloud virtual file system (905fedf)
- web-library: confetti gun micro-interaction effect (dc81dc1)
- web-library: date-fns library (8ff0bf6)
- web-library: emoji mart library (99dd25d)
- web-library: emoji picker (fc7abcf)
- web-library: grid layout library (2b40ee6)
- web-library: hand-drawn notation micro-interaction animation (07c3da1)
- web-library: image comparison slider (59f759d)
- web-library: low code editor (fd1e831)
- web-library: low code framework for admin dashboard apps (5ef4735)
- web-library: modern loaders and spinners (a2ff5ab)
- web-library: monorepo tools (6de62ec)
- web-library: Next UI library (4d947ce)
- web-library: Node.js clinic library (b1b2c6a)
- web-library: Node.js server integration testing (38c4712)
- web-library: notification infrastructure library (99a894f)
- web-library: npm package analytics (15c3c4d)
- web-library: oasis web 3D engine (ce4322d)
- web-library: OSS from Formidable Lab (9e9daa5)
- web-library: React boilerplate (a4ebcb6)
- web-library: React components (a762d9b)
- web-library: React components (b630bd4)
- web-library: react hooks (7480762)
- web-library: react hooks library (edd59a2)
- web-library: React runner live editor (538ae90)
- web-library: React typewriter effect component (4a9deec)
- web-library: React UI components (a230fa6)
- web-library: React Vite starter (e0e79aa)
- web-library: real-time applications framework (de6a7a4)
- web-library: serverless framework (23a5956)
- web-library: sophisticated DnD library (de46b9d)
- web-library: spreadsheet library (57ea627)
- web-library: strapi headless CMS (ec94213)
- web-library: super fast alternative to babel (94c7ab6)
- web-library: svg.rs and sms library (9ff80ca)
- web-library: timeline and scroll library (3908bc2)
- web-library: toolkit under StyleGuidist and DUmi (3e269c8)
- web-library: UI frameworks and solutions (a186741)
- web-library: vercel css in js library (f1177fb)
- web-library: WebRTC mock library (2a89e2b)
- web-network:
Cache-Control: no-cache
meaning (0386905) - web-network:
CORS
request and response (1678223) - web-network: CDN routes (1ac2ab0)
- web-network: HTTP 1.1 performance (abaade6)
- web-network: HTTP 2.0 frame and stream (54879bd)
- web-network: HTTP 2.0 performance (58ffac0)
- web-network: network protocols performance (21b965c)
- web-network: no need for multiple connection for HTTP 2.0 (2852f77)
- web-network: optimize TLS delay time (f298781)
- web-network: RESTful API design reference (7cd5b63)
- web-network: review UDP (3275a64)
- web-network: server-sent events and event source API (e59e867)
- web-network: TCP congestion control (7c8ae94)
- web-network: TCP head-of-line blocking problem (962dd27)
- web-network: TCP performance optimization (83ef4ab)
- web-network: TCP RTT cost (c380095)
- web-network: TCP setup (24ded8d)
- web-network: TLS performance (4cfbf05)
- web-network: TLS setup (0a7ff4c)
- web-network: transport layer security (0236b4e)
- web-network: UDP performance optimization (014a4de)
- web-network: WebRTC API (b9297f8)
- web-network: WebRTC API (e38677e)
- web-network: WebSocket multiplexing and compression extensions (9d9cd20)
- web-network: WebSocket multiplexing extension (f17a435)
- web-network: WebSocket performance optimization (97e59d1)
- web-network: WebSocket vs long polling (5eac348)
- web-network: wireless network (5d02291)
- web-spec: web-interoperable runtimes community group (247c613)
3.8.1 (2022-04-16)
- css-alignment:
vertical-align
for inline elements (f2f2e7e) - css-design: components design patterns (484ee18)
- css-selector:
:has()
pseudo class selector guide (ebff4ba) - design pattern: proxy use case (818aac5)
- design patterns: adapter pattern use case (7d76569)
- design patterns: add reference (af2e5fe)
- design patterns: aspect oriented programming for proxy pattern (c4a108a)
- design patterns: callback functions for command pattern (07727b6)
- design patterns: chain of responsibility pattern usage (a880990)
- design patterns: chain of responsibility pattern usage (1b7e0cb)
- design patterns: chain of responsibility use case (8ca10ac)
- design patterns: command pattern use case (97f03b9)
- design patterns: command sequences adn queue (2aca4bb)
- design patterns: composite pattern implementation (dd43f6c)
- design patterns: composite pattern use case (1f312e4)
- design patterns: decorator pattern use case (e5d51d0)
- design patterns: decorator pattern use case (32e3a2e)
- design patterns: difference between decorator and proxy pattern (f78affa)
- design patterns: domain driven design details (92a52d8)
- design patterns: ES6 iterator pattern (fca101c)
- design patterns: flyweight pattern for performance (69f8aa9)
- design patterns: flyweight usage (1ef8978)
- design patterns: flyweight use case (188f340)
- design patterns: form validator strategy pattern (e5b0e5a)
- design patterns: functional JS for strategy pattern (b39fdbd)
- design patterns: higher order function for strategy pattern (b6a24f0)
- design patterns: IoC container (411b90b)
- design patterns: least knowledge principle (fd10517)
- design patterns: mediator pattern use case (4f52edf)
- design patterns: observer use case (77ea522)
- design patterns: polyfill implementation with iterator pattern (6a5d29a)
- design patterns: pros of strategy patterns. (6985015)
- design patterns: proxy pattern usage (48bc832)
- design patterns: proxy pattern use case (ca36783)
- design patterns: proxy type (6a1e8a9)
- design patterns: review command pattern (254ee47)
- design patterns: review decorator pattern (1a7fc80)
- design patterns: singleton factory method (865703b)
- design patterns: singleton pattern use case (55b7efd)
- design patterns: SOLID principle patterns (41e0aab)
- design patterns: state pattern use case (4b37070)
- design patterns: state pattern use case (83bf635)
- design patterns: strategy pattern (50ed961)
- design patterns: template method pattern pros (c49245d)
- design patterns: template method patterns (f6f5c4b)
- design patterns: template method use case (9a5f9c4)
- devops-library: GitHub actions toolkit (6053a7e)
- devops-library: Grafana visualization monitoring platform (e107169)
- devops-library: TurboRepo monorepo tool (608ed0d)
- html-a11y: webaim top a11y errors (775a8ce)
- js-API: refactor chapters (7ce8277)
- js-array: array
copyWithin
method (b809f42) - js-array: array
splice
method (8694cd0) - js-array: array query methods (011c7db)
- js-array: ES6 array methods (c3f5959)
- js-array: modern array methods (c520477)
- js-asynchronous: await features (4ebb634)
- js-asynchronous: sequential and parallel execution (4d08c7b)
- js-atomics: atomics API (901a2c8)
- js-BOM: browser object model API (9def9c5)
- js-browser: browser render engine and JS engine (3da952d)
- js-canvas: canvas reference resources (e0ad6e3)
- js-canvas: canvas text API (d287451)
- js-class:
class
is actualfunction
(02fa7d7) - js-class:
new.target
for abstract class detection (1b9f319) - js-class:
super
keyword (34166ae) - js-class: class inheritance (9503912)
- js-class: class inheritance (38de3f4)
- js-class: class lackness (91167bd)
- js-class: class vs prototype (19a33eb)
- js-closure: review closure (6647b15)
- js-comparison: review comparison (d9f4070)
- js-document:
document
API (cd26fd4) - js-document: legacy document write API (b85518d)
- js-DOM:
document
object (20a3c61) - js-DOM:
event.target
bound to trigger element (db4f5a2) - js-DOM:
NodeIterator
andTreeWalker
API (7266de7) - js-DOM:
textContent
vsinnerText
vsinnerHTML
(9f4cb22) - js-DOM: basic DOM API (83e25ae)
- js-DOM: basic form events (64de3da)
- js-DOM: client size details (39eec29)
- js-DOM: clipboard events (4a6ba25)
- js-DOM: dangerous
innerHTML
(aedea5a) - js-DOM: different DOM node types (52a5f02)
- js-DOM: document.doctype (2d3e2b3)
- js-DOM: DOM events (1870cf4)
- js-DOM: DOM level (5677a6e)
- js-DOM: DOM mutation observer (3ab5ffa)
- js-DOM: DOM namespace API (f035603)
- js-DOM: DOM programming use case (a3c536a)
- js-DOM: DOM range API (d89417c)
- js-DOM: DOM rect API (0383826)
- js-DOM: DOM size (ca18328)
- js-DOM: DOM style sheets API (e2b5e63)
- js-DOM: form events handler (1dd89c2)
- js-DOM: HTML DOM (ca75cb9)
- js-DOM: HTML DOM
document
object (c0de68c) - js-DOM: HTML5 DOM API (34901f0)
- js-DOM: modern DOM events constructor API (4ec2f77)
- js-DOM: MutationObserver on children nodes (76568d5)
- js-DOM: MutationObserver on subtree nodes (a807736)
- js-DOM: MutationObserver performance (88964c5)
- js-DOM: remove children (dbda654)
- js-DOM: Selectors API and Element Traversal API (b044956)
- js-error: custom error (f4bc6ee)
- js-error: error and exception (bffefc2)
- js-es6: review ES6 primitive types (b6ada43)
- js-eventloop: time slicing scheduler for long task (8587a81)
- js-events: DOM events API (0710b7c)
- js-fetch: pipe readable stream for
fetch
response (c370e63) - js-function:
Math
andURI
function utils (6406196) - js-function:
this
binding under function invocation (82d5899) - js-function:
this
binding under function invocation (11c5733) - js-functional: compose/flow/pipe functions (b160b58)
- js-functional: pipe function (5a056cd)
- js-function: call by value (b764d3c)
- js-function: closure function (644d404)
- js-function: compose function (ad48392)
- js-function: context stack and scope chain (e97bd17)
- js-function: function arguments (d9e85bc)
- js-function: function declaration and expression (b96bfd1)
- js-function: function default parameters (98aa5c7)
- js-function: function name (3c3e207)
- js-function: function property (83a33c0)
- js-function: immediately invoked function expression (2025da1)
- js-function: lazy definition function (a4e20a8)
- js-function: polymorphism function (01b5e6a)
- js-function: review arrow function bindings (fbdce39)
- js-function: tail call optimization (f2c33e4)
- js-function: tail call optimization only work in strict mode (02313e7)
- js-generator: asynchronous generator (383fe23)
- js-generator: asynchronous UI events stream (3592241)
- js-generator: delegating generator via
yield *
(24e295f) - js-generator: generator and iterator (5e22aa6)
- js-generator: generator usage (ba9d6ec)
- js-generator: iterator
return
andthrow
API for generator (c5bb832) - js-generator: recursive generator (9c45e09)
- js-generator: relationship between generator and async/await (c9b9c8d)
- js-generator: use generator to implement default iterator (06b29ac)
- js-generator: use generator to implement recursive algorithm (1480dec)
- js-generator: walk directory with async generator (cb098f1)
- js-geolocation:
navigator.geolocation
API (9a3cbd6) - js-geolocation: web geolocation API (aac413b)
- js-iterator:
[Symbol.iterator]()
interface (9583b24) - js-iterator: break interface for interator (9395afa)
- js-iterator: built-in implemented iterators (764b476)
- js-iterator: iterable iterator (e8b56f7)
- js-iterator: iterator and iterable (be2dff0)
- js-iterator: iterator syntax sugar (7e3758e)
- js-JSON:
JSON.stringify
API (94c22ac) - js-let: review block scoping rules for
let
(45227b1) - js-library: RegExp utils and string parsers (c134169)
- js-location: location navigation API (d99fbf1)
- js-location: location URL search params (8efaebe)
- js-map/set: review ES6 map and set (57b48f7)
- js-microfrontends: applications communication in micro-frontends (7cd6c4f)
- js-modules: dependency injection (7e3c42c)
- js-modules: JavaScript modules patterns (0be518a)
- js-navigator:
registerProtocolHandler
API (284304c) - js-navigator:
userAgent
data parser (2b3b64f) - js-navigator: navigator API list (31f7249)
- js-navigator: navigator APIs (e2aa955)
- js-navigator: web
navigator.onLine
API (e879332) - js-navigator: web
StorageManager
estimate API (cad71c3) - js-network: web socket API (51f5fc7)
- js-oauth: OAuth guide (8a040d5)
- js-object:
Object.hasOwn
andObject.keys
usage (3567966) - js-object: object property iterator (4d1b90b)
- js-object: object spread syntax feature (13abb2c)
- js-object: primitive wrapper objects (dfff2a7)
- js-object: property descriptor getting function (49ba896)
- js-object: review
new
constructor (d36405a) - js-object: review object notes (27930a6)
- js-oop: polymorphism and OOP programming (5373601)
- js-performance: animation throttle (9b4f539)
- js-performance: bit manipulation (bba2b2e)
- js-performance: function performance (7a79ae8)
- js-performance: images performance tips (c3372c2)
- js-performance: modern images format (fde1d39)
- js-performance: performance best practice (d62968e)
- js-performance: performance guide (3ee76b8)
- js-performance: review performance tips (d4208d7)
- js-performance: scheduler in React and Vue (2c04c9d)
- js-performance: unnecessary closure function (41e33e3)
- js-performance: web vitals optimization guide (bc31a60)
- js-primitive: auto box and unbox primitive values (ab7ddd4)
- js-promise:
Promise.resolve
thenable object (64922b4) - js-promise: asynchronous promise error (f161110)
- js-promise: promise catch and finally (9c1a4ac)
- js-promise: promise merge functions (bda9aee)
- js-promise: promise resolve and reject chain (81bf917)
- js-prototype:
getPrototypeOf
triggers (b3ec07d) - js-prototype:
instanceof
prototype chain (b006adf) - js-prototype: implement prototype inheritance with
Object.create
(af5833b) - js-prototype: legacy object inheritance based on prototype chain (a4d284d)
- js-prototype: object extend with prototype chain (0f22d1a)
- js-prototype: review prototype chain (6d0dac8)
- js-prototype: review prototype chain (7e911fc)
- js-proxy:
Proxy.prototype
is undefined (98009dd) - js-proxy: proxy basic feature (3b09705)
- js-proxy: proxy usage (d64fc6d)
- js-proxy: proxy usage (d1c4d90)
- js-proxy: revocable proxy (029c017)
- js-pwa: PWA service worker offline cookbook (b8d8164)
- js-reflect: reflect overrides behavior (ea670d4)
- js-RegExp:
string.replace(RegExp, replacer)
(f82ac16) - js-regexp: avoid usage of
RegExp
static property (d73a1b9) - js-regexp: backreference for preventing ReDos (ed1ce2e)
- js-RegExp: ES2018 regular expression flags (23ce8e9)
- js-RegExp: named capture group back reference (6b4c33d)
- js-RegExp: RegExp common pattern (c5f7de6)
- js-regexp: regular expression flags (df6f897)
- js-RegExp: unicode property (b0f7061)
- js-scope: context stack and scope chain (e26b99b)
- js-screen:
window.screen
API (19e27ac) - js-socket: web Socket API (8398299)
- js-storage: web storage API (6bf519a)
- js-string:
String
methods (794f7fd) - js-symbol:
[Symbol.species]()
API (5338d07) - js-symbol: built-in symbol methods (aaa066d)
- js-symbol: built-in symbol methods (96475df)
- js-symbol: symbol API (1750ee9)
- js-symbol: symbol static properties and static methods (bbe936d)
- js-testing: cypress official guide (585c42b)
- js-testing: review testing notes (50ae774)
- js-testing: simple test runner implementation (2574d0b)
- js-timer:
setInterval
pitfalls (bb13899) - js-timer: timer function
this
binding (c88c341) - js-url: url function (7e02844)
- js-URL: URL functions (cd2692a)
- js-variables: variable context (b7b1365)
- js-variable: variable hoisting (069d4bc)
- js-window: open new window (0b0d282)
- js-window: popup window restricts (55a9a3c)
- js-window: window built-in popups (01c04b3)
- js-worker: service worker and web worker (2fde0d7)
- js-worker: service worker simple cache model (56cc3d8)
- js-worker: web worker API (9eab8ba)
- js:
in
operator (21c73ae) - js:
XMLHTTPRequest
(AJAX) andfetch
API (8796bad) - js: curry function (943c26d)
- js: execution context and scope chain (9a513f8)
- js: global object (33a6520)
- js: lazy singleton pattern (d139bb8)
- js: micro-frontends (3bdb7be)
- js: refactor chapters (1fbd348)
- js: refactor chapters (11a9286)
- js: refactor chapters (#281) (4eb0888)
- js: refactor functional JavaScript chapter (7dd514c)
- js: remove legacy code (9672a25)
- js: strict mode (f262fd2)
- js: strict mode details (9f48f4b)
- js: TextEncoder and TextDecoder API (730be19)
- js: web worker usage (d51c517)
- library: file utils and testing libraries (d081768)
- node-fs: promisify synchronous file API (08d3ccb)
- os-I/O: zero copy I/O methods (29d7580)
- react-hooks: custom hooks (c403795)
- react-hooks: custom mouse hook (5fbd02a)
- react-hooks: remove internal hook API (a567f18)
- react: react core bottlenecks and solutions (235fc34)
- rust: Rust memory model (79dac71)
- security-crypto: Web Crypto API (c88352f)
- security: supply chain attack real world case (6db5add)
- testing: JavaScript testing best practice (80ab19a)
- ts-performance: TypeScript performance tips (f84635a)
- vue-reactive: collect array dpes (0ab4f72)
- vue-reactive: Vue array methods reactive patching (27f43a5)
- vue-reactive: Vue global reactive
set
/delete
API (850010c) - vue-setup: Vue setup internals (2643359)
- web-library: a11y jest matcher (bc413d1)
- web-library: app framework (48a2ab4)
- web-library: ByteDance markdown component (1df6759)
- web-library: comments system (abc96fb)
- web-library: CSS gradient generator (cf805dd)
- web-library: facebook rich text editor (fb9cb77)
- web-library: formik library (c8b8fb6)
- web-library: fuzzy search library (de06079)
- web-library: git interface utils (b367387)
- web-library: images gallery components (84ef2d5)
- web-library: modern API framework (35bed4d)
- web-library: modern CSS resets library (5871fb3)
- web-library: multi-touch zooming and dragging library (e4f1b63)
- web-library: Next.js SEO library (3cc9b28)
- web-library: React admin/B2B frameworks (1b8fd37)
- web-library: React hamburgers (dff685b)
- web-library: React Youtube player (55534e2)
- web-library: RSS parser utils (fe194cd)
- web-library: scroll snap utils (46b3497)
- web-library: shadow generator (7d841cc)
- web-library: TypeScript tools (a7789be)
- web-library: vite based testing framework (6ec0ab2)
- web-library: web IDE (5e4c256)
- web-performance: performance tips (a621545)
- yarn: yarn
dedupe
command (fb2e2d3)
3.8.0 (2022-04-05)
- vue: start Vue source code learning (3764737)
- design patterns: merge contents (f5c8e54)
- devops-library: changesets (8d60421)
- js-eventloop: simple model for browser eventloop (d8c631d)
- js-proxy: ES6 proxy (206f26c)
- js-pwa: service worker caching strategy (61a056f)
- rust: add books list (dc22f2e)
- vue-compiler: basic compilation workflow (bbb5f64)
- vue-extend: Vue
extend
global API (143464c) - vue-lifecycle: lifecycle hooks execution details (d130f62)
- vue-lifecycle: Vue lifecycle diagram (dfbe34b)
- vue-lifecycle: Vue mounting workflow (007d416)
- vue-mount: remove dev statistics (85ce21f)
- vue-options: Vue options API internals (8d52fe0)
- vue-prototype: vue prototype setup path (e90187d)
- vue-reactive: collect deps to
Observer
(f992035) - vue-reactive: computed props and computed watcher (4d20ad2)
- vue-reactive: Vue
Observer
class (3671de9) - vue-reactive: Vue watcher options API (2c762f7)
- vue-render: Vue render functions initialization (c726610)
- vue-router: Vue router reactivity (68dc514)
- vue-template: mark static template node (4edca49)
- vue-transition: transition component (700ff09)
- vue-transition: transition group component (58a6eb6)
- vue-transition: vue transition Internals (153dd40)
- vue-vdom: component vnode creation (3cea299)
- vue-vdom: create children recursively via
init
hook (70594a2) - vue-vdom: main logic of
createElement
function (80b9922) - vue-vdom: Vue
VNode
constructor (fd62729) - vue-vuex: legacy Vuex rely on computed watchers (7d0bfda)
- vue:
<keep-alive>
built-in component (73626fc) - vue:
render
andcreateElement
function (ce04095) - vue:
v-model
for child component (458ce81) - vue: add static global API for
Vue
(e7b6d75) - vue: full Vue mount method (36e760e)
- vue: slots vnodes rendering internals (9648c2d)
- vue: transfer
vm.XXX
tovm._props.XXX
/vm._data.XXX
(58a6421) - vue: Vue 2 legacy reactive system (7a76571)
- vue: Vue 2 reactive system (995500c)
- vue: Vue async components (dca55a2)
- vue: Vue global
mixin
anduse
API (89e6318) - vue: Vue global
nextTick
API (8ce9e68) - vue: Vue patch function (725eb36)
- web-library: ant design pro (f89fb71)
- web-library: change default libraries (ffc0b87)
- web-library: kubernetes based serverless platform (719e131)
- web-library: React component documentation tool (4c3ae7a)
- web-library: vite web extension starter template (3900cbc)
3.7.1 (2022-04-03)
- css-clip: text background clip (e4f1c1c)
- css-filter:
backdrop-filter
for blur background effect (c0ef87a) - css-media query: pointer and hover media query (99521fe)
- css:
backdrop-filter
for frosted glass effect (03ab1e2) - design patterns: review SOLID principles (ab9eb20)
- js-es6: class private member polyfill (0257266)
- js-modules: review JavaScript legacy modules pattern (78de1b7)
- js-modules: UMD module pattern (1476a7f)
- js-sort: locale string sorting. (ceacad9)
- js: event loop (#275) (1c597f4)
- js: layout and paint (#276) (a649b64)
- js: React codemod tool (3b41066)
- node-fs: modern promise-based fs API (a6c7e04)
- react-core: interrupted rendering (be300e8)
- react-core: reconciler rendering recovery by scheduler (2ff1744)
- react-fiber:
fiber.dependencies
for Context API (95068cb) - react-fiber: Fiber type (6042d8d)
- react-hooks:
Hooks
memoizedState forFunctionFiber
memoizedState. (1a0f3e1) - react-hooks:
react-hook-form
core logic (ed3aebc) - react-performance: avoid children components re-rendering (2007164)
- react-performance: children components re-rendering problem (f485fe0)
- react-reconciler:
mountChildFibers
(#272) (3918595) - react-reconciler: class and function component memoizedState calculation (f3aa59b)
- react-reconciler: memoized state to ReactElement (#274) (c95b15b)
- react-reconciler: recursive version of
performUnitOfWork
(f4c3108) - react-reconciler: reuse fiber when bailout (#273) (5b7a7f5)
- react-reonciler:
bailoutOnAlreadyFinishedWork
entrance judgement (551518d) - react-testing: React testing tutorials (2430933)
- react:
React.StrictMode
highlight potential problems (7278d01) - react: review components lifecycles (9b8bfbf)
- ts-JSON: resolve JSON module for TypeScript (729a662)
- web-library: Airbnb visualization components (bd7c77d)
- web-library: Apache ECharts library (bba3884)
- web-library: audio.ts (777031f)
- web-library: CSS borders/corners/dividers/shapes generators (405554e)
- web-library: draggable grid layout (a724934)
- web-library: file utils (506013b)
- web-library: HappyDOM library (74dd0a4)
- web-library: instance search library (a69278a)
- web-library: list virtualized library (abfa20c)
- web-library: macOS and Windows style components (529ce11)
- web-library: micro-interaction animation (ed474bd)
- web-library: photo view library (1119f08)
- web-library: rating component (37de11f)
- web-library: React image cropping tool (fbba8b9)
- web-library: React roulette component (fea8bfb)
- web-library: React scroll parallax library (bf29fba)
- web-library: React stepper guide component (07414c1)
- web-library: React table hooks (df9ef8d)
- web-library: ReduxObservable library (3e65d59)
- web-library: simple vanilla router (cc048d3)
- web-library: styled semantic HTML tag library (5a53238)
- web-library: UI frameworks (c6564fa)
3.7.0 (2022-03-30)
- react: React source code learning (a12e5cd)
- cs-network: update title (3838e5f)
- css: box model for
img
element (35241b5) - css: visibility styles (34c2fa1)
- cs: update title (831c980)
- design patterns: aspect oriented programming (777b2b7)
- design patterns: review IoC and DI pattern (7e94799)
- design patterns: software design principle (5f7615c)
- html-dialog:
<dialog>
use case (cc1649b) - html:
cite
anddatetime
for<del>
/<ins>
(b70fbb1) - intro: add complete notes list (9fc0e35)
- js-event loop: event loop and task queue (2073c9d)
- js-event loop: review event loop (a57218b)
- js-event loop: review event loop (39f36a3)
- js-lodash: useful lodash functions (cf25c01)
- js-object:
Object.is
API (c9cf5fa) - js-performance: LCP optimization guide (8bba62a)
- js-prototype: review prototype chain (d3cf01e)
- js-prototype: review prototype chain (02d8ae7)
- js-proxy: array watching in Vue (210dd83)
- js-Reflect: Reflect API (0e44f01)
- js-regexp: review regular expression (1197c1a)
- js-scope: 3 type of scope (38b8d81)
- js-security: ProxySandbox (cdaccab)
- node: tao of Node.js (d584e97)
- react-batching:
flushSync
API (f68282f) - react-batching: automatic batching in React v18 (3d26954)
- react-core:
ReactDOM.createRoot.render
(8867dd5) - react-core: 3 basic React internal modules (717528b)
- react-core: bootstrap app from renderer (106b78c)
- react-core: create
Update
withhooks.dispatchAction
(13eb4c4) - react-core: create root container (5c3243c)
- react-core: create updates from user code (4945608)
- react-core: Lanes model definition (0add64f)
- react-core: lanes model use case (fd8048d)
- react-core: performConcurrentWorkOnRoot (504771c)
- react-core: React component definition (22a950d)
- react-core: React component type definition (bfa8703)
- react-core: React core packages relationship (6ffe1d9)
- react-core: React fiber mode (c7b8731)
- react-core: React internal main logic (fbe9788)
- react-core: React internal synchronous logic (151e7c1)
- react-core: React internal types definition (9996085)
- react-core: reconciler commit phases (0dacd0b)
- react-core: reconciler work loop (e618eb4)
- react-core: refactor React internal chapters (9e304a5)
- react-core: renmae
Stage
toPhase
(fac30cd) - react-core: Scheduler logic (07d7d99)
- react-core: work loop in
Scheduler
andReconciler
(84b4612) - react-events: React synthetic events (6d9713d)
- react-fiber:
Update
creation (a7fb2e9) - react-fiber: React Fiber
stateNode
(7ca00cd) - react-fiber: React Fiber trees (7c02557)
- react-fiber: relations between FiberRoot and HostRootFiber (e0a1e4f)
- react-hooks:
dispatchAction
performance tip (941553f) - react-hooks:
Reconciler.Commit
foruseEffect
anduseLayoutEffect
(48bab81) - react-hooks:
useEffect
execution timing (8a6d9ce) - react-hooks:
useMemo
use case (cf14b29) - react-hooks:
useReducer
hooks dispatcher (96ab0fe) - react-hooks:
useSyncExternalStore
use case (ce0dd32) - react-hooks:
useTransition
use case (4cc6a02) - react-hooks: Fiber flags for
useEffect
anduseLayoutEffect
(87c04fd) - react-hooks: hooks internal types (7bd0f14)
- react-hooks: hooks internal workflow (fb02a23)
- react-hooks: mountWorkInProgressHook and updateWorkInProgressHook (38e64b3)
- react-hooks: React hooks dispatcher (b5c3553)
- react-hooks: Reconciler commit work for Effect Hook (a60209e)
- react-hooks: store state in the URL (2884621)
- react-hooks: useSyncExternalStore concurrent hook (b9e7813)
- react-lanes: global render lane (b5e8042)
- react-lanes: React Fiber Lanes (2fae0da)
- react-lanes: reuse Fiber nodes with lanes (9b851ce)
- react-perf:
useDeferredValue
/useTransition
use case (a06c00a) - react-reconciler:
beginWork
update workflow (956a4ea) - react-reconciler:
commitBeforeMutationEffects
function (1838c3b) - react-reconciler:
commitLayoutEffects
function (837b38f) - react-reconciler:
commitMutationEffects
function (ebed854) - react-reconciler:
commitRoot
function (3586154) - react-reconciler:
completeWork
andupdateXXX
forUpdate
(d2e22b6) - react-reconciler:
performUnitOfWork
for DFS path (1537342) - react-reconciler:
prepareFreshStack
function (2674f1b) - react-reconciler:
reconcileChildren
function (b8c051d) - react-reconciler:
renderWithHooks
for children hooks fiber (6992dd7) - react-reconciler:
scheduleUpdateOnFiber
(aac81c1) - react-reconciler: construct Fiber tree in render phase (52ffa36)
- react-reconciler: create children Fiber from
ReactElement
(9f9d09a) - react-reconciler: diff algorithm (bc3bebb)
- react-reconciler: mark and collect effects (947073c)
- react-reconciler: mark Fiber lanes for update (2b9c5c3)
- react-reconciler: React reconciler main logic (1c91f6b)
- react-reconciler: React update queue for reconciler (bcd5635)
- react-reconciler: reconcile children and collect effects (742ac01)
- react-reconciler: reconcile children functions (04fedb8)
- react-reconciler: reconcile on children elements (efe23bc)
- react-reconciler: reconciler performance tips (e34919c)
- react-reconciler: reconciler render key path (b6f52a6)
- react-reconciler: refactor reconciler chapters (20a0cf1)
- react-reconciler: update judgement for Fiber (c0629d0)
- react-refs: deprecated string refs (b0952a5)
- react-renderer:
HostConfig
protocol details (93dd08b) - react-renderer: React renderer (c10d293)
- react-state:
flushSyncCallbackQueue
for syncsetState
(ae95808) - react-state: review
setState
work mode (8106eec) - react-suspense:
Suspense
for SSR (2c02e5b) - react-suspense: lazy loading and code splitting with
Suspense
(d989233) - react-suspense: selective hydration and streaming HTML (389a922)
- react-suspense: suspense design pattern (4ac9179)
- react-v18:
useSyncExternalStore
react conf 2021 demo (47c1e66) - react: concurrent features (a311e74)
- react: React Elemnt type definition (6a9806d)
- react: React SubComponents pattern (27a7c25)
- rect-reconciler: DFS path for reconciler (890bcfc)
- ts-types: built-in
ThisParameterType
(f33b9d2) - vim: NvChad shortcuts (03ece70)
- web-exception: exception handling methods (912de82)
- web-library: 3rd scripts web worker (a4e7f61)
- web-library: a11y React UI kit (f10e925)
- web-library: API development tools (02228dd)
- web-library: connect HTTP server (862a55a)
- web-library: CRDT for collaborative apps (c1017ef)
- web-library: data platform (406fb83)
- web-library: data processing library (846c06c)
- web-library: editors (3629e94)
- web-library: editors library (e6d81ff)
- web-library: low code engine (a022b52)
- web-library: low code Node.js app tool (ac66cfc)
- web-library: MantineUI (8095f2d)
- web-library: MDX (31b6887)
- web-library: React modal manager (1ffa8f2)
- web-library: React node-based charts library (13ba121)
- web-library: React state usage tracking tool (93e4bb5)
- web-library: React tree component (5d472b6)
- web-library: sandpack toolkit (66ce3f7)
- web-library: supertokens (cf6a709)
- web-library: web media tools (a451fe1)
- web-library: XState library (d459880)
- web-perf: performance monitoring vitals (7f70a08)
- web-svg: render svg tags with
createElementNS
function (5dbf722) - web: styles isolation (ba7f9ed)
3.6.1 (2022-03-20)
- css-float: review legacy float grid pattern (6d2248c)
- css-svg: svg style rules (37d2a8a)
- css-switch: grid switch button (1ff5d7e)
- css: css variables for theme components (d248c53)
- design patterns: review state pattern (ba99b85)
- js-genrator: impl async/await with generator and promise (f9a7fbf)
- js-json:
JSON.stringify
internal (e4f83f4) - js: operator precedence (a930d6d)
- perf-library: performance tools (1895af8)
- react-hooks:
useMemo
anduseCallback
internal code (f2df38b) - react-hooks: useRef, useState and useEffect internal (404c53d)
- react-state: simple Atom global store (7fdb0fd)
- rust-async: basic async rust (7c049ec)
- rust-cargo: cargo cache directories (7add477)
- rust-cargo: cargo configuration (9e4f3bb)
- rust-cargo: cargo configuration (c6878eb)
- rust-cargo: rust target configuration (b1df95a)
- rust-concurrency: thread, barrier, mutex, channel (ccc9478)
- rust-drop:
Drop
trait (11d58a9) - rust-error: custom error trait (9fa18fe)
- rust-futures: futures and wakers (cf0d9b7)
- rust-generics: generics tips (367dca2)
- rust-library: benchmarking library (b83c3fb)
- rust-library: CLI ProgressBar (2103b27)
- rust-library: concurrent programming tools (c18179b)
- rust-library: popular rust tools (dff66c4)
- rust-library: regex regular expression engine (97716b0)
- rust-library: tokio official web framework (ebf3c75)
- rust-macro: macros (03cbe6b)
- rust-pointer:
Box
smart pointer (520bcbe) - rust-tests: unit tests and assertions library (5b7d3a4)
- rust: (atomic) reference counting type (0e8fca9)
- rust:
Async
/Await
programming model (9b4c33e) - rust:
Cell
andRefCell
type (e1cf889) - rust:
Error
trait (1c7ee33) - rust:
into_
prefix (cce1029) - rust:
PhantomData
marker type (eeb0ffe) - rust:
std::convert::From
trait (7d0c4d8) - rust:
std::convert::TryFrom
trait (3d6e4de) - rust: associated types in generic traits (1867b4c)
- rust: asynchronous programming (d3e0df0)
- rust: attributes (4584463)
- rust: circle reference (e827ec6)
- rust: CLI parser (e600c82)
- rust: concurrent thread pool (a48bc2e)
- rust: conventional changelog generator (6f017f3)
- rust: format print (9092545)
- rust: future trait (d1f5603)
- rust: HashSet collection (8580fd2)
- rust: interator function signature (45e4cac)
- rust: IO and Process standard library (9d3bcd9)
- rust: Iterator methods (9b64745)
- rust: more iterator adpaters (7064e52)
- rust: mutex, semaphore and atomic primitives (7ac4180)
- rust: PhantomData usage (dff8ec0)
- rust: prelude traits (5e3b936)
- rust: refactor chapters (ea60c3f)
- rust: RefCell usage (c5772fd)
- rust: Result and Option compositor (adb534c)
- rust: sccache compile cache tool (0482697)
- rust: send multiple type message via channel (afcf3ea)
- rust: specific type adapter (d1bdf5b)
- rust: stack types (5d2a3b2)
- rust: super trait (240ef2d)
- rust: tokio runtime (185552a)
- rust: trait object lifetime (585e604)
- rust: types conversion (ad59055)
- rust: unsafe rust code block (6668951)
- security-sql: sql injection protection (0dd1b99)
- security: open source supply chain attack (8e85f82)
- security: supply chain estimate tool (99a5260)
- vim-neovim: update NvChad configuration (ceef258)
- web-editor: code editor philosophy (f60d25e)
- web-http: reasonable HTTP methods and status codes (d94f3d5)
- web-library: animated grid (e95f5ff)
- web-library: audio visualizer (b48a628)
- web-library: Chrome extension boilerplate (acb3c00)
- web-library: dependency injection tool (e91b353)
- web-library: emoji picker button (9fdad09)
- web-library: facebook draft.js (ea1f2ed)
- web-library: import-local (275f3e1)
- web-library: IoC container (18e05c5)
- web-library: ladle tool (1b331b5)
- web-library: local cert tool (2da274d)
- web-library: NPM deps updater (991a67f)
- web-library: NPM package patching tool (7909823)
- web-library: pinia vue store (4d9810a)
- web-library: playwright UI testing tool (221fb41)
- web-library: React interactive video library (4edc141)
- web-library: regular expression visualization (2afa83d)
- web-library: telemetry framework (81e5b1c)
- web-library: User-Agent data parser (5a1c9c3)
- web: micro frontends (63d6486)
3.6.0 (2022-03-14)
- deps: update dependency @easyops-cn/docusaurus-search-local to ^0.22.0 (#250) (4f03579)
- deps: update dependency @easyops-cn/docusaurus-search-local to ^0.23.0 (#260) (c5d5039)
- deps: update docusaurus monorepo to v2.0.0-beta.17 (#248) (0c81ce8)
- css-query: container query (16d5dcc)
- design patterns: deps and abstracts in design patterns (7768a6c)
- design patterns: facts of software design (dc42f74)
- design patterns: proxy design pattern in Vue (1dded06)
- design patterns: review command pattern (1d2a5b7)
- devops-git: GitHub action for Vercel deployment (917516c)
- devops-library: LaTeX building action (2d47467)
- devops-library: terraform IaC tool (9aa1ae7)
- devops-library: text linter and package release tool (10f6dcf)
- linux-apt: apt ppa key management (ffc0a85)
- linux-links: review hard and soft links (4d6785a)
- node-npx: clear npx cache (1b97214)
- react-v18: new features in react v18 (a016ef3)
- rust-async: concurrency programming model (5d58e47)
- rust-ci: basic Rust GitHub action script (5b8bc59)
- rust-DST: dynamically sized type (6572304)
- rust-flow: flow control statements (#259) (7a1de86)
- rust-library: asynchronous version standard library (bd58d01)
- rust-library: rust basic libraries (037df26)
- rust-library: rust web server (9baed4a)
- rust-library: web frameworks (7e1e504)
- rust-ownership:
Copy
trait (4d02424) - rust-ownership: borrowing ownership (06d6611)
- rust-pointer: smart pointer with
Deref
trait (c3f520d) - rust-string: string iteration (6776000)
- rust-string: string type (
&str
andString
) (84e098b) - rust-toolchain: cargo code coverage tool (58a0516)
- rust-toolchain: cargo-release configuration (0a4f043)
- rust-toolchain: cargo-watch tool (fd26118)
- rust-toolchain: more cargo toolchain (93a5379)
- rust-toolchain: rust CI scripts (c8cbf88)
- rust-toolchain: setup mdbook with GitHub action (ed0fd4b)
- rust-types: struct, enum and arrary type (7b71202)
- rust-web: rust bindings for native Node.js modules (cd2b95a)
- rust-web: rust bindings to Node use case (0723f00)
- rust:
newtype
(c0a66f4) - rust: closure (4c07cab)
- rust: collections (fe82934)
- rust: comments (cebccbe)
- rust: error handling (48d764a)
- rust: formatted print (b0e44b6)
- rust: generics (09e5d95)
- rust: iterator trait (c989d76)
- rust: lifetime (283ab95)
- rust: lifetime constraint (106e412)
- rust: method (892d81d)
- rust: pattern matching (e521e1a)
- rust: slice reference type (f62a0d6)
- rust: traits (2cf31b3)
- rust: type alias (64e23d0)
- vue-vdom: definition of VNode (7544a05)
- vue-vdom: vnode and children types (#245) (8f84cf8)
- web-browser: chrome new rendering engine (5d73a0f)
- web-CSS: alignment via flexbox (a713a6d)
- web-CSS: CSS triggers for animation performance (a9bab2d)
- web-CSS: pseudo elements with grid layout (5e55cf3)
- web-CSS: review flexbox shorthands (e051019)
- web-CSS: review pseudo elements with flexbox layout (ee91a95)
- web-HTML: HTML details element (959cd42)
- web-JavaScript: defensive design and programming (e56af24)
- web-JavaScript: handle exception with proxy (aaa8156)
- web-library: Alibaba i18n solution (d22433b)
- web-library: CRA configuration override tool (1ecdbd2)
- web-library: full stack web frameworks (ae6db19)
- web-library: NPM package security (ec55f88)
- web-library: React components (9833b66)
- web-library: some React libraries (1ce8bfc)
- web-library: SonarSouce static code analyzer (ffa22fd)
- web-library: video creation library (9ec9e81)
- web-library: web boilerplate and generators (79d2e6b)
- web-library: web worker offload library (3873d05)
- web-library: workbox PWA toolbox kit (27b7443)
- web-Node: dependencies management acrocss package managers (80f098c)
- web-Node: setup binary proxy for npm/yarn install scripts (#244) (df9d8dd)
- web-TypeScript: indexed access types (c31ded9)
- web-TypeScript: never type as switch default guard (515bb5a)
3.5.7 (2022-02-28)
- deps: update docusaurus monorepo to v2.0.0-beta.15 (#219) (415137f)
- deps: update docusaurus monorepo to v2.0.0-beta.16 (#233) (a44c844)
- cs-math: Riichi tips (#242) (9ad1cc7)
- web-library: fake.js (#240) (8028a9a)
- web-library: ui kits (80d5d38)
3.5.6 (2022-01-05)
- git-GitHub: dependabot configuration (a58a114)
- git: allow edits from maintainers when PRs (34e567d)
- git: git reflog (0262d15)
- web-CSS: custom bootstrap with dart-sass (ac58f26)
- web-CSS: pseudo elements for custom form components (8cd87c9)
- web-JavaScript: canvas real world case (b77b9a0)
- web-JavaScript: media session API (c9d7e5d)
- web-library: Bull distributed jobs library (335330c)
- web-library: cursor library (6ff3954)
- web-library: data tables and grids library (3b34a6f)
- web-library: date and locale library (97f7ddf)
- web-library: Graph theory network visualization library (9629195)
- web-library: logging library (a5f447e)
- web-library: markdown editor (3470aaa)
- web-library: material UI data table (444c2cd)
- web-library: Modern from ByteDance (6e2271b)
- web-library: multi window layout manager (fbb3ea6)
- web-NPM: remove
node-sass
proxy, ship todart-sass
(dart2js) (824851c)
- deps: update dependency @easyops-cn/docusaurus-search-local to ^0.20.0 (#193) (9a9d885)
- deps: update dependency @easyops-cn/docusaurus-search-local to ^0.21.0 (#202) (c5618e3)
- deps: update dependency @easyops-cn/docusaurus-search-local to ^0.21.1 (#205) (3008da8)
- deps: update dependency @easyops-cn/docusaurus-search-local to ^0.21.4 (#208) (36708cd)
- deps: update docusaurus monorepo to v2.0.0-beta.13 (#206) (a367fb9)
- deps: update docusaurus monorepo to v2.0.0-beta.14 (#211) (e6df034)
- deps: update docusaurus monorepo to v2.0.0-beta.9 (#190) (cff93da)
3.5.5 (2021-10-24)
- deps: bundle bod deps into single PR (f8aeb3c)
- devops-library: Google release bot (01d9646)
- web-CSS: GitHub link component (55230ad)
- web-CSS: modern CSS features (2021) (b719cc0)
- web-JavaScript:
performance.getEntriesByType
API (574e947) - web-JavaScript: CORS - cross origin resource sharing (df57ff9)
- web-JavaScript: performance observer (0ff9aa6)
- web-JavaScript: review DOM manipulation performance (1150e17)
- web-JavaScript: review web worker (28bfbb8)
- web-JavaScript: web worker performance (df904dd)
- web-JavaScript: webpack compression plugin (f123cab)
- web-JavaScript: webpack JavaScript obfuscator plugin (acd1892)
- web-library: 3D parallax effect (43e795f)
- web-library: animation and canvas engine (71ec3f5)
- web-library: CSS-in-JS and cookie library (9eba125)
- web-library: FFmpeg CLI tool (adea7ba)
- web-library: full stack serverless framework (f1458a1)
- web-library: function memoization library (2abf986)
- web-library: image zoomable previewer like Medium (a4e0abe)
- web-library: remove outdated library (0ff0471)
- web-library: shell.js (a592636)
- web-library: terminal library (ec5d281)
- web-library: Vue comment system (7c6b116)
- web-TypeScript:
Awaited
utility type in TypeScript 4.5 (7f5ef52) - web-TypeScript: covariance and contravariance (a2088fe)
- web-Vue: reactivity API (220ecd3)
3.5.4 (2021-10-08)
- web-HTML: embed media best practice (30bd462)
- web-JavaScript: pros and cons of ES6
Proxy
(07f2e69) - web-JavaScript: service worker guide (7c793f9)
- web-library: headless CMS system (7c7e612)
- web-library: pdf.js (53c42a0)
- web-library: React boilerplate (8c7e549)
- web-library: UnifiedJS (118240b)
- web-React: review HOC and render props (4f56588)
- web-React: template-free reuse pattern (4c47195)
- web-Vue:
computed
internal (viacreateEffect
) (91e10a3) - web-Vue:
createEffect
composition internal (ffde9c8) - web-Vue:
ref
internal (small reactive) (c3359f2) - web-Vue: basic targetMap/depsMap for reactivity (397f830)
- web-Vue: caveat for Vue 2 reactivity (fd46478)
- web-Vue: composition API basis (b0c39aa)
- web-Vue: hoist static template blocks (489354f)
- web-Vue: lifecycle hooks for composition API (5600ae5)
- web-Vue: performant
ref
(745a46d) - web-Vue: rename
deps
toeffects
(4faf230) - web-Vue: scoped slot (10d19f5)
- web-Vue: scoped slots data direction (2237ad8)
- web-Vue: SFC with script setup (f2d6424)
- web-Vue: simple reactive value implementation (9b565d9)
- web-Vue: Vue
reactivity
package structure (4b50cb2)
3.5.3 (2021-10-03)
- website-SVG: rectify SVG import style (8fbe9b9)
- deps-bot: remove GitHub dependabot (4b51593)
- eslint: add
dg-scripts
linter configuration (86be0e3) - lint: disable auto-fix for linter (bdcae56)
- devops-library: useful GitHub actions (c35b54f)
- git-commit: lint files with husky and lint-staged (98d7a82)
- library-devops: cypress and lighthouse CI action (7068698)
- library-devops: GitHub release action (7032574)
- library-devops: linter actions (e58f878)
- library-web: animate library (6cca528)
- library-web: animation motion library (80a3183)
- library-web: Blitz fullstack React framework (281f23a)
- library-web: comments widget based on GitHub issues (aa999f7)
- library-web: css buttons library (6fde460)
- library-web: CSS design and shapes tools (13f98a5)
- library-web: GitHub hotkey library (bb9204f)
- library-web: NanoID library (798313a)
- library-web: passport.js authentication (1d0562b)
- library-web: React count up animation component (3b82185)
- library-web: Rust and C++ desktop application solution (0645d8f)
- library-web: state management library (a0a1ec7)
- library-web: Three.js renderer for React (53b70a6)
- library: code call graphs generation (8385ff9)
- linux-zsh: autosuggestions and syntax highlighting plugins (4e26431)
- vim-LSP: language server for Vue (a1b51c0)
- web-CSS: change default styles for form elements (ac6c287)
- web-CSS: CSS performance guide (3e4508a)
- web-CSS: sticky footer with
grid
andmin-content
(aa51246) - web-devops: monorepo management tool (721ec93)
- web-JavaScript: default event processing mode (e42e8a9)
- web-JavaScript: drag event pitfalls (2ff5cdc)
- web-JavaScript: handler for client auth error (4756e73)
- web-JavaScript: HTTP status codes (9bc8ebc)
- web-JavaScript: JavaScript implementation list (45d66c1)
- web-JavaScript: JWT auth client (46d4245)
- web-JavaScript: real world use case for Drag and Drop API (f7b260d)
- web-JavaScript: replace
.
with destructuring whenever possible (7e401d2) - web-JavaScript: review DOM API (126c55c)
- web-library: HTTP/1.1 client from Node.js team (166c6f3)
- web-library: JavaScript and NodeJS library (e46dd83)
- web-library: React device detection library (951820c)
- web-library: record and reploy testing library (1a4e662)
- web-library: SEO helper library (89580e7)
- web-library: slider and carousel library (2b27618)
- web-library: Tailwind visualization tool (fee9796)
- web-library: VSCode web IDE (815eba2)
- web-Node: NPM ghost dependencies (c28e244)
- web-React:
useMemo
to Context value (99e1dd5) - web-React: concurrent debounce hooks in React 18 (a2e449e)
- web-React: hooks value attach to fiber node (cbfd0f1)
- web-React: priority scheduler in React 16 and 17 (baaacf0)
- web-React: React 18 concurrent mode (80b3a87)
- web-React: React children API (99c64b6)
- web-React: SPA deployment (956c680)
- web-React: synthetic events delegation in React 17 (41afd51)
- web-Redux: new paradigm for state management (e61b9a9)
- web-Vue:
setup
SFC can't accessthis
(9d34450) - web-Vue:
useRoute
and dynamic router (6c84ed7) - web-Vue:
v-if
vsv-show
(6fae454) - web-Vue: access vite env variables via
import.meta.env
(019e930) - web-Vue: attributes binding directive (208b5de)
- web-Vue: basic usage of Vue router (4c68caf)
- web-Vue: class and style binding directives (bd7b2fc)
- web-Vue: combine JS animation library with transition (403392d)
- web-Vue: combine named slots and scoped slots (bf51874)
- web-Vue: component
v-model
directive (9721ecd) - web-Vue: component
v-model
directive implementation (ff2cbbb) - web-Vue: components custom events (79927cf)
- web-Vue: computed value (51cbd5e)
- web-Vue: conditional and list rendering (adc82d4)
- web-Vue: event handlers directive (9de75d6)
- web-Vue: fallback, named and scoped slots (7c9ae1f)
- web-Vue: named scoped slots shorthand (c3024ee)
- web-Vue: named slot directive shorthand (42348df)
- web-Vue: named Vue routes (da269c3)
- web-Vue: navigation guards routes (f962830)
- web-Vue: nested routes (0ef2ffb)
- web-Vue: programmatic routes navigation (6d69070)
- web-Vue: replace and traverse routes (6b0a5ac)
- web-Vue: SFC and Composition API reference (4363c7d)
- web-Vue: testing friendly for passing route props (b04d717)
- web-Vue: transition group (7afad4a)
- web-Vue: transition JavaScript hooks (d348152)
- web-Vue: two methods to access route
params
(72957c5) - web-Vue: v-model directive (ca339e4)
- web-Vue: v3 transition class name (b350823)
- web-Vue: vite basic configuration (8cc61f4)
- web-Vue: Vue 3 API and tooling best practice (101bd01)
- web-Vue: Vue suspense for async components (3a6ccb7)
- web-Vue: Vue transition and animation (74ea94c)
- web-Vue: vuex types guide (3cd37a1)
- web-Vue: vuex TypeScript types (3d544f8)
- web-Vue: wrap vuex
useStore
(e892367)
3.5.2 (2021-09-23)
- git-commit: git commitizen tools (dd0fe66)
- library-web: avatar image library (18c412d)
- library-web: command P interface widget (a8c771d)
- library-web: NPM publish action (d8cb7a0)
- library-web: pino logger middleware (1507384)
- library-web: React SVG icons library (5e11757)
- library-web: web driver framework (04f30bf)
- linux-zsh: zsh basic setup configuration (d8440b1)
- web-JavaScript: cypress E2E testing example (8d229a7)
- web-JavaScript: review web animation API (6c2a748)
- web-JavaScript: user event for testing-library (a323574)
- web-JavaScript: web animation API abstraction (399cd10)
- web-React: complex custom
useStore
hook (b12e7f0) - web-Vue: review Vue design pattern (4b12c26)
3.5.1 (2021-09-21)
- deps: update dependency @mdx-js/react to ^1.6.22 (#139) (731c423)
- deps: update react monorepo to ^17.0.2 (#140) (cbb0bb5)
- web-CSS: rectify syntax error (b98bffb)
- CI: add multiple environment for building (fb9ff57)
- CI: reduce virtual machines efforts (cb10354)
- CI: reduce virtual machines efforts (f81c6f6)
- deps-bot: change PR concurrent limits (7f85fdb)
- deps-bot: enable
pin
version (20e42aa) - deps-bot: enable non-major deps automerge (68974a0)
- deps-bot: setup renovate bot configuration (23ae45d)
- deps-bot: widen peerDeps and engines (65a6bf8)
- deps-style: add eslint and stylelint support (62dbbe2)
- deps: add
webpack
package (066c1f4) - deps: pin dependencies (5b624a0)
- website-deps: pin
[@docusaurus](https://github.com/docusaurus)
version (5d27e2e)
- git-branch: list upstream branches (20398b7)
- git: disable autocrlf (fc1af62)
- library-CLI: ncc and pkg CLI tools (dd999ce)
- library-CLI: task runner UI for CLI app (0bb3722)
- library-devops: auto approve action (aeef9d6)
- library-devops: bundle size action (1dcf795)
- library-devops: bundle size action (50f5214)
- library-devops: GitHub stale action (4cfe012)
- library-devops: lock issues and PRs github action (1e2ae2e)
- library-web: Alibaba formily library (d34589b)
- library-web: box shadow CSS utils (08cfcd5)
- library-web: BundlePhobia fro NPM size cost (2b5b907)
- library-web: charts and UML draw utils (9f18b40)
- library-web: charts visualization library (bd55f9e)
- library-web: color utils and palette tools (d64a76a)
- library-web: css doodle (b621054)
- library-web: graceful shutdown middleware (4cef86d)
- library-web: Markdown parser and compiler (0ec5d8a)
- library-web: Node server middlewares (a276db4)
- library-web: OpenAPI SDK generator (956d9d4)
- library-web: PDF library (07ffb08)
- library-web: Redux framework (42674a9)
- library-web: type safe CLI library used by yarn berry (6885453)
- library: JS parser (9cd268d)
- linux: refactor commands list (3d1cce1)
- neovim: LunarVim configuration for NeoVim (8fa50ce)
- Node-NPM: setup npm registry token (f27d11d)
- Node-yarn:
yarn up
command usage (5355745) - Node-yarn: yarn basic configuration (b6b12e1)
- vim-LSP: NeoVim language server (3bacfb7)
- vim-plugins: NeoVim tree sitter plugin (a23b8ac)
- vim: NeoVim installation (f43f174)
- vim: setup NeoVim configuration (9efc7e0)
- web-CSS: reducing need pseudo elements (a67e76c)
- web-devops: dependencies maintenance action (0f4a2a7)
- web-HTML: semantic search element (511019b)
- web-JavaScript: 7 primitive values (1c3d7ae)
- web-JavaScript: AJAX alternatives (bd335bf)
- web-JavaScript: basic testing API comparsion (0d1afe4)
- web-JavaScript: Chromium internal reference (4811741)
- web-JavaScript: complete console API (79dad68)
- web-JavaScript: log points via Node debugger (3c3ae3b)
- web-JavaScript: more console functions (e0fd2f8)
- web-JavaScript: offscreen canvas API (661ca4e)
- web-JavaScript: performance API (978493d)
- web-JavaScript: remove
var
usage (63a7d4b) - web-JavaScript: review client Rect APi (58b9f59)
- web-JavaScript: review ES6 Proxy feature (5b2b2db)
- web-JavaScript: simple test runner implementation (6174c70)
- web-Node: dependency pinning guide (cf2696d)
- web-Node: Node crash handling (2fc9cec)
- web-Node: review npm/yarn lockfile (d30b7d5)
- web-Node: yarn berry real world use case (5660089)
- web-Node: yarn berry use case (b169a7b)
- web-performance: chrome user experience report (6f8e5fb)
- web-performance: devtool performance panel (8818164)
- web-React: Context API usage patterns (a1c0fac)
- web-React: custom Recoil hooks implementation (99d4c73)
- web-React: framework paradigm guide (c82efe3)
- web-React: React GitHub CI testing (9b899d1)
- web-React: Recoil minimal implementation (d7a9e39)
- web-React: review React performance mental model (84309f6)
- web-React: two way binding for parent Atom children selector (bc90b7d)
- web-Redux:
createAsyncThunk
API (d801f78) - web-Redux:
dispatch
type definition (7c6e68a) - web-Redux:
react-redux
binding library (28c3e2d) - web-Redux: advanced usage for RTK query (bc13efe)
- web-Redux: async thunk action types (c152ccb)
- web-Redux: basic configureStore usage (d4cac6e)
- web-Redux: basic SSR for Redux (c37de03)
- web-Redux: create store manually (5b4cf2b)
- web-Redux: dynamic reducers and middlewares (e882e27)
- web-Redux: ImmerJS in Redux toolkit (205c4d9)
- web-Redux: importance of memorized selectors (18251fa)
- web-Redux: internal types for RTK API (38f3eff)
- web-Redux: less boilerplate code with
createAsyncThunk
(59a5404) - web-Redux: normalizing data state (27299e6)
- web-Redux: quick start guide for RTK (fa3059f)
- web-Redux: reduce middlewares with reverse order (d84cd60)
- web-Redux: reducer boilerplate and enhancer (aae79dc)
- web-Redux: reducer matcher example (e42ece5)
- web-Redux: Redux style guide (34011a0)
- web-Redux: Redux undo library (616b700)
- web-Redux: reselect selectors mental model (ac54109)
- web-Redux: RTK qeury cache utils (6443e46)
- web-Redux: RTK query code splitting (a397ea9)
- web-Redux: side effects logic in middlewares (16128a0)
- web-Redux: strict reference comparison for useSelector (4c61c20)
- web-Redux: usage of Redux middlewares (9a08fd9)
- web-Redux: useSelector hook internal (80655e2)
- web-TypeScript: discussion on TypeScript turing complete (fbc2d9c)
- web-TypeScript: review tuple type (eb70526)
- web-TypeScript: TS compiler internal (3c5b089)
- web-webpack: hot module replacement internal (e6762ef)
- web-yarn: yarn basic usage (797aab1)
3.5.0 (2021-09-11)
- yarn: switch from npm to yarn 2 (c46fc82)
- library-devops: GitHub actions (9d373c7)
- library-devops: monorepo specific version and changelog tool (cdb4865)
- library-JavaScript: JavaScript parsers (32119ad)
- library-JavaScript: RE2 regular expression engine (02c4517)
- library-JavaScript: regular expression string utils (48c684a)
- library-React: React hooks gallery (d16e6c0)
- library-React: React loading placeholder components (3997137)
- library-web: AST explorer (1cabb36)
- library-web: carousel component (f45daa8)
- library-web: local GitHub action runner (7466f69)
- library-web: monorepo project tools (9217a3d)
- library-web: React form components (5873930)
- library-web: React JSON schema form component (d60a7e5)
- library-web: React library (aca1e81)
- vim: NeoVim configuration (15b7cef)
- web-babel: correct babel preset modules configuration (b44c70b)
- web-CSS: fusion effect with CSS filter (7fa0c17)
- web-i18n: i18n solution (0250e2c)
- web-JavaScript: review strict equal operator (20472fb)
- web-JavaScript: VSCode intellisense for configuration files (2c606ea)
- web-Node: yarn 2 (berry) migration guide (c46bb77)
- web-NPM: NPM dependencies resolution (7ebd57a)
- web-React: React performance mental model (578e8bc)
- web-React: review
React.memo
usage (b65844f) - web-security: review CSRF protection (25a42f6)
- web-security: review web authentication (b98fa77)
- web-webpack: capture build erros via
done
hook (bd5dc54) - web-webpack: library bundle configuration (acacc14)
- web-webpack: typed custom plugin via JSDoc annotation (d847462)
- CI: change to yarn berry (af85e48)
- deps-bot: add renovate.json (#131) (1d242b4)
- deps-bot: change semantic commit type (3d1c771)
- deps-bot: disable renovate dashboard (3029f19)
- deps-bot: schedule deps bot to weekend (c8974e7)
- deps-bot: setup renovate bot configuration (f5f4684)
3.4.1 (2021-09-09)
- bot: add configuration for todo bot (f9f361b)
- bot: change keyword for todo bot (b397889)
- CI-CodeQL: change crontab time (636570e)
- CI-CodeQL: setup CodeQL analysis (faed98f)
- dependabot: change versioning strategy (6e89768)
- deps-dev: bump @docusaurus/module-type-aliases (#126) (e12ab29)
- deps-dev: bump @types/react from 17.0.19 to 17.0.20 (#125) (375c511)
- deps-dev: bump prettier from 2.3.2 to 2.4.0 (#129) (7338a2a)
- deps: bump @docusaurus/core from 2.0.0-beta.5 to 2.0.0-beta.6 (#123) (a69f13f)
- deps: bump @docusaurus/preset-classic (#124) (7404338)
- library-web: cutting edge state management library (f1a8693)
- library-web: tracing based JavaScript assertions (85d359e)
- library-web: utils (9566a41)
- linux: linux fonts installation and configuration (839a46e)
- linux: list available fonts (2592945)
- web-authentication: review token authentication (b16600b)
- web-CSS: mobile viewport utils (bd8deee)
- web-CSS: prefers media query (b13e951)
- web-fingerprint: information to generate fingerprint (593c806)
- web-HTML: a11y for figure and figcaption (139d80d)
- web-JavaScript: CSR, SSR, SSG and ISR (4db1ad5)
- web-JavaScript: review DOM API (e6b35ec)
- web-Node: corepack tool (package manager manager) (e040b88)
- web-Node: Node version manager usage (a11f028)
- web-Node: simple web crawler (9095e2d)
- web-React: event listener hook (e1f3c5c)
- web-React: review complex hooks form (5fe9819)
- web-React: server state management (41c2405)
- web-Redux: action creator in Redux toolkit (a265827)
- web-Redux: basic RTK query usage (e087a12)
- web-Redux: case and match reducer execution order (9227a61)
- web-Redux: curry function for implementing Redux middleware (488d661)
- web-Redux: data selectors (3b4ef0a)
- web-Redux: ImmerJS in
createReducer
andcreateSlice
(ffa12f2) - web-Redux: ImmerJS pitfalls (1f989af)
- web-Redux: memorized selector functions with Reselect (ffa2946)
- web-Redux: mutate-style reducer in redux toolkit (687618e)
- web-Redux: necessity for Redux (dcc701c)
- web-Redux: normalize state via
createEntityAdapter
API (3e928bc) - web-Redux: only string action types (d91c92b)
- web-Redux: Redux performance best practice (a5aa745)
- web-Redux: Redux slice (c72eae8)
- web-Redux: review Thunk (45468fa)
- web-semver: pre-release semantic version (11d439c)
- web-webpack: set
maxSize
for chunks splitting (586bb61)
3.4.0 (2021-09-05)
- CI-azure: remove azure pipelines (3b0d76d)
- CI: format code (d5c5126)
- CI: remove redundant artifacts stage (66b90c2)
- CI: remove redundant stage (c86e106)
- design pattern: front end domain driven design guide (fd1bd33)
- design pattern: inject deps into context API (b5be056)
- git: git
rev-list
command (89ce892) - library-web: cypress axe integration library (f389caa)
- library-web: data mock library (6f6b603)
- library-web: domain parser (725ee38)
- library-web: Formik library (ced6715)
- library-web: formula library (cfc7a33)
- library-web: http data mock library (c2e1b72)
- library-web: Node server solution (1570e4c)
- library-web: parallax library (a171440)
- library-web: React Redux toolkit library (030d3f1)
- library-web: redux reselect library (8115e45)
- library-web: tailwind classes merge utility (ec3fa92)
- library-web: TypeScript utility types (aef2bdc)
- library-web: universal headless automation tool (7248d1b)
- library-web: universal solution for miniapp (508e7b6)
- library-web: Vue composition utilities (8acac51)
- web-a11y: a11y usage rule (8d53bbb)
- web-a11y: WAI-ARIA example (711e2fd)
- web-css: review sticky footer (1eaa963)
- web-css: timeline and steps css style (448069c)
- web-JavaScript: clear memory leak (40e940f)
- web-JavaScript: ES2022 class static block (36d06f4)
- web-JavaScript: memorize async function with
Promise
(57fc6d3) - web-JavaScript: V8 garbage collection mechanism (53579f0)
- web-JavaScript: webpack devtool source map config (7198c23)
- web-network: QUIC protocol (32d793f)
- web-network: review HTTPS (af266cc)
- web-React: code splitting in create-react-app (92306ef)
- web-React: compound components (1466645)
- web-React: context API to avoid prop drilling (5f829f6)
- web-React: context API use case for AuthProvider (48cb6e2)
- web-React: disable source map generation in CRA (e6adf25)
- web-React: server state management (254a265)
- web-security: review XSS, CSRF and DDoS (bbb6569)
- web-webpack: advanced webpack chunks splitting configuration (643b6b2)
- web-webpack: CSS tree shaking plugin (4b6bda5)
- web-webpack: detailed webpack chunks splitting configuration (dcfbcac)
- web-webpack: improve webpack build performance (cc9cfa1)
- web-webpack: resolve tsconfig plugin (4e245e1)
- web-webpack: split chunks vendor search path (c3bceac)
- web-webpack: split runtime chunk (430403f)
- web-webpack: webpack 5 cache feature (8a44704)
- web-webpack: webpack caching for modern browser (dc156c5)
- web-webpack: webpack minimize configuration (8ade6db)
- web-webpack: webpack optimization guide (d0f8e23)
- tags: add tags metadata (962a99e)
3.3.0 (2021-08-31)
- deps-dev: bump @docusaurus/module-type-aliases (0231dc4)
- deps-dev: bump typescript from 4.3.5 to 4.4.2 (8fe81fe)
- deps: bump @docusaurus/core from 2.0.0-beta.4 to 2.0.0-beta.5 (30a32c0)
- deps: bump @docusaurus/preset-classic (f3defd0)
- algorithm-OJ: two pointers for palindrome (61ac40f)
- algorithms-OJ: palindrome problem (117f994)
- algorithms: set for duplicates problem (c364fb5)
- cs-OJ: KMP string search algorithm (1503067)
- cs-OJ: middle limits process in binary search (9c7ef1a)
- cs-OJ: refactor OJ basic notes (62a8dbd)
- cs-OJ: repeated string problem (72becfb)
- cs-OJ: review segment tree (3cc7e8c)
- cs-OJ: two pointers in array for slide window (30cc8cc)
- cs-OJ: xor operator usage (8334639)
- design patterns: review basic design patterns (834fea3)
- library-devops: feature toggle service (A/B test) (2206b78)
- library-web: carousel and presentation slides (052c396)
- library-web: community excel library (eb4a3f9)
- library-web: front-end checklist (e02a21e)
- library-web: FS mock library (4a7190b)
- library-web: graceful Node file system API alternative (ad81ef1)
- library-web: Jotai state management (3a56b95)
- library-web: JSON GraphQL mock server (c420d0b)
- library-web: markdown editor (dfdd225)
- library-web: Next.js documentation static site generator (3c61d0d)
- library-web: Node file system utils (01952ad)
- library-web: Node standard API alternatives (0dc576d)
- library-web: React hooks for remote data fetching (88a1fb5)
- library-web: React i18n library (c041ba0)
- library-web: React inspector tools (d49d289)
- library-web: React Query library (98a77c0)
- library-web: React toast notifications (4c00442)
- library-web: React UI library (e7db005)
- library-web: redux framework (bb7792e)
- library-web: regular expression online tool (e0e98d4)
- library-web: state hook (f4cd4c6)
- library-web: TinyMCE rich text editing library (78d979f)
- library: file utils library (8cf76fe)
- web-JavaScript: devtool panel detection (5ae6f15)
- web-JavaScript: tree shaking tips (ee87fc3)
- web-JavaScript: webpack internals (8a1b2f1)
- web-modules: CommonJS require execution (fd99ed4)
- web-performance: window.performance.timing API (b40e5e0)
- web-React: context usecase (c1566ba)
- web-React: review React performance tips (5c96ead)
- web-TypeScript: indexed access types (cbe5d90)
- web-TypeScript: symbol and template literal index signature (6fedf88)
- web-webpack: webpack CLI UI and profiler plugin (6e9f75c)
3.2.0 (2021-08-26)
- oj: remove C++ OJ notes, ship to TS (a59a408)
3.1.0 (2021-08-22)
- website: remove redundant pages (37dd740)
- library-web: file saver library (ce55911)
- library-web: text and document search library (7d26554)
- web-module: CommonJS vs ES6 module (fb957b1)
- web-module: module require and evaluation (1a0ff96)
- web-performance: review memory leak in JS (e29831e)
- web-React: truth about React virtual DOM (b261418)
- web-React: virtual DOM library (c19d93a)
- web: eslint and webpack plugin for circular imports (213473b)
- website-search: add document search (lunr.js) support (aa196cb)
3.0.0 (2021-08-21)
- web: switch from
vitepress
todocusaurus
.
- deps-dev: bump @sabertazimi/vitepress from 0.16.0 to 0.17.0 (ca18287)
- deps-dev: bump vitepress to latest version (b8dc0a0)
- web: switch to
docusaurus
notes generator (e21b7ba)
- library-web: alert, notification, prompt and toast (59dbb8a)
- library-web: Prism React renderer (dcf8ed9)
- library-web: React live editor (6d102ae)
- library: svg and perf site (a69ee2e)
- web-cache: file hash name and cache control (5531c5d)
- web-performance: HTML parser performance (4bed462)
- web-performance: perf data reporting methods (0dab02d)
- web-performance: review code splitting (70dea1f)
- web-React: CRA environment variables (84f1399)
- web-React: CRA environment variables list (d0e64df)
- web-React: CRA PWA template (f99047b)
- web-React: CRA relative paths deployment (52614fa)
- web-security: content security policy for prevent XSS (68c1dd6)
- CI-build: rectify building result directory (5f0637d)
- code-dark theme: change dark code theme to
vscode
(a13ace1) - docusaurus-navbar: rectify active class for navbar links (99aa3f0)
- java: add correct code block (5383373)
- NPM-ignore: remove unnecessary ignore file (6ae273f)
- README: rectify generator (5a89365)
- syntax highlight: add complete prism highlight (024bc83)
- website: add more navbar links (88d223c)
- website: hidden navbar when scrolling (70d1321)
2.1.2 (2021-08-18)
- git: git clean command (b3b3d8b)
- git: git commit emoji (3b50c3b)
- library-devops: monorepo devops tools (2037f2d)
- library-web: file watch library (88778b7)
- library-web: hyper formula excel calculation libary (42902f8)
- library-web: JS zip library (683729e)
- library-web: open source icons (e654189)
- library-web: pace.js site progress bar (97be7d0)
- library-web: popper.js v2 (860027f)
- library-web: React benchmark component (74740f1)
- library-web: TypeScript AST utils (28c7075)
- library-web: unused TS exports detection (c7c5a29)
- web-css: PostCSS and StyleLint plugins (9d7c368)
- web-JavaScript: definition of tree shaking (48e7425)
- web-JavaScript: ES6 iterable types (d87e7d5)
- web-JavaScript: ESLint plugins (dc1b2af)
- web-JavaScript: macro and micro tasks (b8f3934)
- web-JavaScript: review RegExp (1e594ee)
- web-JavaScript: review tree shaking case (edcc9b7)
- web-NPM: add useful NPM mirrors URL (e2dd782)
- web-npm: invalid pacakge (98c4c92)
- web-performance: monitor reporting performance (4404f89)
- web-performance: performance user case (e0b5429)
- web-React: CRA and react-scripts initialization (22405ee)
- web-React: CRA css usage (cc97854)
- web-React: new jsx transform (ee100eb)
- web-React: public folder (PUBLIC_URL) hatch (9bf4796)
- web-React: react-scripts start locally (4370582)
- web-React: router basename (7fee77a)
- web-React: routes for CRA deployment (1f05d4d)
- web-security: user privacy leaks (1428be4)
- CI-azure: add more pipeline triggers (68ab749)
- CI: initialize git config (f082d33)
- CI: set up CI with Azure Pipelines (6f89bd2)
- markdown-toc: change toc level to 3 (29e3850)
2.1.1 (2021-08-12)
- library-web: Code House cheat sheets (fe968da)
- library-web: css background util (70702ac)
- library-web: private npm registry (449795d)
- web-JavaScript: form validity APi (59a33c2)
- web-React: CRA template default types definition (8082ab7)
- web-React: custom react scripts (88f1ca7)
- web-React: deployment services for SPA (4a5eef8)
- web-React: deps in CRA template (d06663b)
- web-testing: Jest async testing (119872e)
- web-testing: user event testing library (28d86a7)
2.1.0 (2021-08-10)
- GitHub Linguist: enable markdown lanuage detection (e1ff4aa)
- web-testing: e2e testing focus (0089521)
- design patterns: review design patterns (a33bf44)
- git-GitHub: GitHub linguist config (1535147)
- git-log: git log advanced filters (5bf75d1)
- jest-paths: resolve paths from tsconfig.json (1f41e63), closes #105
- library-devops: application performance monitoring system (346a617)
- library-web: 3d tilt library (7528f89)
- library-web: auto mapper TS library (6e08d33)
- library-web: chokidar file watching library (3c8ef44)
- library-web: currencies i18n TypeScript library (fdee495), closes #105
- library-web: design resources (2bd6e40)
- library-web: i18n library (19250b6)
- library-web: JamStack rendering policy (c992cc9)
- library-web: postcss preset env plugin (1e3b30a)
- library-web: React toast library (9e92024)
- library-web: three CSS-in-TypeScript library (d2f86f0), closes #105
- library-web: type-safe (TypeScript) APIs server (de131f1), closes #105
- library-web: TypeScript audio library (2765feb)
- library-web: universal tool for packges comparison (a8857ab), closes #105
- library-web: V8 compile cache (67f0a83)
- library: devops platform (a931127)
- library: image and audio library (f3704e5)
- library: micro front-ends (6ffa8f5)
- library: souregraph (e2ec8bb)
- web-a11y: a11y 101 tips (4f15cbe), closes #105
- web-a11y: a11y checklist (ec6f894), closes #105
- web-a11y: a11y devtools (f1786f0), closes #105
- web-a11y: devtools element inspection (80230b9), closes #105
- web-a11y: WAI-ARIA roles (3bbbb84), closes #105
- web-a11y: WAI-ARIA roles (40220d1), closes #105
- web-a11y: web concent a11y guidelines (5eedbce), closes #105
- web-css: BootStrap 5 cheatsheet (b573512), closes #105
- web-css: button label vertical alignment (b515d03)
- web-CSS: CSS shapes and icons (3fa4a58)
- web-css: custom form widgets (949b76f)
- web-css: custom table cells (06c83b8)
- web-css: diff between *-content and *-items in flex/grid (57badf7)
- web-css: geometry tips (9d9add0)
- web-css: homepage UX tips (2269f57)
- web-css: hover gradient button (81c699c)
- web-css: move css perf to basic notes (99efa72)
- web-css: multiple-column layout (704d471)
- web-css: shape-outside style (1739b55)
- web-css: size and position for gradient button (4d937a8)
- web-JavaScript: cypress reference (8060214)
- web-JavaScript: JamStack methodology (0b7ad9d)
- web-JavaScript: memory snapshot panel (47d5925)
- web-JavaScript: monkey patch debug tips (7505bd2)
- web-JavaScript: more ESNext features (a6a88c2)
- web-React: React children array API (91bc504), closes #105
- web-React: react hooks testing (1cbfdb6)
- web-Redux: redux performance pitfalls (cda0db7)
- web-testing: jest
expect
DOM extension (1cc94f9) - web-testing: Jest API and mocks (eea850d)
- web-testing: Jest DOM expect API (2c4811b), closes #105
- web-testing: jest mock (a714277)
- web-testing: jest setup configuration (badc164)
- web-testing: more jest configuration (f5484c0), closes #105
- web-TypeScript: function overload (4a93478)
- web-TypeScript: generic types constraints (e79e935)
- web-TypeScript: implicit index signature error (51a54a0), closes #105
- web-TypeScript: input types (94316c7), closes #105
- web-TypeScript: pros of decorators (374f5c1)
- web-TypeScript: static files modules (7572010), closes #105
- web-TypeScript: type guard (2a24820)
- web-webpack: get paths from tsconfig.json (6c5c75d)
- web-webpack: webpack 5 assets module (88dcabf)
2.0.3 (2021-08-03)
- CHANGELOG: add
update
field for TIL (bf7cdf6)
- git-GitHub: review GitHub pages setup (b2d180a)
- web-Node:
exports
andtypeVerions
fields (4bd5de3), closes #105 - web-Node: exports path alias (bf359ab), closes #105
- web-NPM: npm workspaces basic usage (5fc2884), closes #105
- web-TypeScript: index signature of Enum (0346523)
- web-TypeScript: module resolution (a9353e0)
- web-TypeScript: paths mapping in tsconfig.json (274de00)
- web-TypeScript: workspaces and references for monorepo (65a715a), closes #105
2.0.2 (2021-08-02)
- release: tag with signature (6f79032)
2.0.1 (2021-08-02)
- branch: git branch management (dbf0e5a)
- C-BasicNotes: learn tips on pointer and process functions (cd3255c), closes #26
- C-Demo: add alloctor functions' implementation (377aa5e), closes #26
- CodeGuide-Bug: learn common bug list (1e33f91), closes #8 #10
- ComputerSystem: begin to learn theory about CS (9d2bd5d), closes #18 #25 #26 #27
- cpp: start learn basic cpp grammar (39a1721)
- CS-CSAPP: Start make notes about csapp (44e1640)
- cs-social network: add social network basic notes (2d62630)
- CSS-CSS3: complete learning CSS3 Basic (62eef07)
- CSS-Demo: complete code cademy proj (66a5bce), closes #43
- CSS-Selector: wholly master CSS 3 Selectors (1aef0b1)
- Data Base - MongoDB: add mongdb set up intro (50b4512)
- Device: Add a list of computer devices I want to own (4702355)
- Git-Basic: whole learn basic git knowledge (4547ad2), closes #22
- Git-GitHub-License: addd 4 unique license (e6ef4c1)
- Git-GitHub: create repo in bash by curl (4ab7a79)
- Git-GitHub: Shorten GitHub URL with git.io (b450c95)
- Git: learn git basic (dcb4626)
- H5: new tags (22fbdcc)
- Haskell-Advanced-Monad: learn advanced monad but not understand (78e61ec), closes #32
- Haskell-functionalTypeclass: learn functor Applicative monoid (5174a03), closes #32
- Haskell-Functor: learn haskell functor Typeclass (9d22667), closes #32
- Haskell-IO: learn file input/output actions (ffc70fc), closes #32
- Haskell-Monad: learn Monad feature and Maybe Monad (217f5bb), closes #32
- Haskell-OJ: add OJ profile to reserve solutions on codewars.com (34904f8), closes #32 #28 #34
- Haskell-Syntax: learn syntax of function (599dd1c), closes issue#32
- Haskell-type/IO: learn type and IO basic (3a6a86c), closes #32
- Haskell-Typeclass: learn typeclass (734ab27), closes #32
- Haskell: dive into haskell world (d7c32bd)
- Haskell: learn higher order function and module (20a7cdc), closes issue#32
- Haskell: today i learned (f192d53), closes #32
- HTML5 && Linux-SetUp: learn something about HTML5;change editor (2473714)
- Java: change JavaBasic.docx to JavaBasic.md (969c85f), closes #1
- JS-Demo-Tips: add useful js demo (8f79f32), closes #30
- lang-golang: start to learn golang to write a jvm with golang (77e48ce), closes sabertazimi/awesome-notes#25
- language-english: start take vocabulary notes on github with md (573e3c8)
- Linux Setup;Git;HTML5 (e49b9df)
- Linux-IRC: learn IRC basic commands (3caad02)
- linux-makefile: learn basic makefile grammar (e323895)
- linux-set up: add npm install feature for ubuntu_setup.sh (367995f)
- Linux-SetUp: shell command line making soft link about VSCode (45b747c)
- Linux-Shell: Add read passward for sudo shell script (b799e7a)
- Linux-SSH: with config file, auto-switch ssh file (17161ef)
- Linux-Vim: learn vim advanced feature (99680b0), closes #21
- Linux: change Linux.docx to Linux.md (63c4339), closes #2
- MachineLearning-Sklearn: first try on sklearn (f37b7a0), closes #47
- makefile: add rule for running program (7e08dd6)
- Matlab: add matlab set up intro (da220eb)
- Nodejs-Module: my first self-defined module (ac4af4b), closes #51
- Nodejs-Workshop-IO: complete some exercises on workshop (ad45677), closes #51
- os: start to learn operating system (f820ef5)
- Python-Jobs: 面试题 (704c196)
- reac-router: learn basic perspective about react router (16b0cd1), closes #11
- search Engine: learn index list in SE from zhihu (8a48b7c)
- Test-Fuzzing: learn fuzzing Testing (724e06a), closes #31
- Wbe-H5: learn Canvas/Web Storage/Web Sockets (7058406)
- Web-ES2016: refactor js basic notes markdown file (9f3b79d)
- Web-H5: add H5 canvas demo html (5b9fd80)
- Web-H5: learn Geolocation API (886ec2a)
- Web-H5: learn Web Socket Basic (97a0aee)
- Web-H5: learn Web Storage API basic (b087a4d)
- Web-JS-Advanced: learn Event-Delegate Mechanism (d02311c), closes #61
- Web-JS-Proj: complete freecodecamp Proj (d7efb1a), closes #13 #29
- Web-JS/Node: learn js node (54257fa), closes #5
- Web-JS: complete some practice on Free Code Camp (238d8e5)
- Web-JS: learn DOM basic (cd1bb99)
- Web-JS: learn DOM-core HTML-DOM CSS-DOM (6a3aa07)
- Web-JS: learn js function and object basic (07fae37)
- Web-JS: learn object details and design patterns (d851dcb)
- Web-JS: learn patterns for modules management (69f7333)
- Web-JS: learn useful function mode (5cddb6b)
- Web-JS: MVC (613e01a)
- web-react-redux: learn some basic principles on redux (311c302)
- Web-React: learn React Framework (180b1fb)
- web-security: learn sql injection and click jacking hacking (02d05c2)
- web-webpack: learn some optimization tips on webpack (106f09e)
- C-Thread-Semaphore: fix some typo (9391c6c), closes #7
- clrs: fix == typo (1e3e384)
- clrs: fix right_rotate bug (8f81e60)
- compiler: fix markdown typo (e9bdc22), closes #25
- compiler: fix markdown typo (a03ea6d), closes #25
- C: refactor directory (72bd966)
- Git-Branch: fix markdown syntax error (c52af3a)
- Haskell: fix markdown syntax error (97f1019), closes #32
- js: rectify markdown syntax error (1b40d4b), closes sabertazimi/awesome-notes#105
- language-cpp: rectify some typo (0a8000f)
- LeetCode: 5 Longest Palindrom Substring (60767df)
- lint: rectify lint error (7892d1c)
- Linux-Setup: fix typo (b53e239)
- Linux-SetUp: fix wrong shell command about soft link on VSCode (425f129)
- linux: rectify gdb gui typo (fa67da0)
- markdown-style: rectify linter error (6b35ba8)
- os: fix error (3076dcd), closes #27
- README: fix directory instruction and contact (98d3644)
- readme-contact: fix color typo (e56b886)
- readme-contact: fix email error (5e57aa2)
- readme-contact: fix email error again (837fcd9)
- readme-contact: fix email error at third time (1108dff)
- README: fix process of this repo (407b281), closes #26
- readme: fix super link error in readme (e0302a4)
- style guide: remove trailing punctuation in heading (61c2b6f)
- style: rectify markdownlint error (b0281e7)
- style: rectify mdlint error (a01a928)
- Web-CSS3: fix markdown syntax error (5825b07)
- Web-JS-Proj-Print: Fix wrong generate path (3311f5b)
- Web-JS-RegExp: Fix markdown syntax error (68ec4c8)
- Web-Template-Gulpfile.js: fix concat css bug (0faf91b)
- web: SPA SEO basics (984904a)