Talks from our events
Latest
All talksLeadership Insights From Growing 2X in 8 Months
TechLead Conference 2025: AI in Orgs

15 min
Leadership Insights From Growing 2X in 8 Months

Product-market fit is like being pushed by the market, needing more. A game analogy illustrates teamwork dynamics in handling tasks. Communication is key in team growth, allowing delegation for collective success. Experienced team members focus on clarity, delegation, and accountability. Prioritize assigning tasks to team members based on expertise. Embrace the role of a side quest specialist for long-term or short projects. Engage in mentorship and explain reasoning to foster team independence and growth. Mentorship occurs organically between tasks, influencing work approaches. Trust your team to make decisions by explaining your rationale. Mentor one skill at a time to ensure effective learning and application. Focus feedback, encourage newbies, address weak points of experts to enhance performance. Focus on feedback for beginners and experts, emphasize outcomes and timely feedback to enhance performance. Realize the importance of quick utility, user stories, and outcome-focused work. Utilize user stories, documentation, and flexible roadmaps for effective planning and decision-making. Embrace change, document ideas, focus on user stories, and leverage backlogs for effective planning and adaptation.
Sustainable Web Development in Startups: Applying Green Coding Principles for a Greener Future
JSNation 2025

19 min
Sustainable Web Development in Startups: Applying Green Coding Principles for a Greener Future

Katharina Fetzer emphasizes the importance of green coding principles in startups amidst climate change. High Lane implements cloud native applications and lightweight solutions. Efficient load handling in the cloud involves scalable virtual servers. Resource sharing and optimization in the cloud promote cost efficiency. Highlane's cloud-first strategy and lightweight app development aim for a greener web presence. The webpage relaunch at Highlane reduced emissions by 50%.
AI-Powered Frontend Development: Building Better UIs Faster
React Summit 2025

19 min
AI-Powered Frontend Development: Building Better UIs Faster

Discussing building better UIs faster with AI, emphasizing the use of LLMs as predictive text models and the need to maximize their smart aspects in coding and UI development. Exploring file context management in Cursor IDE and demonstrating quick UI updates using AI for coding efficiency and real-time results. Discussing advanced workflows for efficient development using feedback-driven approaches and incorporating test-driven development for iterative and automated testing in Cursor IDE. Exploring advanced prompt tricks in Cursor IDE for efficient development by writing tests first, updating code iteratively, and enabling autorun mode for automated testing and bash commands. Cursor's Annoying Prompt Behavior, Automated Testing Benefits, and Test-Driven Development for Reliable Code. AI Feedback Importance and AI Testing Complexity with Clear Goals. AI Challenges, Visual Front-End Focus, and Fusion Preview. Integration of Figma Designs for Visual Tweaks, Exploring New Features and Design Systems, Updating Customers Tab and Making Visual Edits, Making Carousel and Visual Updates, Granular Design Updates and AI Integration, Dynamic Updates and Component Refactoring, Tagging Builder Bot for Automated Code Updates.
Supercharging Agile Teams with Generative AI
TechLead Conference 2025: AI in Orgs

28 min
Supercharging Agile Teams with Generative AI

Kanika Tover discusses supercharging agile teams with AI, emphasizing an agile mindset, adaptability, and collaboration. Generative AI tools enhance productivity gains, development speed, and efficiency in agile teams. AI integration improves planning, development, testing processes, feedback facilitation, and communication efficiency. Core AI platforms like OpenAI and Chat GPT-5 are crucial for text generation. Future trends include AI evolving into team assistants and agents for tasks. Real-life AI applications focus on efficiency and productivity enhancement. AI collaboration improves meeting efficiency, technical debt management, and customer focus.
How AI is Impacting Engineering Leadership
TechLead Conference 2025: AI in Orgs

23 min
How AI is Impacting Engineering Leadership

Gregor discusses the impact of AI on engineering leadership, addressing concerns and sharing insights from industry discussions. Teams are feeling less motivated due to sensationalistic AI predictions causing fear of missing out. Company leaders face challenges managing unrealistic AI expectations and beliefs. Guidance is provided for leaders to avoid FOMO, start with small AI experiments, and prioritize good culture. Developing AI strategy involves aligning with engineering, embracing skill convergence, and educating on AI tools.
Transforming Your Tech Interviews in the AI Agent Age: The McDougall Method in Detail
TechLead Conference 2025: AI in Orgs

18 min
Transforming Your Tech Interviews in the AI Agent Age: The McDougall Method in Detail

Anna McDougall discusses transforming tech interviews in the AI agent age and the flaws in traditional technical interviews due to lack of control in remote settings. Addressing challenges in technical interviews with AI integration and the need for adapting traditional assessment methods to combat AI influences. Balancing technical interview difficulty, focusing on psychological safety, and using a modern, realistic, and indicative approach in the McDougall method. Organizing engineer for meetings, pairing engineer for interactions, and use of all tools allowed in the McDougall method. AI tools are essential in development. McDougall method: Intro, warmup, pair programming, reflection, wrap up. Shorter interviews save candidate time. Intro warmup: 10-15 mins. Pair programming checks for implementation, 35-45 mins. Create repository based on a real codebase for pair programming. Create Mimic codebase for testing. Send repository with failing tests. Tasks represent different levels: fresh junior to senior plus. Start candidates one level under. Psychological safety in tasks. Levelling based on task difficulty. Reflecting on candidate understanding and feedback. Emphasizing timeline in wrap up. Encouraging McDougall Method adoption and experimentation.
No Dependencies, No Problem: Streaming AI Over the Phone
JSNation 2025

6 min
No Dependencies, No Problem: Streaming AI Over the Phone

Marius from Twilio demonstrates building AI agents for phone calls, addressing latency issues by leveraging Twilio's infrastructure and third-party providers like 11 Labs and Google Cloud. Configuration includes WebSocket integration for message handling, static responses, and text-to-speech with 11 Labs. AI integration involves GPT4 or mini model for conversation history storage. A live demo showcases an AI voice assistant with instant responses and latency improvements.
Senior Isn't About Your Tech Skills
React Summit 2025

15 min
Senior Isn't About Your Tech Skills

Being senior isn't just about tech skills; continuous improvement and broadening impact are vital for growth in the tech industry. Being effective in your work means focusing on outcomes that create superpowers for others, increasing your career opportunities and impact. Delivering valuable work creates opportunities for growth and rewards in your career. Being a senior engineer evolves from task execution to leadership and team management, leading to significant career growth and financial rewards. Results on your resume matter for your next job. Leadership, not titles, defines a senior engineer's role. Senior engineers lead projects, create direction in chaos, and focus on delivering results efficiently and effectively.
Entropy Tolerance: The Most Important Software Question You Aren't Asking
TechLead Conference 2025: AI in Orgs

20 min
Entropy Tolerance: The Most Important Software Question You Aren't Asking

In software development, the discussion focuses on understanding determinism vs. non-determinism and its impact on reliability and trustworthiness. The examples provided highlight the implications of non-deterministic behavior, especially in critical systems like language model autopilots on planes. Technical leaders are advised to consider entropy tolerance when integrating AI and LLMs into business processes using a decision framework. Different entropy tolerance levels exist, influencing the need for AI-human collaboration based on the process's value and tolerance. The decision-making framework for AI integration emphasizes the importance of human involvement in processes with varying levels of entropy tolerance.
The State of React and the Community in 2025
React Summit 2025

29 min
The State of React and the Community in 2025

Mark Erickson discusses the state of React in 2025, React community debates on React's direction and misconceptions, React's shift towards client-side frameworks and SSR emphasis, React's feature development process at Meta and Vercel, controversy around Vercel's server components involvement, tight relationship between React and Next, React team's emphasis on frameworks for app performance, critique of React's heavy-handed framework recommendation, React team's delay in adding VEET as a recommended tool, challenges with server components' origins and communication, no official signals support planned for React 19, social media impact on React development decisions, React community diversity and server components usage insights, React's evolving black box concept and tradeoffs discussed.
Featured
Your App Crashes My Browser
JSNation US 2024

29 min
Your App Crashes My Browser

