juri.dev / articles

Writing

Some of the pieces that evolved from my notes and made it into a proper article or blog post.

A Visual Feedback Loop for Electron Apps with Claude Code
ElectronClaude Codetooling
Mar 6
Agentic Experience Is the New Developer Experience ↗ nx.dev
nxaicli
Mar 5
A Monorepo Is NOT a Monolith ↗ nx.dev
nxmonorepocontent
Feb 24
Why Monorepos are King in the Age of AI ↗ nx.dev
webinar
Feb 18
CL - article - Teach Your AI Agent How to Work in a Monorepo ↗ nx.dev
Feb 12
End to End Autonomous AI Agent Workflows with Nx ↗ nx.dev
nxself-healing
Feb 3
Autonomous Agents at Scale ↗ nx.dev
Jan 21
Scaling 700+ Projects: How Nx Became a 'No-Brainer' for Caseware ↗ nx.dev
customer story
Jan 16
Configure Tailwind v4 with Angular in an Nx Monorepo ↗ nx.dev
nxtailwindangular
Jan 14
Watch and Rebuild Storybook Dependencies with Nx ↗ nx.dev
nx
Oct 29
Book - React for Enterprise: Timeless Architecture for Enterprise Apps ↗ nx.dev
nxreactenterprise
Oct 28
What's New in Nx Self-Healing CI ↗ nx.dev
nxnx-cloudself-healing
Oct 14
S1ngularity - What Happened, How We Responded, What We Learned ↗ nx.dev
Nx
Sep 5
UKG Unifies Their Codebase and Eliminates CI Overhead to Focus on Customer Value ↗ nx.dev
customer story
Aug 12
How Git Worktrees Changed My AI Agent Workflow ↗ nx.dev
gitai
Aug 7
From 5 Days to 20 Minutes: How PayFit Accelerated Time to Market with Strategic Nx Implementation ↗ nx.dev
customer story
Jul 24
Analyze Your Nx Cloud Runs With Your AI Assistant ↗ nx.dev
nxnx-cloudai
Jun 25
Introducing Self-Healing CI for Nx and Nx Cloud ↗ nx.dev
nxnx-cloudai
Jun 23
Configure Tailwind 4 with Vite in an NPM Workspace: The Complete Guide ↗ nx.dev
nxtailwindvite
Jun 19
Your AI Assistant Can Now Read Your Terminal: Real-Time Development Error Fixing ↗ nx.dev
May 28
Combining Predictability and Intelligence With Nx Generators and AI ↗ nx.dev
May 13
Save Time: Connecting Your Editor, CI and LLMs ↗ nx.dev
nxnx-consoleai
May 1
Nx MCP Now Available for VS Code Copilot ↗ nx.dev
nxnx-consoleai
Apr 15
Vibe Exploring a Codebase with LLMs ↗ nx.dev
nxnx-consoleai
Apr 10
Angular Architecture Guide To Building Maintainable Applications at Scale ↗ nx.dev
key/angularkey/architecture
Mar 18
Making Cursor Smarter with an MCP Server For Nx Monorepos ↗ nx.dev
nxai
Mar 6
React Development for 2025 ↗ nx.dev
webinar
Feb 26
Nx Just Made Your LLM Way Smarter ↗ nx.dev
nxai
Feb 17
Hetzner Cloud gets More Features to Market with Faster, More Reliable CI ↗ nx.dev
customer story
Feb 6
A New Nx Experience for TypeScript Monorepos and Beyond ↗ nx.dev
Nx
Jan 29
Managing TypeScript Packages in Monorepos ↗ nx.dev
typescriptmonoreponx
Jan 28
Nx Highlights 2024 ↗ nx.dev
Dec 22
Avoiding Port Conflicts with Multiple Storybook Instances ↗ nx.dev
nx
Dec 18
Introducing Nx Powerpack ↗ nx.dev
nxrelease
Sep 25
New Table Log View on CI with Nx Cloud ↗ nx.dev
Aug 28
Monorepos and CI can be a Mess - Here's How Nx and Nx Cloud Fixed It ↗ nx.dev
webinar
Jun 26
Versioning and Releasing Packages in a Monorepo ↗ nx.dev
nxnx-cloudreleases
Feb 9
What if Nx Plugins Were More Like VSCode Extensions ↗ nx.dev
nxreleases
Feb 5
Monorepos: the Benefits, Challenges, and Importance of Tooling Support ↗ nx.dev
webinar
Jan 24
Nx — Highlights of 2023 ↗ nx.dev
nxnx-cloud
Dec 28
Nx 17 has Landed ↗ nx.dev
nxrelease
Oct 20
Nx Conf 2023 - Recap ↗ nx.dev
Oct 12
Evergreen Tooling — More than Just CodeMods ↗ nx.dev
nx
Jul 26
Nx Cloud 3.0 — Faster Cache, More Powerful DTE, Better Ergonomics ↗ nx.dev
nxnx-cloud
Apr 19
Rspack — Getting up to speed with Nx ↗ nx.dev
nx
Mar 10
Nx 15.8 — Rust Hasher, Nx Console for IntelliJ, Deno, Node and Storybook ↗ nx.dev
nxrelease
Mar 8
Nx 15.7 — Node Support, Angular LTS, Lockfile Pruning ↗ nx.dev
nxrelease
Feb 16
Setup React and Tailwind — The Easy Way ↗ nx.dev
nxtutorial
Feb 9
React, Vite and TypeScript: Get started in under 2 minutes ↗ nx.dev
nx
Jan 12
Nx 15.3 — Standalone Projects, Vite, Task Graph and more! ↗ nx.dev
nxrelease
Dec 6
What's new in Nx 15? ↗ nx.dev
nxrelease
Oct 14
Lerna reborn — What's new in v6? ↗ nx.dev
nxrelease
Oct 12
Helping the Environment by Saving Two Centuries of Compute time ↗ nx.dev
nx
Aug 18
Nx 14.5 — Cypress v10, output globs, linter perf, React Tailwind support ↗ nx.dev
nxrelease
Aug 2
Setup a Monorepo with PNPM workspaces and speed it up with Nx! ↗ nx.dev
nxtutorial
Jul 14
Nx 14.4 — Inputs, optional npm scope, project graph cache directory and more! ↗ nx.dev
nxrelease
Jul 5
Nx 14.2 — Angular v14, Storybook update, lightweight Nx and more! ↗ nx.dev
nxrelease
Jun 9
How Lerna just got 10x faster! ↗ nx.dev
nx
May 25
Lerna is dead — Long Live Lerna ↗ nx.dev
nx
May 11
Nx v14 is out — Here is all you need to know! ↗ nx.dev
nxrelease
May 2
Share Cypress Commands in an Nx Workspace
ReactAngularNx
Apr 13
What is new in Nx 13.10? ↗ nx.dev
nxrelease
Apr 8
The React CLI you always wanted but didn’t know about
ReactNx
Mar 29
The React CLI you always wanted but didn't know about ↗ nx.dev
nx
Mar 29
New Terminal Output & Performance Improvements in Nx 13.5 ↗ nx.dev
nx
Jan 25
Shifting my role at Nrwl
Dec 23
Publishing a Next.js app to Vercel with Nx
NextTailwindCSSReact
Sep 14
Use Cypress with Next.js and Nx to battle test your React Components
NextTailwindCSSReact
Aug 18
Use Storybook with Tailwind in an Nx Workspace
NextTailwindCSSReact
Aug 12
Using Nx Workspace generators to scaffold new blog posts
NextTailwindCSSReact
Jul 28
Hot Reload MDX changes in Next.js and Nx
NextTailwindCSSReact
Jul 15
Component hydration with MDX in Next.js and Nx
NextTailwindCSSReact
Jul 8
Read and render MD files with Next.js and Nx
NextTailwindCSSReact
Jun 23
Setup Next.js to use Tailwind with Nx
NextTailwindCSSReact
Jun 15
Create a Next.js web app with Nx
NextTailwindCSSReact
Jun 9
Angular Services, providedIn and Lazy Modules
angular
Apr 20
SoloCoder Podcast: About Coding and Martial Arts
Mar 30
How Remote Work Improved My Sleep
Feb 23
Common Chunk and Lazy Loading in Angular
angularperformance
Feb 17
Automatic Multi-Step Code Migrations with Nx
angulartoolingNx
Jan 8
Scale React Development with Nx
Reacttooling
Dec 11
I'm new to Nx. Where do I get started?
Nxtoolingangular
Nov 11
Access Selenium Test Screenshots on failed GitLab Pipeline Steps
tooling
Oct 14
Using the Nx Dependency Graph in Custom Scripts
angularReacttooling
Sep 30
Access Angular Material's MatSelect Options Panel Container
angularangular material
Sep 12
Detect when node_modules are out of sync
toolingnode.js
Sep 1
Partial Commits in WebStorm
toolingwebstorm
Jul 14
AskJuri: Learning about Angular Elements
angularaskjuri
Jul 3
Create Nx Libs with Assets
rxjsangularNx
May 20
Debug Jest with VSCode
Nxtoolingangular
May 14
Joining Nrwl 🐳 🦄
Feb 12
Git Rebase vs Merge
gittooling
Dec 18
Talk: Lazy Loading on Steroids with Angular Elements
angularperformanceAngular Elements
Dec 17
Talk: Enterprise Grade Angular Reactive Forms
angularreactive formsformly
Dec 7
Lazy Loading with Angular Elements and ngx-lazy-el
angularweb performance
Nov 6
Manually Lazy Load an Angular Module with ViewEngine and Ivy
angular
Sep 30
Debugging Angular Ivy Applications from the Devtools Console
rxjsangular
Sep 25
Resume your Work with Git
gittooling
Sep 23
Angular Performance: Precaching with the Service Worker
angularvideos
Aug 31
Angular Performance: Virtual Scrolling with the CDK
angularvideos
Aug 30
Angular Performance: Optimize Angular Change Detection
angularvideos
Aug 29
Angular Performance: Performance budgets with the Angular CLI
angularvideos
Aug 28
Angular Performance: Preloading Lazy Routes
angularvideos
Aug 27
Angular Performance: Route Level Code Splitting
angularvideos
Aug 26
Dynamically Load CSS with the Angular CLI
angulartooling
Aug 22
It’s time to say thank you to the Angular CLI Team!
angulartoolingjavascript
Aug 13
Publish a Docker container from Bitbucket to Google Cloud Container Registry
docker
Aug 7
Challenging the Testing Pyramid
testingJavaScript
Jul 16
Update to Angular Version 8 now!
angular
Jun 3
Create Code Snippets for Visual Studio Code with ease
toolingvscodevideos
May 23
Angular 8 and the Future - NGConf 2019 Roundup
angular
May 1
Lazy load Angular Components
angularperformancelazy loading
Apr 29
Introduction to Angular Elements
angulareggheadvideos
Apr 28
Setup your Workstation for JavaScript Development
angulartoolinggit
Apr 26
Productive Git for Developers
giteggheadvideos
Apr 16
RxJS finalize operator to execute logic on Observable termination
rxjsangularbeginner
Mar 4
A step-by-step guide to integrating a third party widget with Angular
angularguest post
Feb 14
Display Server Side Validation Errors with Angular
angularformsvalidation
Feb 7
Explore Angular Router's runGuardsAndResolvers
Angularrouterguards
Jan 31
Guarantee Event Order with RxJS
RxJSAngularasync
Jan 16
It's not just Standing Up
Software ProcessAgileStandup Meeting
Jan 11
Learn Angular Router for Real-World Applications
Dec 5
Better Redirects in Angular Route Guards
Nov 28
Egghead Lesson: Simple caching with RxJS
Nov 10
Egghead Lesson: Avoid memory leaks when subscribing to RxJS Observables in Angular Components
Oct 28
Simple State Management with RxJS’s scan operator
rxjsangular
Oct 9
My Journey replacing Promises with RxJS
rxjsguest-post
Sep 30
[object ErrorEvent] thrown by Karma in Angular Unit Tests
Jul 25
In-depth: How do CDK Portals work?
Jun 25
Dynamic UI with CDK TemplatePortal and DomPortalHost
May 25
Extend the *ngIf Syntax to Create a Custom Permission Directive
Feb 20
Add Mocha reporter for Karma unit tests to your Angular CLI project
Feb 13
Create a CD pipeline with Angular, GitLab and Firebase
continuous delivery
Feb 7
Create a ng-true-value & ng-false-value directive for Angular
Jan 31
Compile-time vs. Runtime configuration of your Angular App
Jan 21
Looking back on 2017
Dec 29
Three new Angular Courses to celebrate end of the Year 2017
Dec 26
Use Dynamic Components to render HTML for 3rd party libraries
Nov 14
Demystifying dynamic Forms in Angular
Oct 3
Understand How to Style Angular Components
Aug 7
Intercept HTTP Requests in Angular
Jul 31
Create a dynamic tab component with Angular
Jul 26
Enhanced *ngIf and *ngFor in Angular version 4.0.0
Jun 12
Talks: Web meets Mobile powered by Angular
Mar 22
Tuning Angular's Change Detection
Mar 14
Angular Modules vs ES6 Modules
Mar 8
Ted Talk: The Puzzle of Motivation
Feb 5
Video Course: Learning Angular Components
Jan 22
Talk: Testing with Angular - Some Recipes
Jan 10
Easy SSL support for your Jekyll Blog with CloudFlare
Jan 3
NG-BE Conf and the Angular Community <3
Dec 30
Interviewing Igor Minar and Adam Bradley for AngularBeers
Dec 18
Ok.. let me explain: it's going to be Angular 4.0, or simply Angular
Dec 12
Configure Ahead of Time (AoT) for your Angular app using the Angular CLI
Dec 2
Safe Navigation Operator, RxJS and Async Pipe tinkering
Nov 15
Custom validators in template driven Angular forms
Nov 13
Data bind radio button lists with Angular
Nov 9
Configure a proxy for your API calls with Angular CLI
Nov 6
Let's create your first Angular app
Oct 4
Angular: Using the JSONPipe for debugging
Sep 20
Angular: How do I register an event listener on document?
Sep 19
Angular: How do I get a reference to the window object?
Sep 19
Angular version 2.0.0 released!!
Sep 14
Angular Forms - a first look
Aug 5
RxJS first steps - Subject and ReplaySubject
Jun 29
From ng-controller to components with Angular 1.5
Jun 26
Angular 2+ - A Getting Started Guide for Beginners
Jun 5
Learning Angular 2 Directives
Apr 26
Fine grained change detection with Angular
Apr 6
Debugging Angular Applications from the Console
angular
Feb 9
Learning Angular: Creating a tabs component
Feb 1
Learning Angular: Conditionally add styles to an element
AngularJavaScriptEgghead
Jan 24
About Personal Productivity
Jan 23
Multi Content Projection aka Multiple Transclusion
Jan 13
Upgrading Angular from 1.x
Dec 15
Improve your Angular 1.x startup time
Dec 13
Componentizing Workflow for Angular
Dec 9
Follow-up: EvolvingPublication
Dec 3
GitLab Flow
Dec 2
Role of an Enterprise Architect in a Lean Organization
Notes
Nov 29
Egghead.io - Getting started with Redux
Nov 29
Good Tech Lead, Bad Tech Lead
Notes
Nov 28
Exploring Components in Angular 1.5
Nov 15
How to be agile in a non-agile environment
Agile
Nov 2
REST Api Design - Resource Modeling
Nov 2
Screencast: TypeScript - Setup Your Working Environment
Nov 2
Use ngModelOptions to limit digest cycles
Oct 25
Angular Connect London - Day 2
Oct 19
Angular Connect London - Day 1
Oct 18
Breaking apart conceptions by Ayende Rahien
Oct 10
Release your libs like a pro!
Oct 7
10 Interview Questions Every JavaScript Developer Should Know
Oct 4
El Capitain Broke My Developer Stuff! Here's How to Fix It
Oct 3
On Monoliths and Microservices
Oct 1
Building an Enterprise CSS Framework
Notes
Sep 30
12 Rules for Professional JavaScript in 2015
Sep 27
ES6 Features
Sep 27
Easy testing with angular-spies
Sep 25
$q.defer: You're doing it wrong
Sep 24
Angular 2 survey results
Sep 24
What forces layout/reflow
Sep 23
Are you making these 10 Unit Testing mistakes?
Sep 22
GitHub: Scaling on Ruby, with a nomadic tech team
Aug 27
ES2015 - Jump Start
es2015es6
Aug 25
Why You Should Avoid a Canonical Data Model
architecture
Aug 25
Why We Should Stop Using Bower – And How to Do It
Aug 25
Ultimate AngularJS and Ionic performance cheat sheet
Aug 24
Angular 1 and Angular 2 integration: the path to seamless upgrade
Aug 24
Building a desktop application with Electron
Aug 21
Host and Visibility in Angular 2's Dependency Injection
Aug 19
semantic-release - @kentcdodds talks to @boennemann
Aug 18
Preparing for Angular 2
Jul 5
Learning Angular: Testing $q promise resolves with Sinon and Jasmine
Jun 29
Learning Angular: Expose an API on your directives
Jun 16
Guide as in Mountaineering
Jun 5
GitHub: be Social, Contribute, Learn
Jun 3
Jersey WebResource - Header don't get appended
May 13
Nepal: Help for Anil Joshi
charity
May 7
Migrate from TFS to Git
Mar 24
Learning Angular: Set your language culture before any UI is displayed
Mar 2
Learning Angular: Verifying whether a function has been passed to my directive's isolated scope
Feb 25
Learning Angular: Access directive scope variables from directive controllers and vice versa
Jan 25
Backup your Win8 computer to your Synology NAS
Jan 17
Notes: Microservices by Martin Fowler
software architecturemicroservices
Jan 2
Happy new year 2015!
Dec 30
Kudos for your site - powered by Firebase
Dec 28
Learning Angular: Useful utility functions
Nov 27
Learning Angular: Unit Testing $watch expressions
Nov 25
JavaScript Promises Essentials
Nov 17
Learning Angular: What is the scope of your directive??
Nov 12
Sublime Tip: Enable spell checking when you write Markdown
Nov 6
Learning Angular: Gosh, my two-way binding doesn't seem to work properly!
Nov 6
Introducing the learning-ng series
Nov 5
Avoid test code duplication in Jasmine tests
Oct 29
Want to invite your friend to Inbox by Gmail but have no invites left?
Oct 27
Static code analysis for free
Oct 20
Hack: How to mimic a disabled checkbox
Sep 11
Implementing the 'Git flow'
Aug 31
Node, Grunt, Bower and Yeoman - A Modern web dev's Toolkit
Aug 14
Lazy Angular Modules
Jul 20
First baby steps with Angular.js
May 10
See, always told you: testing is just a waste of time
May 6
QCon London 2014 - Embracing Change - Building Adaptable Software with Events
Apr 8
Integrating Node.js with a C# dll
Mar 30
Packt Video: JBoss EAP Configuration, Deployment and Administration
Mar 15
Automating the build of MSI setup packages on Jenkins
Mar 11
Decision making, problem solving, introducing ideas, being influencial
Mar 4
Automate your UI testing with Nightwatch
Feb 20
Git flow with Jenkins and GitLab
Jan 6
JSConf.eu - React: Rethinking best practices
Dec 19
Boot your ajax app: Creating a splash screen with NProgress
Dec 5
The narrow path between best practices and over-engineering
Nov 18
JBoss Weld CDI for Java Platform
Oct 28
Developing Windows Store Apps with HTML5 and JavaScript
Sep 17
'object' does not contain a definition for 'errors'
Aug 29
JSConfUS 2013 - Angelina Fabbor in JavaScript Masterclass
Aug 5
How to add a reading time indicator to your blog in ten minutes
Jul 22
Setting up a WPF Application With PRISM
Jun 25
Code Coverage with QUnit in JavaScriptMVC
Jun 24
Learning JavaScriptMVC
Jun 17
Unit Testing Tip: Create Descriptive Tests
Jun 16
Vae Soli
Jun 13
Caching, jQuery Ajax and Other IE Fun
Jun 5
Getting Started with Git and Visual Studio
Jun 2
Blog Like a Hacker with Jekyll and Nitrous.IO
May 7
Perfect Workflow in Sublime Text 2
May 5
Git Explained: For Beginners
Apr 29
My Sublime Text Setup
Apr 9
Modularity in JavaScript MVC Frameworks
Apr 7
Entity Framework: Intercepting SQL Queries for Contextual Logging
Mar 21
Mocking Internal Interfaces with Moq
Mar 6
Interview with DZone
Mar 5
The Coaching Architect
Tech vidscoaching
Feb 11
DZone MVB Goodies Box
Feb 9
Test Your App Under Slow Network Speeds
Jan 31
ASP.net MVC Action Methods: Testing Against Anonymous Return Types
Jan 17
How to Stay Up To Date On Web Technology
Jan 10
Transformer TF101 meets Jelly Bean powered by CyanogenMod
Jan 5
Retrospective 2012
Dec 30
Gist: My New Devbook
Dec 17
Cerego - Learn Anything, Everywhere
Dec 16
Programming ASP.net MVC4 by J. Chadwick, T. Snyder and H. Panda
Dec 13
HowTo: Subscribe to Failed TFS Builds
Nov 22
Visual Studio: Where Did My Shelvesets Go?
Nov 18
Deploying: Git vs. TFS Showdown
Nov 15
Don't Create Your Own Mapper, Let AutoMapper Do The Job!
Nov 13
Visual Studio Tips
Oct 30
Output Caching in ASP.net MVC
Oct 28
Lessons Learned: Don't Expose EF Entities to the Client Directly
Oct 23
HRT - Humility, Respect and Trust
Oct 14
2nd Dan Yoseikan Budo
Oct 4
Visual Studio Test Explorer: Automatically Execute All Unit Tests Only
Oct 2
Finishing my Blog Relocation
Sep 26
Jasmine - An Introduction
Aug 28
It's time to learn CoffeeScript
Aug 25
An Example of Test-Driven Bugfixing
Jul 18
Why $.extend(someObj, anotherObj) might be dangerous!
Jul 17
Strange Error When Downloading File in IE8 from SSL Site
Jul 15
What? Model-View-Controller in JavaScript?
Oct 9
Why Automated Tests Boost Your Development Speed
Apr 5
Coding an Update Functionality for your Android App
mobile dev
Feb 6
About Scrum - in under 10 minutes
Agile
Jun 17
Best practices: Deploying webapps
Sep 24
Best practices: VCS usage flowchart
May 22
When Windows tray-icons disappear misteriously
Mar 15

Want to stay updated?

Subscribe via RSS →