id,title,preview,date,category,slug,cover_image,status,confidence,importance,state,created_at 1,"March 20, 2025",Upon browsing [r/mathematics](https://www.reddit.com/r/mathematics/) I came across this,2025-06-18,til,06-18-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 2,"June 16, 2025",You can use [Zod](https://zod.dev/)'s `instanceof` validator to validate file inputs:,2025-06-17,til,06-16-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 3,"June 15, 2025",The HTTP Header `X-Robots-Tag` is used to instruct search engines on how it should handle indexing t...,2025-06-16,til,06-15-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 4,"June 14, 2025",We can use esbuild's [drop](https://esbuild.github.io/api/#drop) option to remove `console` APIs and...,2025-06-15,til,06-14-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 5,"June 13, 2025",You can delete a single or multiple lines in normal mode:,2025-06-14,til,06-13-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 6,"June 12, 2025",[Netlify Redirects](https://docs.netlify.com/routing/redirects/) makes for an excellent personal URL...,2025-06-13,til,06-12-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 7,"June 11, 2025",We can use [GitHub Actions](https://docs.github.com/en/actions) to push a new commit each time there...,2025-06-12,til,06-11-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 8,"June 10, 2025",Vite uses esbuild to transpile Typescript into Javascript and [esbuild does not do any type checking...,2025-06-11,til,06-10-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 9,"June 9, 2025",Types can be narrowed down by using the `is` keyword:,2025-06-10,til,06-09-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 10,"June 8, 2025",TypeScript has the ability to add string types using template literal strings:,2025-06-09,til,06-08-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 11,"June 7, 2025",Typescript 4.9 introduced the new [satisfies](https://www.typescriptlang.org/docs/handbook/release-n...,2025-06-08,til,06-07-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 12,"June 6, 2025",The `loader` function in [Remix](https://remix.run/) can be inferred automatically using:,2025-06-07,til,06-06-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 13,"June 5, 2025",The return and initial value of the `reduce()` method can be typed using a generic.,2025-06-06,til,06-05-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 14,"June 4, 2025",You can extract the type from a `useRef` hook using `ElementRef`:,2025-06-05,til,06-04-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 15,"June 3, 2025",TypeScript can enforce explicit type imports and exports using the [importsNotUsedAsValues](https://...,2025-06-04,til,06-03-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 16,"June 2, 2025",React 18 removed the `children` prop from `React.FC` and must be defined explicitly in your componen...,2025-06-03,til,06-02-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 17,"June 1, 2025",First extend the native HTML attributes:,2025-06-02,til,06-01-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 18,"May 31, 2025",TypeScript allows you to suppress errors on a line by using the `@ts-ignore` directive right before ...,2025-06-01,til,05-31-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 19,"May 30, 2025",The `never` data type in TypeScript can be used to check that all cases in a switch are considered.,2025-05-31,til,05-30-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 20,"May 29, 2025",TypeScript will not show an error if additional keys are added to an object literal:,2025-05-30,til,05-29-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 21,"May 28, 2025",TypeScript handles optional and undefined differently - [exactOptionalPropertyTypes](https://www.typ...,2025-05-29,til,05-28-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 22,"May 27, 2025",`noUnCheckedIndexAccess` adds `undefined` to any un-declared fields in a type. This is useful if you...,2025-05-28,til,05-27-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 23,"May 26, 2025",Adding an interface for callable objects:,2025-05-27,til,05-26-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 24,"May 25, 2025",Assertion functions throw an error if a certain condition is not met.,2025-05-26,til,05-25-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 25,"May 24, 2025",A common problem faced with using `Array.includes()` in TypeScript:,2025-05-25,til,05-24-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 26,"May 23, 2025",The HTML `i` element is named [the Idiomatic Text element](https://developer.mozilla.org/en-US/docs/...,2025-05-24,til,05-23-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 27,"May 22, 2025",The `
` HTML element creates an accordion-like element that the user can toggle open and clo...,2025-05-23,til,05-22-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 28,"May 21, 2025",```bash,2025-05-22,til,05-21-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 29,"May 20, 2025",`svelte-kit sync` creates the tsconfig.json and all generated types for your project. This is useful...,2025-05-21,til,05-20-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 30,"May 19, 2025",Svelte nodes have a `__svelte_meta` object in development mode that contains the file location of th...,2025-05-20,til,05-19-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 31,"May 18, 2025",[structuredClone()](https://developer.mozilla.org/en-US/docs/Web/API/structuredClone) is a native AP...,2025-05-19,til,05-18-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 32,"May 17, 2025",I never got involved in spaces vs tabs debates throughout my career. But the topic has popped up rec...,2025-05-18,til,05-17-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 33,"May 16, 2025",[single-spa](https://single-spa.js.org/) is a JavaScript framework that enables you to develop appli...,2025-05-17,til,05-16-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 34,"May 15, 2025","- In Node.js, [setTimeout()](https://nodejs.org/dist/latest-v18.x/docs/api/timers.html#settimeoutcal...",2025-05-16,til,05-15-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 35,"May 14, 2025","In RTK Query, services are created like this example:",2025-05-15,til,05-14-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 36,"May 13, 2025","AWS Lightsail does not have an option to rename instances. However, you can create a new instance fr...",2025-05-14,til,05-13-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 37,"May 12, 2025",Use [ReactDOM.unmountComponentAtNode()](https://beta.reactjs.org/reference/react-dom/unmountComponen...,2025-05-13,til,05-12-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 38,"May 11, 2025",[Netlify Redirects](https://docs.netlify.com/routing/redirects/) can be used to proxy to external se...,2025-05-12,til,05-11-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 39,"May 10, 2025",> **[moddatetime()](https://www.postgresql.org/docs/current/static/contrib-spi.html)** is a trigger ...,2025-05-11,til,05-10-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 40,"May 9, 2025",[pnpm](https://pnpm.io/) can do cross-platform scripting when [shell-emulator](https://pnpm.io/cli/r...,2025-05-10,til,05-09-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 41,"May 8, 2025",[pnpm patch](https://pnpm.io/cli/patch) allows you to make changes to a dependency package without h...,2025-05-09,til,05-08-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 42,"May 7, 2025",I had the opportunity to work on some PHP this week and picked up a few new tricks that are very dif...,2025-05-08,til,05-07-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 43,"May 6, 2025",Nunjucks macros allows you to define reusable UI components that can be imported in your Eleventy pa...,2025-05-07,til,05-06-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 44,"May 5, 2025","In 2009, Tony Hoare describes his invention as a ""billion-dollar mistake"":",2025-05-06,til,05-05-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 45,"May 4, 2025",[npm view](https://docs.npmjs.com/cli/v7/commands/npm-view/) outputs data about an npm package:,2025-05-05,til,05-04-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 46,"May 3, 2025","If you want to use the latest version of a package when using `npm create`, you need to specify `lat...",2025-05-04,til,05-03-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 47,"May 2, 2025",npm can get noisy during installs with the [audit](https://docs.npmjs.com/cli/v6/commands/npm-audit)...,2025-05-03,til,05-02-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 48,"May 1, 2025","In Node.js, you can access `stdin` using file descriptor 0 to take input stream:",2025-05-02,til,05-01-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 49,"April 30, 2025",Nginx supports nested locations:,2025-05-01,til,04-30-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 50,"April 29, 2025",[Next.js](https://beta.nextjs.org/docs/configuring/typescript#statically-typed-links) statically typ...,2025-04-30,til,04-29-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 51,"April 28, 2025",Netlify uses `nvm` in their build images. Set the Node.js version in `.npmrc` to tell Netlify which ...,2025-04-29,til,04-28-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 52,"April 27, 2025",Module Federation is a microfrontend pattern that involves 2 components:,2025-04-28,til,04-27-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 53,"April 26, 2025",Delete all `.DS_Store` found within a directory recursively:,2025-04-27,til,04-26-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 54,"April 25, 2025",`logpoints` in Chrome DevTools allow you insert logging statements without adding breakpoints.,2025-04-26,til,04-25-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 55,"April 24, 2025",`JSON.stringify` has an optional second parameter [replacer](https://developer.mozilla.org/en-US/doc...,2025-04-25,til,04-24-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 56,"April 23, 2025",[JSON.parse()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON...,2025-04-24,til,04-23-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 57,"April 22, 2025",[WeakMap](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WeakMap) ...,2025-04-23,til,04-22-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 58,"April 21, 2025",Tag templates (or tag functions) parse template literals with a function:,2025-04-22,til,04-21-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 59,"April 20, 2025",[Symbol.iterator](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/S...,2025-04-21,til,04-20-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 60,"April 19, 2025",[Spread operator](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread...,2025-04-20,til,04-19-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 61,"April 18, 2025",> Signals are reactive primitives for managing application state.,2025-04-19,til,04-18-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 62,"April 17, 2025",The new [scrollend](https://developer.mozilla.org/en-US/docs/Web/API/Document/scrollend_event) event...,2025-04-18,til,04-17-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 63,"April 16, 2025",[Promise.race()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Pr...,2025-04-17,til,04-16-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 64,"April 15, 2025","In JavaScript, negative zero `-0` is not the same as a positive zero `+0`.",2025-04-16,til,04-15-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 65,"April 14, 2025",- [Math.random()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/M...,2025-04-15,til,04-14-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 66,"April 13, 2025",A much cleaner and performant alternative to objects.,2025-04-14,til,04-13-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 67,"April 12, 2025",An [import map](https://github.com/WICG/import-maps) is JSON that browsers use to resolve the path o...,2025-04-13,til,04-12-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 68,"April 11, 2025",Ever wondered why [Response.statusText](https://developer.mozilla.org/en-US/docs/Web/API/Response/st...,2025-04-12,til,04-11-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 69,"April 10, 2025",```js,2025-04-11,til,04-10-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 70,"April 9, 2025",The `navigator.sendBeacon()` method is intended to be used for sending analytics data to a server.,2025-04-10,til,04-09-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 71,"April 8, 2025",A barrel file is a module that re-exports from other modules:,2025-04-09,til,04-08-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 72,"April 7, 2025",```bash,2025-04-08,til,04-07-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 73,"April 6, 2025",The banners on top of web apps that promote the native version of the app is controlled using a `](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/mark) HTML element represen...,2025-04-05,til,04-04-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 76,"April 3, 2025",The hex color notation can be described as `#RGB[A]` or `#RRGGBB[AA]` - it accepts an alpha channel ...,2025-04-04,til,04-03-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 77,"April 2, 2025",GitHub supports web form fields in issue templates:,2025-04-03,til,04-02-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 78,"April 1, 2025",There are 3 ways to create a release using the GitHub API.,2025-04-02,til,04-01-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 79,"March 31, 2025",To show list of files in the most recent Git stash:,2025-04-01,til,03-31-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 80,"March 30, 2025",Find the commits that contain the file. Take note of the last commit that deleted the file:,2025-03-31,til,03-30-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 81,"March 29, 2025",Sometimes you need to reset a remote Git repository while keeping your local history intact. Here's ...,2025-03-30,til,03-29-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 82,"March 28, 2025",Clean up history from a repository by removing the git commits and replacing it with a new single co...,2025-03-29,til,03-28-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 83,"March 27, 2025",Daily reflection and learning notes.,2025-03-28,til,03-27-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 84,"March 26, 2025",- Configure multiple host aliases in ssh configuration:,2025-03-27,til,03-26-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 85,"March 25, 2025",```bash,2025-03-26,til,03-25-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 86,"March 24, 2025",- `git checkout -` is a shorthand for `git checkout @{-1}`. It will checkout the last previous branc...,2025-03-25,til,03-24-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 87,"March 23, 2025",```bash,2025-03-24,til,03-23-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 88,"March 22, 2025",Query the first item in the history of that path and return the `committedDate`:,2025-03-23,til,03-22-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 89,"March 21, 2025",`2>&1` is used to redirect standard error (`stderr`) to standard output (`stdout`). It allows you to...,2025-03-22,til,03-21-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 90,"March 20, 2025",ESLint's `no-restricted-syntax` uses [selectors](https://eslint.org/docs/latest/developer-guide/sele...,2025-03-21,til,03-20-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 91,"March 19, 2025",Take advantage of [HTTP/2](https://developer.mozilla.org/en-US/docs/Glossary/HTTP_2) in Vite Dev Ser...,2025-03-20,til,03-19-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 92,"March 18, 2025",The sections in `.editorconfig` are filepath globs. They can be used to define config for certain fi...,2025-03-19,til,03-18-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 93,"March 17, 2025",```bash,2025-03-18,til,03-17-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 94,"March 16, 2025",Steps on building a Docker image and pushing it to a self-hosted registry:,2025-03-17,til,03-16-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 95,"March 15, 2025",`COPY --from` is used for [mulit-stage builds](https://docs.docker.com/build/building/multi-stage/) ...,2025-03-16,til,03-15-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 96,"March 14, 2025",```bash,2025-03-15,til,03-14-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 97,"March 13, 2025",Chrome DevTools allows you to override API responses and HTTP headers directly in the browser - this...,2025-03-14,til,03-13-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 98,"March 12, 2025","If you switch focus from the current page to the Chrome DevTools, some overlay elements automaticall...",2025-03-13,til,03-12-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 99,"March 11, 2025",```bash,2025-03-12,til,03-11-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20 100,"March 10, 2025","In Dart (starting from version 3.6.0), you can use underscores (`_`) as digit separators in number l...",2025-03-11,til,03-10-2025,,Finished,certain,9.0,active,2026-01-05 06:11:20