We asked co-sponsors to present React, an essential framework for web and mobile developers. TypeScript improves the development experience. Let's talk about the neglected topic of JavaScript leaks and how Chrome handles them. Leaks are easy to create, even for good developers. We crashed browsers due to memory leaks. Solution: fully reload the page after soft navigations. Today we have tools to fix leaks. The first step is admitting you have a problem. Use the reporting API to collect data on memory leaks. If you have a problem, it's not just a single leak. Debug and take memory snapshots. Load the page, perform an action, go back. Compare snapshots to find leaks. Use Memlab by Facebook to identify leaked objects. Memlab tells us memory is used, leaks are everywhere. Chrome extension helps with exporting actions to scenario.js file. 50 users already. Fixing memory leaks involves finding and nullifying unused objects. Spot the leak in a simple React component that adds event listeners. Removing the component leaves the listeners behind. In session two, adding a set interval creates additional listeners. Debugging with Memlab and using non-minified code and named functions helps identify the leaks. Solution: add a component. In React, frameworks provide ways to clean up after components are removed. Spotting a leak in uppercase spelling of mount. Hooks offer use effect to handle cleanup. A use effect allows you to return a function for cleanup. Spot the weird memory leak caused by console logs. Try the reporting API, check your framework, use null, and find your first leak. Memory leaks may be more significant on a mobile browser due to limited available memory. Differentiating between leaked memory and growing global state can be determined by the app's architecture. Checking for memory leaks on mobile can be done using dev tools and manual inspection or by using Puppeteer and the developer tools protocol for emulation. The lack of naming and bindings for anonymous functions in a codemark plugin is a potential area for improvement. Neglect and the excessive amount of JavaScript are common culprits for poor web performance. Facebook's experience with redesigning their website highlighted the need for tools to address the performance bottleneck caused by JavaScript. Throttling the CPU can be effective. Developers should set objects to null when they are no longer needed, allowing the garbage collector to clean up. Chrome DevTools provides options for detecting console log memory objects. WeakRefs and WeakMaps can be useful for cleaning up memory leaks. Integration with tools like MemLab can help regression test releases for memory leaks. We are still early in memory leaks tooling. Raising awareness about the problem is important. Lighthouse scores are not the sole indicator of a fast website. Additional testing and familiarity with Core Web Vitals are recommended.
Panel Discussion: Future of React
React Summit US 2024Watch video: Panel Discussion: Future of React








39 min
Panel Discussion: Future of React








7 authors
We're going to be doing a future of React panel discussions. React 19 is in RC stage and we're excited to hear when it will be stable. The React compiler is here to stay and is the future of developer experience and tooling. React 19 brings exciting features like RSCs and consolidation of the framework. React's commitment to community and innovation is commendable. The React team values feedback and actively engages with the community. React's future includes supporting the community and enabling smooth migrations. There's a need to teach underlying concepts and educate AI systems. Teaching and adapting to React can be challenging. The React compiler changes default re-rendering behavior. Collaboration with Next.js and Vercel has been valuable for React's development. Appreciation for the community and partnerships with Vercel and Microsoft.
Frontend’s Lost Decade and the Performance Inequality Gap
JSNation 2025

32 min
Frontend’s Lost Decade and the Performance Inequality Gap
Top Content

Alex Russell's journey from engineering to product management, the focus on improving web experiences, and optimizing software for end-user success. Considerations include device performance, web diversity, and API constraints. Challenges of web platforms encompass hardware and network limitations, prioritizing user experience. Understanding the impact of Moore's Law on device performance and adapting browsers for efficiency. Emphasis on code optimization, user-focused development, and quality in web UI. Addressing challenges in PWA success, developer learning, and balancing frameworks with platform understanding.
Is React Really Dying?
React Advanced 2024

29 min
Is React Really Dying?

Is React really dying? React is dead. Let's take a look at the numbers. Svelte is getting 1.5 million downloads per week. Angular is pulling 3.5. Probably not a competitor with React. React dwarfs everything with 25 million downloads a week. React is incredibly popular with 4 million users and developers. Despite some criticism, a survey shows that 71% of respondents liked React, while only 28% didn't. React's flexibility and options can be overwhelming for beginners. React's complexity has increased, causing confusion for beginners. Memory management, overcomplicated architecture, and innovation fatigue are common challenges in React. React 19 is delayed due to suspense issues. React server components are a favorite innovation. Qwik's hydration model is cool. Qwik is amazing, and it would be cool to see something like it for React. AI can help you get 80% there, but you still need an actual developer to tweak and clean up the code. Tab AI keeps your workflow going. React's popularity is undeniable. The momentum behind React is strong, and it's unlikely to fade away anytime soon.
Transformers.js: State-of-the-Art Machine Learning for the Web
JSNation 2025

27 min
Transformers.js: State-of-the-Art Machine Learning for the Web

Joshua introduces Transformers JS and Hugging Face, emphasizing community collaboration and pre-trained models. Transformers JS evolution led to 1.4 million monthly users, supporting 155 architectures. The library's browser-based capabilities offer real-time processing, cost-efficiency, and scalability. Integration enhancements include native web GPU execution and React Native implementation. Web ML implementation focuses on Onyx Runtime for device execution and web GPU for resource optimization. Browser-based ML applications cover vision, speech recognition, and text-to-speech. Advanced implementations include multimodal applications and educational tools. Interactive AI demonstrations showcase semantic search and conversational AI scenarios. Model licensing transitions to ECMAScript for efficiency and model redownloading factors are discussed.
The State of the Web
JSNation 2025

32 min
The State of the Web

Sasha Grief discusses the state of the web through web development surveys, leading to an interactive quiz about the state of JS and usage of front end frameworks. Discussion on popular front-end libraries like React, Vue, Angular, and the rising popularity of TypeScript among developers in recent surveys. Discussion on TypeScript adoption, TC39 committee proposals, favorite CSS feature 'has,' and browser support for 'has' selector. Browser interoperability, browser vendors' initiatives, AI usage among web developers, and survey insights. Job titles linked to higher income, diversity of survey topics, top hobby among developers, and popular specific video games. Learnings on CSS features, TypeScript default, AI usage, survey benefits, challenges in reaching diverse survey participants. Surprising positivity in JavaScript usage, stable framework landscape, AI adoption challenges, mainstream AI tools, successful situp.js survey. Inconsistent respondent numbers, manual data normalization efforts, subjective question selection process, community input, mitigation of selection bias. Reason for starting surveys, transition from Meteor JS, exploration of JavaScript ecosystem.
Out Of Order Streaming (The Secret Powering Modern React)
React Summit US 2024

29 min
Out Of Order Streaming (The Secret Powering Modern React)

I'm the second-best TypeScript YouTuber. I'm giving a talk on streaming in React and the benefits it brings to applications. Streaming allows for faster perceived loading times by sending partial HTML to the browser, rendering it and waiting for the rest to complete. Server-side loading can cause delays, but this can be improved by caching HTML on a CDN. Streaming HTML in a different order has been a challenge, but there are JavaScript solutions. Optimizing HTML streaming with Suspense and dynamic I.O. can further improve loading times. Using suspense in client-side rendering and addressing challenges with Next.js React model are interesting patterns. Caching can now be done at a more granular level, improving SEO and reducing load on the host server. Rendering on the server is not a big penalty compared to multiple API requests. Thank you all.
Tanstack Start - A Client-Side First Full-Stack React Framework
React Summit US 2024

30 min
Tanstack Start - A Client-Side First Full-Stack React Framework
Top Content

We surveyed thousands of developers to show that a louder audience leads to a better presentation. There has been a shift in web app development towards server-first architectures, which has improved full-stack capabilities but at the cost of complexity and divergence from the client-centric approach. Tanstec Start is a meta-framework that aims to provide the best client-side authoring experience with powerful server-side primitives. The Tansec Router supports advanced routing features, URL state management, and JSON storage. Combined with the server-side rendering capabilities of TanStack Start, it becomes even more powerful. The TanStack Router has isomorphic loaders and integrates seamlessly with TanStack Query for additional features like polling and offline support. UseSuspenseQuery allows for dynamic streaming of data during SSR. TanStack Start also offers server-side features, API routes, server functions, and middleware. The future plans include RSCs, websockets, real-time primitives, and static pre-rendering. TanStack Start is now in beta and is suitable for building React apps. It is open source.
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
React Summit US 2024Watch video: Chrome DevTools: State of the Union 2024 - Debugging React & Beyond

30 min
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
Top Content

