JavaScript Monorepos in 2024: Legit or Sus?

JavaScript Monorepos in 2024: Legit or Sus?

Zach Gardner Articles, Development Technologies & Tools, JavaScript, Programming, Tutorial 2 Comments

I’ve been developing JavaScript through all of the major existential changes we’ve had. Browser wars? I remember those. Trying to make a complex application before Firebug? Oh yeah, tell me about it. Having to roll my own AJAX request by hand? Vividly remember.

Something that I experienced in all of my large JS projects before the last few years was an eventual point of no return, a metaphorical event horizon, beyond which the amount of time it took to build the code locally as well as on the CI/CD system was just simply too long.

All projects start fine, but as they grow and evolve and change over time, the amount of build time seems to creep up until it becomes inimical to deploying and testing changes in any reasonable time frame. Further, it becomes very difficult to onboard new developers as any change they make is not isolated, and must take into account all of the other code in the app. Granted, frameworks and libraries like React do help to some extent, but there are no clean-cut boundaries on the source code with different features, it always had to be by convention.

It was during a project a few years ago that I finally put my foot down and decided that something needed to be done. Researching how other architects were doing it, I came across JavaScript monorepos. I was familiar with the concept of monorepos from my research on how Google structures their code base (they have to repos, one for YouTube and one for everything else, no joke), but had never thought to apply that same principle to JavaScript. So I dove in head first, made a lot of mistakes, iterated, and finally got to a place where I feel comfortable sharing my lessons learned.

This blog post is not an extensive study, but it is enough to get you interested in a way to solve two common problems we all have (i.e. sluggish build times and inability to effectively onboard new devs due to lack of feature separation), and give you enough of a context around how I approached the problem to determine how you should proceed.

Cobol Modernization with Spring Batch Header Image of Mainframe Racks

White Paper: COBOL Modernization Strategy with Spring Batch

Keyhole Software Articles, COBOL, Development Technologies & Tools, Java, Modernization, Spring Batch Leave a Comment

The Keyhole team is proud to announce the publishing of a new, free white paper: COBOL Modernization Strategy with Spring Batch

This strategy positions Spring Batch as an irresistible proposition for organizations ready to bid farewell to their COBOL legacy. Keyhole Software offers guiding principles for COBOL modernization, with a comprehensive guide based on tangible experience for enterprises navigating the realm of COBOL modernization. 

Navigating the Maze of Authentication Options for Solo Devs and Small Teams (header)

Navigating the Maze of Authentication Options: A Solo Developer’s Guide

Andy Link Articles, Programming, Security Leave a Comment

In web development, choosing the right authentication strategy is a pivotal decision, especially for solo developers or small teams working with limited resources. After extensive research, I’ve adopted a hybrid approach that combines the security and ease of 3rd party services like Google and Microsoft with the control of an in-house solution.

This hybrid approach addresses my core concerns: cost, control, and user convenience while keeping the in-house method at the forefront. As we explore this topic, I’ll share the considerations and insights that shaped my strategy, aiming to guide you toward the authentication system that best fits your project’s unique demands.

What are the Common Software Security Issues & How Do I Prevent Them?

Zach Gardner Keyhole, Security, Videos 1 Comment

In the world of software development, addressing the common software security issues and how you can prevent them is crucial. At Keyhole, we understand the importance of prioritizing security right from the project’s inception. This approach is not just a recommendation but a necessity in today’s digital landscape. Integrating security measures from the start significantly reduces the risk of encountering …

What are the Common Security Issues in Cloud Computing for Businesses?

Zach Gardner Cloud, Keyhole, Security, Videos Leave a Comment

As an expert-driven software development and consulting firm, we prioritize knowledge sharing, client-focused delivery, and a commitment to modern technology solutions. In this spirit, we address a critical aspect of today’s business landscape: common security issues in cloud computing for businesses. This topic, often neglected or misunderstood, can be the difference between a thriving enterprise and a cautionary tale. Preventing …