Skip to content

Announcing Kubero v3 (Refactoring) #623

@mms-gianni

Description

@mms-gianni
Member

Hey everyone

We’re excited to announce Kubero v3, a major update that brings significant improvements and introduces a major architectural change: Kubero will be built on NestJS!

Why

Kubero was initially built as a Proof of Concept during Heroku's major outage in 2022. Although there was an improvement in v2 are some parts of the code still the same. And let's be honest: They are not best practice of coding.

Why NestJS?

NestJS is a progressive Node.js framework designed for scalability and maintainability. By leveraging modern development patterns, NestJS helps us bring a more robust, testable, and developer-friendly experience to Kubero. It should be compatible, since it uses Express and PassportJS

Key Benefits of Moving to NestJS

  • Modular Architecture: The NestJS framework allows us to better organize and scale Kubero’s features while maintaining cleaner codebases.
  • Enhanced Performance**: With built-in support for asynchronous operations and optimized routing, Kubero is now faster and more responsive.
  • Improved Developer Experience: NestJS provides a structured, opinionated approach that simplifies development, testing, and maintenance.
  • Scalability: Designed with enterprise-grade applications in mind, NestJS enables us to future-proof Kubero for even larger and more complex deployments.
  • Extensive Ecosystem: The NestJS ecosystem, with its integration libraries and support, helps us provide powerful new features faster and more efficiently.

All features should be migrated. Even the API should have a backward compatibility.

You can follow the progress in this branch here:
https://github.com/kubero-dev/kubero/pull/619/files

Activity

self-assigned this
on Feb 3, 2025
pinned this issue on Feb 3, 2025
linked a pull request that will close this issueKubero V3 refactoring #619on Feb 3, 2025
mms-gianni

mms-gianni commented on Feb 10, 2025

@mms-gianni
MemberAuthor

Making some progress here ... still a lot of work to do.

Image

Some routes will change
Image

jfmatth

jfmatth commented on Feb 12, 2025

@jfmatth

Love to see the improvements. I'll have to give v3.0 alpha+ a try 😄

mms-gianni

mms-gianni commented on Feb 12, 2025

@mms-gianni
MemberAuthor

Great to hear you @jfmatth . I'll let you know 😉

Hit the 20K mark. And still a lot to do.
Image

mms-gianni

mms-gianni commented on May 26, 2025

@mms-gianni
MemberAuthor

Image

Hit the 30K Mark.

Added many tests to have some more confidence:

Image

mms-gianni

mms-gianni commented on Jun 10, 2025

@mms-gianni
MemberAuthor

Phuu ... What a ride.

But I'm finally very happy with the result. So I'm preparing the release.

jfmatth

jfmatth commented on Jun 10, 2025

@jfmatth

Very exciting @mms-gianni keep up the great work. Looking forward to it.

mms-gianni

mms-gianni commented on Jun 24, 2025

@mms-gianni
MemberAuthor

Simplified User administration in V3

Image

sansavision

sansavision commented on Jun 25, 2025

@sansavision

Simplified User administration in V3

Image

Looks awesome, how much time left do you think?

mms-gianni

mms-gianni commented on Jun 26, 2025

@mms-gianni
MemberAuthor

@sansavision To honest its a bit hard to predict.

Initially, I planned to release at the end of April, then moved it to May. I was somewhat dissatisfied with releasing v3 without additional features, focusing only on the new code. It passed all tests, works as expected, and is currently running on the demo.

You can try the image ghcr.io/kubero-dev/kubero/kubero:v3.0.0-rc.9 . It supports seamless rollforward and rollback, even without upgrading the Operator.

To test it, simply change the tag in the Kubero CRD

kubectl edit kuberoes kubero -n kubero
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Projects

No projects

Milestone

No milestone

Relationships

None yet

    Development

    Participants

    @jfmatth@mms-gianni@sansavision

    Issue actions

      Announcing Kubero v3 (Refactoring) · Issue #623 · kubero-dev/kubero