Hi folks, in this Talk we learn about React and Chrome DevTools. We explore the new AI Assistant panel in DevTools that helps with UI tweaking. React DevTools now supports Gemini AI model for error fixing. Extensibility is important and React DevTools has features like highlight updates and server components. We also learn about server logging in the browser console and toggling suspense fallbacks. Browser DevTools allow experimenting with local overrides and improving color contrast. Advanced features include overriding headers, network panel customization, and performance tooling. We also discuss Core Web Vitals, optimizing pages, and debugging UI with DevTools. There are fun tips for enhancing animations and logging workflow. The Talk ends with Q&A and sharing/removing features based on user feedback.
Standardizing Signals in TC39
JSNation US 2024

29 min
Standardizing Signals in TC39

I'll be talking about standardizing signals in TC39. Immediate mode wipes out the whole screen and writes a new one, while retained mode changes only what is necessary. Signals represent a cell of data that can change over time. The correct solution is to topologically sort dependencies and evaluate them in a coherent order. Standard signals allow for code sharing across frameworks and the creation of reusable infrastructure. The signal API is designed to be wrapped by different frameworks. Standards can achieve more portability and reduce the need to lock into specific ecosystems. The API includes a watcher, a set of signals being observed, with a synchronous callback made when the first member becomes potentially dirty. The speaker discusses how signals relate to state management libraries in React and mentions the potential for signals to become a web standard in the future.
Trending today
Thinking Like an Architect
React Summit 2025

32 min
Thinking Like an Architect
Top ContentPremium

Modern software development shift towards developers involves more complex architecture decisions with trade-offs and long-term consequences. 11 tips learned from diverse projects and roles. Focus on decentralization, avoid technology-first approach, and consider context for great architecture. Understanding the holistic approach to architecture. Linking architecture to culture and structure. Importance of aligning decisions with business needs using techniques like event storming and domain storytelling. Netflix's core domain focuses on content accessibility and tailored user experience. Supporting domains like personalization ensure usability even during downtime. Payment methods, a generic domain, are essential for subscription. Adapting boundaries and architectural characteristics is crucial for evolving businesses. Define evolving core domains and adapt characteristics accordingly. Select key architectural characteristics for system design. Consider different availability needs for various subdomains like core and generic. Latency varies based on functions; strict for finance, flexible for integration. Understand and apply specific characteristics to subdomains for optimal system performance. Understand the need for different approaches in system design. Consider availability requirements for active architecture. Evaluate decisions impacting software design and technology. Modularize workload at code or code-infrastructure level. Consider context in choosing between monoliths and microservices. Adapt system modularity based on context and team structure. Consider modularity based on system requirements. Be pragmatic in architectural decisions. Utilize event-driven architecture in distributed systems. Leverage infrastructure for efficient service stitching and delivery. Adapt to changing system characteristics for scalability and efficiency. Consider cost implications of shifting from event-based to cron job. Design software for evolution, embracing changes and tradeoffs for user-focused systems. Create a sociotechnical system balancing long-term vision and immediate needs with a lean mindset. Embrace an iterative approach to software development, understanding the domain, consumers, and the system. Master communication skills for architects by focusing on communication, inclusion, and documentation. Translate technology reasons into business benefits to effectively communicate with various stakeholders. Change language to match audience, share reasoning effectively. Involve others in decision-making for better understanding and solutions. Master architectural decision records and architecture as code. Utilize written communication for API changes, involve all voices. Sequence diagrams aid team understanding; master architecture as code. Focus on key aspects, prioritize effectively to avoid distractions.
Infer multiple things at once with reverse mapped types
TypeScript Congress 2023

26 min
Infer multiple things at once with reverse mapped types
Top Content

Mateusz Kruzynski introduces reverse map types and demonstrates their use in transforming object types. He discusses how reverse map types can be used for inference and to provide contextual types for parameter types. He also shows how reverse map types can be used to extend an entity and bind event listeners. In the context of state machines, he explains how reverse map types can be utilized to strongly type the initial property and create hierarchical state machines. However, there are limitations to be aware of, such as inferring a single thing per object property or tuple element.
The Intent-Driven Web: How AI is Reshaping Frontend Development
TechLead Conference 2025: AI in Orgs

36 min
The Intent-Driven Web: How AI is Reshaping Frontend Development

The speaker recounts a frustrating drive-through experience on a family road trip, showcasing the challenges of AI implementation in noisy environments. Emphasis is placed on user-centric software development and the importance of strategic AI application. The discussion delves into user navigation difficulties, data collaboration hurdles, and the potential of generative UI for personalized experiences. Leveraging LLM for dynamic UI generation based on user intent is highlighted, along with its capabilities in contextual understanding and task orchestration. The use of varied prompts to enhance LLM performance and the significance of AI integration in user-centric testing are also explored.
Validating the Web: The Evolution of Form Validation
React Summit 2025

20 min
Validating the Web: The Evolution of Form Validation

Exploring the evolution of web forms from HTML2 to Web 3.0 and the crucial role of form validation in application development. The importance of form validation, challenges, and the need for better approaches. Introducing VEST as a flexible validation tool inspired by unit testing frameworks. Highlighting VEST's logic separation, asynchronous validation, and advanced features like caching. Discussing warning states, user guidance, and the impact of form validation on user experience and application success.
SPA to SSR and Everything in Between
React Summit 2025

29 min
SPA to SSR and Everything in Between

React's transformative impact, community support, and server-side evolution highlighted. Exciting developments from static site generators like Next.js and Gatsby to server-side rendering evolution, including React Fiber, Hooks, and server components. The pressure on servers in 2020 led to the announcement of server components, a complex but transformative idea. New challenges arise with weaving server and client, requiring adaptation and file organization. Evaluation of React server components' worth based on server-side needs and bundle issues. SPAs are prevalent and valued, despite the focus on client-side apps. TanStack Router offers unparalleled URL state management and type safety, enhancing SPA development. Exciting developments ahead with the DaVinci release, supported by sponsors for TAN stack's full-time commitment and core contributors.
Overcoming the Fundamental Misunderstanding About Technical Debt
TechLead Conference 2025: AI in Orgs

19 min
Overcoming the Fundamental Misunderstanding About Technical Debt

JB Rainsberger discusses the impact of technical debt, emphasizing the cost of delaying essential work and its implications on feature delivery. Reflecting on past attempts to address technical debt and the diverse interpretations of its meaning, highlighting the challenges in managing technical debt and the resulting dysfunction in teams. Exploring the true nature of technical debt as a reflection of current understanding and the ongoing risk of a mismatch between programmers and code. Managing technical debt without specialized techniques or tools, addressing distortions, and collaborating to face ongoing risks. Improving code alignment and understanding reduces future regrets. Embracing regular code realignment reduces resistance to necessary changes. Test-driven development ingrains managing technical debt in daily programming.
Why You Should Use Redux in 2024
React Summit 2024

33 min
Why You Should Use Redux in 2024
Top Content

Mark Erickson explains the history, creation, evolution, and benefits of Redux. Redux was designed to make state updates and action history maintenance easy, incorporating functional programming principles. Redux Toolkit was created to simplify Redux usage. Redux is still a valid choice for its consistent pattern and separation of state from UI. The decision to use Redux depends on the specific use case and the need for centralized state management.
Senior Isn't About Your Tech Skills
React Summit 2025

15 min
Senior Isn't About Your Tech Skills

Being senior isn't just about tech skills; continuous improvement and broadening impact are vital for growth in the tech industry. Being effective in your work means focusing on outcomes that create superpowers for others, increasing your career opportunities and impact. Delivering valuable work creates opportunities for growth and rewards in your career. Being a senior engineer evolves from task execution to leadership and team management, leading to significant career growth and financial rewards. Results on your resume matter for your next job. Leadership, not titles, defines a senior engineer's role. Senior engineers lead projects, create direction in chaos, and focus on delivering results efficiently and effectively.
Scaling React Apps with Parallelism: Patterns for Multi-Threaded UIs
React Summit 2025

18 min
Scaling React Apps with Parallelism: Patterns for Multi-Threaded UIs

Introduction to multithreading in React for smoother user experiences by utilizing web workers and off-screen canvas. Tools for breaking free from JavaScript single-threading with web workers and offscreen canvas. Smooth UI performance with web workers, limitations, and offscreen canvas for offloading graphics rendering. Design separation for preventing threading issues, offload CPU-intensive tasks to workers without DOM access limitations. Manage WebWorker communication effectively with promise-based approach for tasks. Enhance data transfer efficiency with transferable objects and shared array buffer. Decide when to use multi-threading techniques wisely; reserve workers for data processing and complex operations. Best practices include terminating workers when not needed, profile applications, and explore future front-end parallelism for optimized user experiences.
Resourceful Suspense
JSNation 2025

