An aircraft monitor based on Charlie Gerard's JavaScript Aircraft Radar System. It requires an RTL-SDR USB dongle and a WebUSB capable browser.
This article discusses using HTML data-* attributes as an alternative to closures in React for performance and readability, especially when dealing with lists and memoization.
This article details replacing HTMX with HMPL in a web project, highlighting HMPL's increased customization options and modern fetch implementation compared to HTMX's minimalistic approach. It provides code examples for simple and complex scenarios, a size comparison, and concludes that HMPL is a viable alternative for projects prioritizing functionality over minimal size.
This article details the creation of a simple, 50-line agent using Model Context Protocol (MCP) and Hugging Face's tools, demonstrating how easily agents can be built with modern LLMs that support function/tool calling.
1. **MCP Overview**: MCP is a standard API for exposing tools that can be integrated with Large Language Models (LLMs).
2. **Implementation**: The author explains how to implement a MCP client using TypeScript and the Hugging Face Inference Client. This client connects to MCP servers, retrieves tools, and integrates them into LLM inference.
3. **Tools**: Tools are defined with a name, description, and parameters, and are passed to the LLM for function calling.
4. **Agent Design**: An agent is essentially a while loop that alternates between tool calling and feeding tool results back into the LLM until a specific condition is met, such as two consecutive non-tool messages.
5. **Code Example**: The article provides a concise 50-line TypeScript implementation of an agent, demonstrating the simplicity and power of MCP.
6. **Future Directions**: The author suggests experimenting with different models and inference providers, as well as integrating local LLMs using frameworks like llama.cpp or LM Studio.
An in-depth look at JavaScript fundamentals including hoisting, temporal dead zone, function declarations vs expressions, shallow vs deep copy, Object.assign, slice vs splice, forEach vs map, global execution context, polyfilling, map deep dive, and type coercion.
The author argues that constantly chasing the latest JavaScript frameworks can be unproductive and distracting from actual development. They suggest focusing on core programming skills and widely adopted frameworks.
Chrome 135 introduces new capabilities for providing declarative behaviour with the new command and commandfor attributes, enhancing and replacing the popovertargetaction and popovertarget attributes.
This article explores emerging JavaScript patterns anticipated to become significant in 2025, including Pattern Matching, Decorators, Module Federation, Proxy-Based Observables, and Immutable Data Patterns. Each pattern is discussed with its current status, importance, and potential impact on future web development.
The article explores principles and best practices of writing clean JavaScript code, emphasizing readability, maintainability, reusability, testability, and scalability. It covers topics such as meaningful variable names, object organization, function design, commenting, testing, and using modern JavaScript features.