THESIS: npm Packages vs shadcn Registry: A Comparative Study of Component Sharing Approaches in Organizations
Join us for your thesis work! Gain hands-on experience, work on real projects, and develop your skills in a supportive and innovative environment!
High level description
Component reusability is essential for maintaining consistency and efficiency in modern software development organizations. Traditional npm packages (either public or private) have long been the standard approach for sharing code across projects, while shadcn's registry system represents a newer paradigm that focuses on code ownership and customization over dependency management.
This thesis aims to investigate the practical differences, strengths, and weaknesses of npm packages versus shadcn registry for sharing and maintaining reusable components within an organization, with particular focus on security, maintainability, and developer experience.
Who are we looking for?
Bachelor/Master of Science in Computer Science/Engineering
Project description
This thesis will involve a literature review of component sharing strategies, dependency management, and modern frontend architecture patterns, followed by a practical case study where a component library is implemented and distributed using both approaches. The project will analyze measurable factors such as setup time, update propagation speed, and maintenance overhead, as well as qualitative aspects like developer autonomy, security implications, versioning complexity, and long-term maintainability.
Purpose and Scope
In this thesis investigate these questions:
- What are the fundamental architectural differences between npm packages and shadcn registry for component distribution?
- How do security considerations differ between the two approaches, including supply chain risks, access control, and vulnerability management?
- What is the impact on maintainability when using versioned dependencies versus source copied components?
- In which organizational contexts is each approach more suitable?
- How do the tools affect developer experience, onboarding time, and productivity?
- What are the trade-offs between centralized control (packages) and distributed ownership (registry)?
- How do the approaches handle breaking changes, updates, and customization requirements?
- What are the restrictions on what kind of code you could/should share via the registry? (UI components? Backend logic? Full stack templates? etc..)
References:
- shadcn Registry Documentation: https://ui.shadcn.com/docs/registry
- npm About page: https://docs.npmjs.com/about-npm
An Exciting Journey with Knightec Group
Semcon and Knightec have joined forces as Knightec Group. Together, we are Northern Europe’s leading strategic partner in product and digital service development. With a unique combination of cross-functional expertise and a holistic business understanding, we help our clients realize their strategies – from idea to complete solution.
Practical Information
This is a thesis position, located at our office in Sundsvall. Start date January or March 2026.
Please submit your application as soon as possible, but no later than 2025-11-30. If you have any questions, you are welcome to contact Johanna Edström. Note that due to GDPR, we only accept applications through our careers page.
- Business unit
- Thesis
- Role
- Bachelor thesis
- Locations
- Sundsvall

Already working at Knightec Group?
Let’s recruit together and find your next colleague.