30 min
Resourceful Suspense
Top Content

Minko Gedev presents tradeoffs of deferred loading in Angular and React, addressing misconceptions about the frameworks. Exploring Deferred Loading Nuances and Angular vs. React Implementation with Large Language Models. Beginning with AngularJS, Transition to React, and Contribution to Angular Community. Joining Angular Team at Google, Building React App, Comparing Functionality with Angular. AI Assistance in Angular App, Using Chat Functionality with AI for Actions, Implementing Function Calling for Cart Items. Adding T-shirts to Cart Using AI, Simple Implementation and Tool Addition for AI.generate Call, Visualizing Messages and Adding Products to Cart. Speeding up Application with Lazy Loading in React and Angular, Configuring Chat Functionality. Configuring Chat Data in React, Dependency Observation in Component Tree. Async Function Issue in React, Component Data Dependency, Data Loading in Angular. Inspiration from Amazon for Lazy Loading, React and Angular Implementation, Visibility with IntersectionObservers. Adding Prefetching in Angular and Server-Side Rendering Considerations with Incremental Hydration. React and Angular Trade-offs in Templating and Framework Features. Evaluating JavaScript Frameworks and SEO Impact. Utilizing GenKit API for Function Mapping and React Component Logic Abstraction. Exploring requestIdleCallback in Safari and Signals vs. RxJS in Angular. Considering Framework Selection Criteria Beyond Popularity and Trendiness. Exploring React Features and Angular Templating in TypeScript. Disadvantages of Angular Partial Hydration and Waterfall Effects.
Short takes
Next.js Adapters: Build Once, Deploy Everywhere
React Summit 2025

7 min
Next.js Adapters: Build Once, Deploy Everywhere

Hello, React Summit. Excited to talk about Next.js adapters. Evolution towards adapter solutions to simplify deployment complexities. Minimalist adapter interface for customization and structured output handling. Key hooks and configurations for platform-specific optimizations. Partners collaboration for enhanced experiences in Next.js deployments. Simplified, platform-agnostic deployments for better developer experience.
Server Components Wars: PHP Strikes Back
React Summit 2025

6 min
Server Components Wars: PHP Strikes Back

Edoardo, a senior dev rel at Storyblok, delves into server components' intricacies, urging a better understanding. The evolution from PHP to React marked a shift in web development paradigms, emphasizing server-side rendering and dynamic client interactions. Facebook transitioned from PHP to React, introducing XHP subset. Isomorphic JavaScript and server-side rendering emerged with data requests and content rendering. React server components enable server-side rendering with data fetched from DBMS or CMS, emphasizing patterns for seamless transitions to new frameworks.
Divide and Conquer? - Exploring the 'JS0' and 'JSSugar' Proposal for JavaScript Evolution
JSNation 2025

5 min
Divide and Conquer? - Exploring the 'JS0' and 'JSSugar' Proposal for JavaScript Evolution

JS 0 and JS Sugar proposal for JavaScript evolution. Complexity abstraction to engines. Splitting language into JS0 and JSugar. Lessons learned from developers' concerns and users' preferences. Involvement in shaping JavaScript ecosystem.
Auth: Build vs Open Source vs Buy
JSNation 2025

7 min
Auth: Build vs Open Source vs Buy

Authentication is crucial for system security, with options including building, buying, or using open source. Modern security complexities are addressed by purchasing systems with enterprise-level security features. Cost considerations in authentication highlight maintenance and scaling costs, with buying solutions providing peace of mind and predictable costs.
A JS Dev's Guide to Not Dismissing Blockchain
JSNation 2025

6 min
A JS Dev's Guide to Not Dismissing Blockchain

Thanking Git Nation and Algorand team. Exploring blockchain's journey to enlightenment. Algorand's role in blockchain solutions like disintermediation, data integrity, and market access. Highlighting businesses on Algorand mainnet like TravelX, Lofty, and LabTrace. Algorand TypeScript simplifies blockchain development with real TypeScript, avoiding complex assembly language. Examples like asset transfers and key-value storage demonstrate accessibility.
Zero-Styling Development: Utopia or the Future of Frontend?
React Summit 2025

7 min
Zero-Styling Development: Utopia or the Future of Frontend?

Mateusz Jagodziński presenting on Zero Styling Development and the challenges faced with manual styling implementations, leading to the adoption of a zero styling approach for efficiency and consistency in design implementation. Workflow Builder adopts a zero-styling approach beginning with design tokens in Figma, followed by automation for CSS generation and implementation using CSS variables, ensuring easy styling changes without developer intervention.
Reimagine Frontend in the Serverless Era
React Summit 2025

8 min
Reimagine Frontend in the Serverless Era

Evangelia, tech founder of Fioromat Academy, discusses the impact of serverless technologies on frontends, emphasizing a shift towards lightweight, stateless backends split into smaller units and the increased importance of API gateways and serverless functions. The discussion also highlights the significance of optimistic state updates, caching strategies to reduce API calls, resilient connection handling with retries for failed HTTP calls, granular error handling at the component level, and custom fallback UI per component. Overall, the Talk emphasizes the evolving frontend architectures and the necessity of adapting to changes in data structures and technologies.
Define the Relationship with Monorepos
React Summit US 2024Watch video: Define the Relationship with Monorepos

6 min
Define the Relationship with Monorepos

Monorepos are single repositories containing multiple distinct projects with well-defined relationships. Relationships in code are based on distance, where code in different files is the closest relationship. By importing code from one file to another, dependencies are established, allowing for changes in one file to immediately impact the other. This enables fast iteration and development. When we separate code into packages or APIs, it increases the distance between code pieces, making it slower to understand the impact of changes. However, when multiple projects are combined in a monorepo, the relationships between them are reduced, enabling faster development. Monorepos make relationships explicit and provide tools to understand their impact. To learn more, visit monorepo.tools or nx.dev for information on managing monorepos with NX.
Building React Primitives to Power In-App Messaging
React Summit US 2024Watch video: Building React Primitives to Power In-App Messaging

8 min
Building React Primitives to Power In-App Messaging

Hi, everyone. I'm Chris, the CTO at Nock. We help product teams power user-centric cross-channel notification experiences. Today, I'll talk about extending the abilities of our in-app messaging and how you can power any kind of in-app messaging using our platform. We optimize for flexibility, customization, and a shallow learning curve. Our pre-built React components include a banner, modal, card, and notification feed. All of this comes out-of-the-box, supporting light mode and dark mode. Easily show modals and announcements with no additional code. Own the rendered components for performance and customization. Build custom components with minimal code. Use hooks for fetching data and real-time updates. Noc provides a schema for strong data integrity.
It’s Not Magic: Elevate Auth Security with PKCE Best Practices
Node Congress 2025

5 min
It’s Not Magic: Elevate Auth Security with PKCE Best Practices

The talk discusses the need to enhance auth security with Pixie Best Practices and the limitations of current standards like OAuth 2 and OpenID Connect. It introduces Pixie as an added layer of security over the authorization code flow and explains how it prevents code injection. Pixie enhances security by connecting client requests with responses from the authorization server, preventing cross-site request forgery attacks. It is recommended for public clients and will be required for all clients in the upcoming OAuth 2.1 spec. The talk also highlights the benefits of Pixie for enhancing security in web apps. Learn more about Pixie and best practices at FusionAuth, where Kim Meida, Senior Director of Developer Relations, provides developer-first auth and auth APIs.
Popular
Build a 3D Solar System with Hand Recognition and Three.js
JSNation 2022

36 min
Build a 3D Solar System with Hand Recognition and Three.js
Top Content

This Talk explores the use of TypeScript, 3JS, hand recognition, and TensorFlow.js to create 3D experiences on the web. It covers topics such as rendering 3D objects, adding lights and objects, hand tracking, and creating interactive gestures. The speaker demonstrates how to build a cube and a bouncy box, move objects with flick gestures, and create a solar system with stars and planets. The Talk also discusses the possibilities of using hand gestures for web navigation and controlling websites, as well as the performance limits of these technologies.
Handling Breaking Changes in GraphQL
GraphQL Galaxy 2022

22 min
Handling Breaking Changes in GraphQL
Top Content

This Talk discusses handling breaking changes in a GraphQL schema, including the use of the deprecated directive to tag fields that should no longer be used. It also covers the process of deploying GraphQL APIs and mobile apps, highlighting the challenges of mobile app release adoption. The Talk emphasizes the importance of making safe upgrades in mobile apps and provides strategies for detecting and handling breaking changes, such as using TypeScript and GraphQL Inspector. Overall, the Talk emphasizes the need to minimize user impact when introducing breaking changes in GraphQL schemas.
React Concurrency, Explained
React Summit 2023Watch video: React Concurrency, Explained

23 min
React Concurrency, Explained
Top Content

React 18's concurrent rendering, specifically the useTransition hook, optimizes app performance by allowing non-urgent updates to be processed without freezing the UI. However, there are drawbacks such as longer processing time for non-urgent updates and increased CPU usage. The useTransition hook works similarly to throttling or bouncing, making it useful for addressing performance issues caused by multiple small components. Libraries like React Query may require the use of alternative APIs to handle urgent and non-urgent updates effectively.
Building Better Websites with Remix
React Summit Remote Edition 2021

33 min
Building Better Websites with Remix
Top Content

Remix is a web framework built on React Router that focuses on web fundamentals, accessibility, performance, and flexibility. It delivers real HTML and SEO benefits, and allows for automatic updating of meta tags and styles. It provides features like login functionality, session management, and error handling. Remix is a server-rendered framework that can enhance sites with JavaScript but doesn't require it for basic functionality. It aims to create quality HTML-driven documents and is flexible for use with different web technologies and stacks.
Remix Architecture Patterns
Remix Conf Europe 2022

23 min
Remix Architecture Patterns
Top Content

This Talk introduces the Remix architecture patterns for web applications, with over 50% of participants using Remix professionally. The migration from single page applications to Remix involves step-by-step refactoring and offers flexibility in deployment options. Scalability can be achieved by distributing the database layer and implementing application caching. The backend for frontend pattern simplifies data fetching, and Remix provides real-time capabilities for collaborative features through WebSocket servers and Server-SendEvents.
Building Multiplayer Applications with Cloudflare Workers & Durable Objects
Node Congress 2023

27 min
Building Multiplayer Applications with Cloudflare Workers & Durable Objects
Top Content

Durable Objects are a part of CloudFlare's long-term goal to expand application possibilities on workers, allowing for the building of scalable collaborative applications. Durable Objects provide a way to store global state and coordinate multi-client applications. They can be created as close to the user as possible and have unique IDs for routing requests. Durable Objects have a persistent storage API with strongly consistent semantics and IO gates to prevent correctness errors. They are well-suited for collaborative applications and can be used with WebSockets. Performance impact and read replicas are considerations for accessing Durable Objects globally.
Unreal Engine in WebAssembly/WebGPU
JS GameDev Summit 2022

33 min
Unreal Engine in WebAssembly/WebGPU
Top Content

Alex Saint-Louis, co-founder of Wunder Interactive, shares the mission of bringing Unreal Engine to the browser, enabling cross-platform 3D applications and games. They are working on a WebGPU back end for Unreal Engine to push the limits of 3D on the web. Wunder Interactive has improved compression, built their own asset file system, and offers powerful tools for game developers. They are utilizing modern web technologies like WebAssembly, WebGL, and WebGPU, and plan to support other engines like Unity and Godot. The team aims to transform the industry by bringing console-quality games to the browser and providing an alternative distribution path. They are excited to bring Unreal Engine 5 to the web with WebGPU support and are working on WebXR support for cross-platform 3D experiences, including VR.
Advanced Patterns for API Management in Large-Scale React Applications
React Advanced 2021

20 min
Advanced Patterns for API Management in Large-Scale React Applications
Top Content

This Talk covers advanced patterns for API management in large-scale React applications. It introduces the concept of an API layer to manage API requests in a more organized and maintainable way. The benefits of using an API layer include improved maintainability, scalability, flexibility, and code reusability. The Talk also explores how to handle API states and statuses in React, and provides examples of canceling requests with Axios and React Query. Additionally, it explains how to use the API layer with React Query for simplified API management.
Everything Beyond State Management in Stores with Pinia
Vue.js London Live 2021

34 min
Everything Beyond State Management in Stores with Pinia
Top Content

State management is not limited to complex applications and transitioning to a store offers significant benefits. Pinia is a centralized state management solution compatible with Vue 2 and Vue 3, providing advanced devtools support and extensibility with plugins. The core API of Pinia is similar to Vuex, but with a less verbose version of stores and powerful plugins. Pinia allows for easy state inspection, error handling, and testing. It is recommended to create one file per store for better organization and Pinia offers a more efficient performance compared to V-rex.
Modern Web Debugging
JSNation 2023

29 min
Modern Web Debugging
Top Content

This Talk discusses modern web debugging and the latest updates in Chrome DevTools. It highlights new features that help pinpoint issues quicker, improved file visibility and source mapping, and ignoring and configuring files. The Breakpoints panel in DevTools has been redesigned for easier access and management. The Talk also covers the challenges of debugging with source maps and the efforts to standardize the source map format. Lastly, it provides tips for improving productivity with DevTools and emphasizes the importance of reporting bugs and using source maps for debugging production code.
JavaScript
10 Years of Best of JS
JSNation 2025

28 min
10 Years of Best of JS

Michael discusses the evolution of JavaScript from its early days to modern server-side capabilities, the impact of jQuery, Node.js, and single-page applications with popular libraries like Backbone and AngularJS. The emergence of UI libraries like React, Vue.js, and Angular, alongside meta frameworks like Next.js, Remix, Veltkit, and Solid with server components. The Best of JS project tracks JavaScript project trends, filters out deprecated projects, and monitors GitHub stars for maintenance. The importance of maintaining project relevance, adding new projects continuously, and classifying projects under meaningful tags. The evolution of TypeScript, tool releases like Deno and Burn, styling evolution from CSS to headless components, and the impact of Tailwind CSS. Analysis of CSS optimization, CLI ecosystem, tooling trends, emerging tools, and JavaScript development trends over the past decade.
Temporal: Modern Dates and Times in JavaScript
JSNation US 2024

22 min
Temporal: Modern Dates and Times in JavaScript

I'll speak today about the Temporal proposal, which adds modern date and time handling to JavaScript. Temporal is an API that'll be available in browsers soon and will add a built-in library for dates and times, avoiding the need for external libraries like Moment. It offers strong typing with different types for different data, such as calendar dates with or without time. Temporal objects are immutable and designed to work with JavaScript's internationalization facilities. It addresses deficiencies in the global Date object and introduces types like instant and plain types for accurate representation of time and dates across time zones. With the old Date, representing a date without a time can be problematic, especially in time zones where midnight is skipped due to daylight saving time. Temporal introduces types like PlainDate, PlainTime, PlainYearMonth, PlainMonthDay, and ZonedDateTime to accurately represent different scenarios. Additionally, there is a type called Duration for arithmetic operations and unit conversion. Now that I've introduced you to the cast of characters in Temporal, it's time to show how to accomplish a programming task. We'll start with an easy task: getting the current time as a timestamp in milliseconds using the instant type. To convert between Temporal types, you can either drop or add information. The toZonedDateTime method is used for conversion and requires adding a time zone and a time. Although Temporal objects are immutable, you can create new objects with replaced components using the with method. Migrating from the old Date object to Temporal offers a more reliable solution and avoids potential bugs. Check out the documentation for more details and enjoy using Temporal in your codebase!
Temporal: The Curious Incident of the Wrong Nighttime
JSNation 2025

25 min
Temporal: The Curious Incident of the Wrong Nighttime

Speaker's involvement in Temporal proposal and TC39 meetings for JavaScript standardization. Date conversion challenges faced in development. Addressing time zone discrepancies with Temporal to prevent bugs. Exploration of Temporal types and design philosophy. Usage of Java's time zone serialization in JavaScript Temporal. Challenges in implementing Temporal proposal and its transformative potential in ECMAScript.
React
Our Own React Global State Manager in Less Than 50 Lines of Code
React Summit 2025

26 min
Our Own React Global State Manager in Less Than 50 Lines of Code

Speaker delves into global state management in React, mentioning Redux and alternatives like React context. Creating a global state manager in under 50 lines of code with React context, highlighting challenges with performance and React specificity. Building a custom hook named user store for state management, implementing state and API for store, handling partial state updates efficiently. Managing listeners for state changes, setting up custom hooks and selectors, and subscribing to external stores. Demonstrating optimization in state management and preventing unnecessary button re-renders. Discussion on Redux, Signals, debugging, and various global state management choices like Zestand and Redux toolkit.
Let's Build Suspense 🥁
React Summit US 2024

20 min
Let's Build Suspense 🥁

Hi, my name is Julian and I am super excited to be speaking at React Summit this year. Today, I will be talking about Suspense on the server and its importance in React server components. React server components allow us to differentiate between static and dynamic components, improving performance and user experience. Suspense improves performance by introducing streaming and out-of-order streaming. We can implement suspense on the server by creating a suspended object to store the suspended children and swapping out the loading state for the actual content using custom elements. Multiple suspense boundaries can be used to render individual loading states for different sections, improving the user experience.
Evaluating React Application Performance with a Sip of RUM
React Day Berlin 2024

10 min
Evaluating React Application Performance with a Sip of RUM

Hello, everybody. How are we all doing? I'm going to talk about Rome, OpenTelemetry, and identifying performance bottlenecks and issues in React applications. The pillars of observability are logs and metrics. Logs are structured messages that warn, indicate, or error. Metrics include throughput, latency, custom and core web vitals. Traces allow us to see through the pathway of our application and identify bottlenecks. One common open standard for collecting these signals is open telemetry. React's client instrumentation is experimental and mostly unspecified. The open telemetry demo provides an example of front-end tracing in React, giving you a unique service name and basic metrics. The demo shows an HTTP POST request with the pathway and timing. The open telemetry project is still working on core web vital metrics and other enhancements. Real user monitoring (RUM) fills the gaps in open telemetry, capturing missing information. In conclusion, we discussed the importance of capturing logs, metrics, and traces and provided resources for further exploration.
The State of React
React Summit 2025

26 min
The State of React

Introduction to the State of React survey and the history of developer surveys. Detailed analysis of survey results, user demographics, and job titles. Examination of React API trends, user sentiment towards APIs, and new API challenges. Analysis of React library satisfaction, particularly with Next.js. Discussion on React state management and data loading, including pain points. Insights on React library usage patterns and application trends. Key takeaways include staying calm, appreciating foundational React elements, and relying on data for a balanced view.
Build AI Apps in 5 Minutes: Live Demo With Vercel AI Sdk, v0.dev, and Rag!
React Summit US 2024

12 min
Build AI Apps in 5 Minutes: Live Demo With Vercel AI Sdk, v0.dev, and Rag!

I'm doing a quick lightning talk today, talking about saying no to boilerplate and teaching you how to build an AI app in just minutes. We're going to talk about RAG, v0, fine-tuning for sales AI to SDK, and then talk a little bit about Entity Resolution and your AI toolkit. RAG is a hot topic in chatbot development and allows for creating chatbots with a deeper understanding of specific use cases. Rag offers a versatile AISDK that allows for easy model switching, augmentation, and fine-tuning. Entity resolution is important for resolving entities across multiple points of data, with use cases in personalized marketing, healthcare, and fraud detection.
React Query - The Bad Parts
React Day Berlin 2024

30 min
React Query - The Bad Parts
Top Content

React Query is a popular library with significant weekly downloads and positive user sentiment. It may have trade-offs like bundle size, but the actual size shipped is smaller. Bundle size optimization can be achieved by exporting only necessary features. React Query's declarative approach eliminates the need for custom data fetching solutions. It offers caching, request duplication, background updates, and more. RackQuery doesn't support normalized caching, but refetching after invalidation works fine. React's vision includes suspense architecture and server components. The documentation could be improved with a more structured flow. TensorStack Query can be a good choice for Next.js apps, but not necessary with mature frameworks. The 10 stack query and router concepts were discussed. Combining React Query with HTTP caching provides a robust caching solution.
If You Were a React Compiler
React Summit US 2024

26 min
If You Were a React Compiler
Top Content

In this talk, the speaker aims to build an accurate understanding of how the new React compiler works, focusing on minimizing re-renders and improving performance. They discuss the concept of memoization and how it can be used to optimize React applications by storing the results of function calls. The React compiler automates this process by analyzing code, checking dependencies, and transpiling JSX. The speaker emphasizes the importance of being aware of memory concerns when using memoization and explains how the React compiler detects changes in function closure values. They also mention the Fibre Tree, which drives the reconciliation process and helps optimize performance in React. Additionally, the speaker touches on JSX transpilation, compiler caching, and the generation of code. They encourage developers to understand the code generated by the compiler to optimize specific sections as needed.
Panel Discussion: The State of React
React Summit 2025








35 min
Panel Discussion: The State of React








7 authors
Panelists introduced themselves and discussed React Server Components (RSCs), exploring usage in production and alternative frameworks. Challenges of adopting RSCs and benefits of universal data fetching were highlighted. The complexities of implementing RSCs were discussed, emphasizing the need for better integration. The potential of server components for composability and evolving architecture was explored. The React compiler's impact on performance optimization and component re-rendering was examined. Discussions included enhancing React with compiler features, evolving feature sets, and reimagining state management. Improvements in communication, community engagement, and dependency management within the React ecosystem were emphasized. Recommendations for managing dependencies, component performance, and audience appreciation were shared.
Scaling React Performance: From Basic to Advanced Code-Splitting Techniques
React Advanced 2024

12 min
Scaling React Performance: From Basic to Advanced Code-Splitting Techniques

I'm Gil, a performance architect at Wix. Today, I'll explain how we use code splitting to improve website performance. Code splitting breaks down JavaScript into smaller chunks or React components, loading them only when needed. This reduces JavaScript size and improves user experience. We measure performance using Core Web Vitals, focusing on INP scores, which evaluate interactivity. Reducing JavaScript improves INP. Our INP scores have significantly improved, thanks to our code splitting techniques. Let's dive into the code splitting strategies we use, starting with dynamic import and React Lazy. Let's move on to a more advanced example: conditionally loading components on page load, not on user interactions. We fetch the comments data and render the comment section only if there are any comments. This method is supported in React 18 and works for server-side rendering (SSR). React components can be loaded dynamically on scroll or hover interactions with suspense. If the components are already rendered with SSR, we just need to download and hydrate them. This is only possible with the new suspense in server-side rendering (SSR). We use react-lazy with dynamic imports to render the component when it enters the viewport. I created a download on viewport wrapper that creates a ref and uses the intersection observer to resolve a promise when the component enters the viewport. I use the viewport and a wrapper that calls a function called use, which is implemented using the suspense API from React. This function is used to manage the promise and render the components only after it's resolved. The suspense component handles this promise. We moved props calculation to the server side and fetched them in the React component. This approach simplifies the process and can be implemented using the dynamic API in Next.js. By conditionally rendering components and calculating props on the server side, we can significantly reduce the amount of JavaScript code loaded in the client side, resulting in improved performance.
Everything You Thought You Knew About React Functional Components Is Wrong
React Summit US 2024

22 min
Everything You Thought You Knew About React Functional Components Is Wrong

Thank you for coming to React Summit! I wanted to create clarity around React Hooks and provide tools for troubleshooting React issues. Functional components in React are different from class components in terms of their lifecycle. Understanding the creation and destruction of objects in JavaScript is crucial to comprehend the behavior of functional components. Creating functions and objects that are not used can lead to memory waste and system resource consumption. Storing references to variables can keep them in memory, so it's crucial to ensure there is a direct path from window to the variable. This talk discusses creating objects and storing them in React components using useState and useMemo. It emphasizes the importance of using useCallback in cases where a callback is going into a component with a large state tree to avoid unnecessary renders. The talk also explores different approaches to handling data retrieval and update in React components, highlighting the use of useRef as a solution to access and update data in server-side data sources. Overall, the talk provides insights and tools for troubleshooting issues in React functional components.
Node.js
What's in a Node.js Bug – A Case Study
Node Congress 2025

23 min
What's in a Node.js Bug – A Case Study

I'm going to talk about character encodings, specifically a Node.js bug related to UTF-8. Two popular encodings are UTF8 and UTF16. The bug was discovered in August 2024 and was traced to a specific pull request in the Node.js core repository. The bug is caused by an incorrect implementation of the fast write string method. Lessons learned include the importance of naming conventions and thorough testing beyond coverage analysis.
Make Hono work on Node.js
Node Congress 2025

15 min
Make Hono work on Node.js

Today's Talk is about making Hono work on Node.js. Hono is a backend for web frameworks that supports TypeScript. It started as a Cloudflare workers framework and now supports multiple runtimes. The Node.js adapter allows Hono applications to run in Node.js by converting Node.js APIs into web standard APIs. Benchmark tests show that Hono is faster than Express but slower in some core areas. The Node.js adapter has been widely used and has undergone performance improvements. Overall, adding Node.js support to Hono has been successful in reaching more users and improving quality.
What We All Pretend to Know: The Differences Between the JS Engine & JS Runtime
JSNation 2025



11 min
What We All Pretend to Know: The Differences Between the JS Engine & JS Runtime



2 authors
The talk delves into the intricacies of JavaScript engine and runtime, emphasizing the importance of understanding execution processes for effective development and debugging. It discusses how JavaScript engines optimize code through parsing, abstract syntax trees, and byte code execution. Strategies for optimizing code include maintaining type stability, using type-stable arrays, and consistent object shapes to avoid deoptimization. Recommendations for enhancing JavaScript execution involve ensuring input type consistency, using type-stable arrays, and understanding the event loop's role in code execution across different runtimes and engines.
The Alleged ‘End’ of Node.js Is Much Ado About Nothing
Node Congress 2025

26 min
The Alleged ‘End’ of Node.js Is Much Ado About Nothing

Hello, welcome to Node Congress 2025. Node is not dead and will remain popular for a long time. Node has a large number of downloads across different platforms. Despite known vulnerabilities, older versions of Node are still widely used. Node.js is an active and thriving project with a strong focus on security. Recent updates have introduced new features and improvements, including ESM support, stable threads, and web platform compatibility. Node is governed by the OpenJS Foundation and maintained by collaborators. Consensus-seeking is important for the project's development. Start contributing and be part of the future of Node.js.
The State of Node.js 2025
JSNation 2025

30 min
The State of Node.js 2025

The speaker covers a wide range of topics related to Node.js, including its resilience, popularity, and significance in the tech ecosystem. They discuss Node.js version support, organization activity, development updates, enhancements, and security updates. Node.js relies heavily on volunteers for governance and contribution. The speaker introduces an application server for Node.js enabling PHP integration. Insights are shared on Node.js downloads, infrastructure challenges, software maintenance, and the importance of update schedules for security.
The Path to Native TypeScript
Node Congress 2025

24 min
The Path to Native TypeScript

Today's Talk discusses the integration of TypeScript in Node.js. The path to native TypeScript in Node.js is explored, including the history of user requests for native support. Implementing TypeScript in Node.js poses challenges due to differences in stability guarantees and tool compatibility. TypeStripping is a transpilation-focused implementation that removes non-JavaScript features, making it stable across TypeScript versions. The Amaro package, built on SWC, provides compatibility and speed for type stripping. Experimental Strip Types and Transform Types flags enable erasable TypeScript features. TypeScript has limitations such as namespace and enum support in JavaScript and code migration issues. TypeScript Import Types and Syntax Detection are ongoing developments. Ambiguity in syntax between JavaScript and TypeScript is addressed with an erasable syntax only flag. Future steps include bug fixing, performance improvements, and upcoming Node.js releases.
NodeJS & AI: Building Smarter Applications
Node Congress 2025

19 min
NodeJS & AI: Building Smarter Applications

Today's Talk explored combining Node.js and artificial intelligence to build smart applications. Two types of models, closed and open source, were discussed, with closed models accessed via an API and open source models hosted locally or on the cloud. The use of RAC (Retrieve of Method Generation) to enhance models was explained, along with the process of obtaining data and improving retrieval performance. Chunking, embedding, and vector databases were introduced as techniques for organizing and transforming data. The Talk also covered data retrieval using semantic search and the generation of human-readable answers using models. The concept of enhancing models with agents was discussed, focusing on how agents break down complex goals and utilize external functions. The use of tools and the React pattern in implementing agents was highlighted. Lastly, the Talk touched on implementing agent patterns and enhancing LLMs, with demos and code available for further exploration.
Running Java in Node.js with WebAssembly
Node Congress 2025

19 min
Running Java in Node.js with WebAssembly

Hello, everyone. Welcome to my talk on running Java in Node.js with WebAssembly. Many organisations have a lot of Java code, and as they adopt newer technologies such as Node.js or CloudFloat workers, maintaining interoperability with this existing code becomes important. WebAssembly is a stack machine-based thing, like the JVM, but with a different instruction set. It improves over Asm.js with a new binary format and supports streaming compilation, SIMD, and 64-bit integers. Compiling Java code to WebAssembly involves converting JVM instructions, handling local slots, recovering if statements, and understanding control flow. Short circuit conditionals and loops are important to consider in the conversion process. Additionally, memory allocation, object creation, and program memory are key concepts. Overall, this talk explores the challenges and techniques involved in running Java in Node.js with WebAssembly.
Speeding Up Your Node Sever With Rust
JSNation 2025

21 min
Speeding Up Your Node Sever With Rust

Talk on improving Node server efficiency with Rust. Node's ease of use but inefficiency for some tasks. Example of a slow express server handling high scores inefficiently. Native modules in Rust provide a safer alternative to C for improving efficiency. Rust empowers developers to build reliable and efficient software, with strong static typing and immutability by default. Rust's result and option enums handle error and value absence cases. The ownership system in Rust ensures safe memory management without manual intervention. The importance of ownership in Rust for memory management and error prevention. Writing native modules in Rust with NAPI for easier project creation and code integration. Exploring the efficiency gains of using Rust's native modules for faster performance and reduced risks in development.
Run TypeScript Natively in Node.js
JSNation 2025

28 min
Run TypeScript Natively in Node.js

Discussion on TypeScript adoption in Node.js, typescript's popularity, challenges in integrating TypeScript with Node.js due to versioning differences, introducing strip types to remove non-JavaScript syntax, leveraging the SWC library through Amaro for efficient code execution, Node.js support for TypeScript with experimental strip types, enabling transform types and source maps by default, TypeScript evolution with new flags for type checking, TypeScript ESM code evaluation in Node, issues with TypeScript and JavaScript syntax ambiguity, collaboration between Node.js and TypeScript teams, recommendations on using TypeStripping for production projects, comparison of performance between TS Node and Node for TypeScripting, handling type definitions and runtime checking in TypeScript using Zod.
Testing
Testing the Waters With Deno
JSNation 2025

24 min
Testing the Waters With Deno

Today's discussion delves into testing in Deno, emphasizing its simplicity and built-in tooling. Deno offers a seamless testing experience for developers, allowing tests to be written in TypeScript without extensive setup. The platform supports BDD-style testing, provides various assertion types, advanced features like code coverage and snapshot testing, and allows for filtering tests based on keywords. Additionally, Deno facilitates component testing, dependency mocking, and migration of test suites from Jest to Deno with minimal changes.
Accessibility Granted: Building Inclusive Components One Test at a Time
React Summit US 2024Watch video: Accessibility Granted: Building Inclusive Components One Test at a Time

18 min
Accessibility Granted: Building Inclusive Components One Test at a Time

At Evinced, the mission is to make the web more accessible for everyone. Accessibility issues are common despite intentions. Today's Talk focuses on coding in an accessible way using TDD to catch defects early. Unit tests can be written to ensure accessibility requirements are met. Testing Library provides utilities for testing accessibility. The ATDD approach allows continuous creation of tests for compliance. Unit testing is valuable for complex components. Advanced has developed an SDK called the Unit Tester for automating accessibility tests.
Advanced Playwright Techniques for Flawless Testing
JSNation US 2024

20 min
Advanced Playwright Techniques for Flawless Testing

Hi, everyone. My name is Debbie O'Brien, Principal Technical PM at Microsoft. I'm focusing on Playwright, a reliable end-to-end testing tool for modern web apps. It works on any browser and platform, has powerful tooling, and tests run fast. Advanced techniques include UI mode, HTML reports, and trace viewer. Use annotations in Playwright to enhance reporting and test organization. Mocking API responses and external links is possible with Playwright. You can also test date and time by setting a fixed fake time. Playwright offers CLI test options and has a vibrant community. Join the Playwright Discord server and follow the important docs and YouTube channel for more information.
Beyond React Testing Library: Testing React Libraries (and library-like code)
React Advanced 2024

33 min
Beyond React Testing Library: Testing React Libraries (and library-like code)

Today's talk is called Beyond Testing Library, Testing React Libraries and Library-like Code. The speaker, Lenz Liebertronik, discusses the special requirements for testing libraries, including minimizing re-renders, avoiding tearing, and rendering components granularly. They highlight scenarios where React Testing Library falls short and introduce the Testing Library React render stream as a solution. The speaker demonstrates how to test hooks, multiple hooks, and assert re-renders using different techniques. They caution about potential issues with React upgrades, test-only components, ACT batching, and Suspense boundaries. The speaker shares real-world usage of the render stream library and discusses the limitations of correlating renders with DOM commits. They emphasize the importance of testing libraries and gradually optimizing code. They also mention the benefits of using the testing library and conclude with gratitude and a Dutch lesson.
Validating the Web: The Evolution of Form Validation
React Summit 2025

20 min
Validating the Web: The Evolution of Form Validation

Exploring the evolution of web forms from HTML2 to Web 3.0 and the crucial role of form validation in application development. The importance of form validation, challenges, and the need for better approaches. Introducing VEST as a flexible validation tool inspired by unit testing frameworks. Highlighting VEST's logic separation, asynchronous validation, and advanced features like caching. Discussing warning states, user guidance, and the impact of form validation on user experience and application success.
Inside the Engine: How Modern JS Test Runners Work and the Traps They Hide
Node Congress 2025

22 min
Inside the Engine: How Modern JS Test Runners Work and the Traps They Hide

Hello, I'm grateful that you chose to watch my talk. Thank you. Last week, I had to run some unit tests while I was coding. Business performance can be awesome. It has very interesting and outstanding features. These test sets are overly complex. It's easy to find yourself troubleshooting for hours. VTest has almost 200 configuration options. By explaining how things work, we can answer questions about using complex third-party runners versus the built-in node.js runner. Understanding better helps avoid pitfalls, troubleshoot faster, and identify opportunities for configuring things better. The CLI layer does validation and hands over to the VTest class. It searches for test files, runs them efficiently using a pool of workers, and ensures isolation to prevent issues with dirty state. VTest uses the piscina library to facilitate work with multiple workers and improve performance. The workers prepare by setting the right globals, initializing snapshots, deciding the test runner file, and starting coverage collection. Each worker executes all the tests in a file and sends an RPC message when done. The decision to reuse or create a fresh worker is determined by the isolate configuration option. Consider spreading tests among more files to fully utilize the machine. Choose between process, thread, or VM as the worker type. In terms of isolation, you can choose between using a process, a thread, or a VM. Process is the heaviest in terms of performance cost, while thread is lighter. VM performance depends on known slower aspects like accessing globals. Process is the classic choice for stability, but thread has limitations and known issues. VM has reporting issues with memory leaks. Benchmark results showed that using multiple processes was 50% better for real-world applications, but for unit tests, one process was ten times faster. Thread was slightly faster than process, and VM was slower. The price of isolation with process worker types was approximately three minutes. Without isolation, the tests lasted only two minutes, much faster, but with a few failures. Threads showed similar results with a few failures. The risk of dealing with testing issues increases without isolation. By default, tests run sequentially inside workers, but you can configure them to run in parallel using the 'concurrent' keyword. However, tests still run sequentially despite specifying 'concurrent'. Concurrency in VTest is based on promises and requires asynchronous work. Unit tests run sequentially and concurrency has no isolation. Mocking in one test affects other tests running simultaneously. In choosing worker configurations, it depends on the context. In-file concurrency is best avoided, and the process worker type is recommended as the default. Isolation is crucial in integration tests but not mandatory in unit tests. Inside the worker, a TypeScript file is handled, and failures can occur when mocking functions. Mocking doesn't work in the worker. The worker handles TypeScript files and transpiles them using Vite server. Vite server replaces imports and hoists the mocking. Vite introduces a new module loader in the runtime. Vite hoisted the mock to the first line in the transform code to make it before the import. Additionally, Vite changes mocks to dynamic imports, ensuring that mocking works. Vite intercepts function calls on the file import level, but cannot intercept calls between functions in the same file. Moving function two to a different file or using an object export can solve this issue. Function one calls function two on the same object context. Use Spy to replace functions inside the object. Vite offers a range of plugins for different functionalities. You can fix import issues by customizing Vite's runtime. The Vite server handles dependency resolution and transformation. Consider using the built-in test runner or mockup for small-scale testing. Gain a better testing experience with Vite's customized runtime.
At the Top of the Pyramid: Playwright Testing at Scale
React Summit 2025

25 min
At the Top of the Pyramid: Playwright Testing at Scale

Introduction to Playwright as an end-to-end testing tool with easy installation and code generation. Features include visual comparisons, API testing, and best-in-class developer experience. Playwright offers AI capabilities, practical testing tools, and innovative testing strategies. Challenges in testing specialized domains are addressed, along with best practices for test dependencies and readability. Optimizing testing efficiency through parallelism, code organization, and network cache usage. The discussion also covers test performance enhancement, managing workers, optimizing dependencies, stability of test functions, and the use of Playwright sharding in CI/CD runs.
AI-Powered E2E UI Testing: Faster Creation, Easier Maintenance
JSNation US 2024

10 min
AI-Powered E2E UI Testing: Faster Creation, Easier Maintenance

Hello, everyone. Today we are going to explore AI-powered end-to-end testing. Unlike unit tests, UI testing has a huge layer of obstructions between the source code and the rendered UI. The source code includes HTML, CSS, and TypeScript, which are transpiled into JavaScript and bundled with tools like Webpack. AI can generate tests effectively for standard websites or blogs, but it may struggle with niche applications behind strict authorization or on-premise tools. AI-powered end-to-end testing for complex scenarios requires our guidance. We use meaningful data test IDs and follow the page objects model pattern. Additionally, we rely on useful tools like the end-to-end test helper in-browser extension and the continue IDE extension. Now, let's proceed to the demo, where we will create tests for the Pokemon application, including the ability to filter by name or type. We will navigate to the Pokemon details page and use our extension to manage settings and prompts. Additionally, we will create the details page object together and generate the test file. The Pokemon details page has 105 elements. We can view the elements for debugging purposes, including page object name, Pokemon details page, and system message. We will copy the page object and save it to a file. We need to make it exportable. Then, we will use the extension to create an end-to-end test and pass the context. I will use all the open files, including the page objects and the test case itself. I will send them to EI along with the predefined prompt. There is a system message and additional information we need to be aware of. The test runs successfully, and that concludes this part.
Twenty Years of Web Testing: From Selenium's Dawn to Vitest's Promise
JSNation US 2024Watch video: Twenty Years of Web Testing: From Selenium's Dawn to Vitest's Promise

22 min
Twenty Years of Web Testing: From Selenium's Dawn to Vitest's Promise

My goal with this talk was to answer the question of why we have another test runner. The talk breaks down the history of web testing into three chunks: the click-through era, browser war one, and browser war two. It discusses the motivations behind browser test runners and node test runners, highlighting Karma as the first node-based runner that gained popularity. The rise of node-based test runners like Ava, Tape, Mocha, and Jest is attributed to their stability and ease of use compared to Karma. Jest faced challenges with module loading and transpiling, but its non-opinionated abstraction made it a suitable choice. The shift towards environment-aware runners like VTest allows for safer testing and aligns with the need for transpilation across different environments. Lastly, the talk touches on the future of test tooling and the implications of AI on testing.
The 2025 State of JavaScript Testing
JSNation 2025

24 min
The 2025 State of JavaScript Testing

The talk delves into JavaScript testing challenges, company testing practices diversity, and the evolution of testing tools. It explores the transition to user-centric testing, browser-based component testing, and advancements in AI testing tools. The evolving landscape includes Playwright's features and comprehensive testing solutions. Future trends discuss network mocking, AI testing advancements, and the role of AI in JavaScript testing practices.
Upcoming events
Subscribe to the top JS conferences
and grow in-depth as engineer with insights from library authors and core teams
Learn more