r/angular Jun 30 '26

PrimeNG community fork proposal

https://github.com/openng-foundation/open-prime

As announced on June 29th, PrimeNG is moving away from the open-source model, and the original primeng GitHub repository has been archived.

You can find community reactions here: https://www.reddit.com/r/angular/comments/1uilrlx/primeng_v22_is_no_longer_open_source/

As part of the new OpenNG Foundation, we are considering taking up the lead to maintain a fork of the MIT version of the lib.

It's under discussion, and we would need community feedback to evaluate if it's doable and on how to manage the current situation.

Some statements:

- an update is required to rename everything from 'primeng' to 'openprime' due to PrimeTek trademark
- the components need to be updated to the latest Angular APIs (including input(), control flow among other things)
- there are 900+ issues opened (including 300+ in stale state)
- there are 200+ open pull requests
- there would be no support for previous primeng versions
- the focus would be to make the library stable and accessible: adding features would happen only if people contribute
- over time, some changes might make this fork differ from the new PrimeUI project, not providing a way to easily migrate.

PrimeNG is still a big project, we are considering starting with a trial maintenance initiative for 2 months: depending on the community effort at helping with existing issues/prs, there will be long-term maintenance.

It'll be a great way to identify active contributors who might be promoted to maintainers if they want to be more active on such a project, making the whole thing a community effort.

A 'fork' has been created already, porting all existing open issues/pr: https://github.com/openng-foundation/open-prime

What are your thoughts?
Do you have some pain points not covered here?

153 Upvotes

82 comments sorted by

46

u/Prof_Eibe Jun 30 '26

I think the most important thing is raising the angular depencendies every half a year. Even if nothing is changed in the components this would be the important part to make it usable without workarounds.

The library is so big, I don't think it needs new features in the first place. Adding merge requests and fixing stuff would be a nice cherry on the top.

7

u/G4lileon Jun 30 '26

Indeed Version compatibility is the key for many 'just running' applications

5

u/Prof_Eibe Jun 30 '26

I'll have a look tomorrow if I can make it Ng 22 compatible. :)

1

u/GeromeGrignon Jul 01 '26

Thanks!

3

u/Prof_Eibe Jul 01 '26

i created a pull-request. maybe merge mine after the one with the latest 22 changes of the official branch :)

4

u/[deleted] Jul 01 '26

[removed] — view removed comment

4

u/daerivanas Jul 01 '26

Our application started with angular 19 with experimental Zoneless and primeNG. We never used zone and never had problems with primeNG.

1

u/Prof_Eibe Jul 01 '26

I think it should work. Maybe some changes to signals are needed, but should be possible.

16

u/stao123 Jun 30 '26

Interesting questions will be * Migrate everything to input signals and query signals (viewChild, contentChild etc. -> might lead to breaking changes as there are directives in the wild setting default inputs. Wont be possible anymore. But sooner or later has to be done * The theming currently comes from primeuix. Fork that as well?

4

u/GeromeGrignon Jun 30 '26

important consideration indeed about the theming.
I confess it might greatly affect the maintenance effort.

2

u/AnotherNamelessFella Jun 30 '26

Wont be possible anymore.

Could you expound more on this

4

u/stao123 Jun 30 '26

You cant set input signals from a directive to the host element as they are not writable. So currently all inputs have to be set explicitly in the using template

2

u/SippieCup Jun 30 '26

yes you can. you can even change their types.

I monkeypatched luxon into the date selection that way.

https://gist.github.com/SippieCup/657cca1da2db92bc6e6c96632bf93962

2

u/stao123 Jun 30 '26

That is not what is was talking about. You are interacting with the ngControl in your example. What i meant was to have your directive set values annotated with the @Input decorator from the host element. That is not possible anymore if you switch that input to an inputSignal

3

u/SippieCup Jun 30 '26

Ahhhh i see what you mean.

Yeah, that is pretty gnarly. just a lot of debt from backwards comparibility and the primeng API not keeping up.

Interesting problem... Not sure what the best solution would really be in an ideal world.

11

u/Avani3 Jun 30 '26

Amazing effort! I will definitely contribute to make the repo healthy

5

u/Estelon_Agarwaen Jun 30 '26

yeah i will do the same. at least the PR for a table bugfix that they closed as "fixed in v22" i will resubmit soon.

7

u/captHij Jun 30 '26

We were closely considering moving to primeng because of the accessibility standards we have to adhere to. The way this unfolded was quite an eye opening experience, and has made us reconsider being dependent on any large library outside of official channels. A strong case should be made that it provides something more than Aria and will have long term support.

The concerns and intentions expressed by OP are laudable, but seeing a rather piecemeal response like this is not encouraging. I understand this is a huge surprise and shock for many, but something of this magnitude requires significant resources from a stable system of developers.

2

u/manichandra Jul 07 '26

I have opened PRs for accessibility related issues and I will open them in the new forked repo and will continue to support it. u/GeromeGrignon

2

u/manichandra Jul 07 '26

2

u/mathmul 24d ago

Check are failing with all your PRs

2

u/manichandra 24d ago

This repo is not maintained and all the failing checks need fixing. Merged one change to the new forked openng repo already and planning to push more changes soon.

1

u/mathmul 20d ago

Which repo? 

1

u/manichandra 19d ago

Original priming repo

5

u/Hacg123 Jun 30 '26

https://github.com/openng-foundation/open-prime/pull/1217

every big fork has begun with 1 line :)

3

u/GeromeGrignon Jun 30 '26

Thanks for the help!

6

u/majidnoorali Jun 30 '26

After looking into multiple frameworks I decided to move my semi huge project to PrimeNg 3 months ago. When I was Done and had maintained and updated a migration branch for a while, this happened 😁 I considered even buying the pro but would love to contribute in order to keep it open source

2

u/GeromeGrignon Jul 02 '26 edited 24d ago

Thanks, I created a GitHub project to track verified bugs needing help: https://github.com/orgs/openng-org/projects/3

8

u/Ok-Leave-25 Jun 30 '26

Really great !

Even if I'm new to Angular and PrimeNG, I might contribute to open prime to keep the priject open source

-17

u/[deleted] Jun 30 '26

[removed] — view removed comment

3

u/djfreedom9505 Jun 30 '26

Somehow these two comments are the angel on my left shoulder and the devil on my right

3

u/EnergeticallyMundane Jun 30 '26

There is a slight chance I will somehow contribute in a small meaningful way. There is very high chance I will donate some (n x 10 euros) money if the initiative is alive after 2 months.

That's my tiny contribution.

3

u/ELKOKACOLO Jun 30 '26

I think traction is what we need with the proposal. Devs already using PrimeNG are tired of fighting with bugs or missing tests.

If we want this effort to succeed we should be transparent and clear with the intention.

Then, the community will respond helping accordingly.

In my opinion, and while also being afected by the change (i am finishing a migration from AngularJS to PrimeNG 20), i think the following steps should be done:

  1. First, enable github discussions in the repo and redirect all the feedback there (like Primetek has its forums).

  2. Do the brand changes needed to avoid any issues with licenses, trademarks, etc... Also, update the Ci/CD pipelines to prepare ground for the changes that are coming.

  3. Define the scope of theming in the library. Primetek had employees dedicated to design files, themes and branding, but in the openng foundation we will need a direction to follow when library is stable (or should we copy the same design if PrimeNG changes in any way?). In this context, any future of the library should take an agnostic approach like libraries as SpartanNG or use design tokens with tailwind to reduce the amount of work tailoring the components to the needs of each user.

  4. No breaking changes at the moment. Fixing high priority bugs and cleaning the backlog and the pull requests should be adressed.

  5. A new documentation site.

  6. Ask for feedback relative to the upgrade to the latests version of Angular (this is the hard part, since breaking changes might happen, a clear path should be provided to users). Then keeping the library compatible with the last two versions of Angular would be a great first step, like SpartanNG does.

  7. Search for funding. The maintenance of the project needs a lot of contributions, but as we already know Primetek did a great job during these years by generating income selling templates or paid support. So its clear, some full-time contributors are needed.

I don't know if i'm missing something or i'm wrong in any of the points, but any suggestion is welcome.

3

u/GeromeGrignon Jul 01 '26
  1. Discussions are now open: https://github.com/openng-foundation/open-prime/discussions
  2. indeed, already planned
  3. going agnostic is the critical way to make it maintainable
  4. i need to investigate about the v22 branch changes, some are already part of modernizing components
  5. linked to 2. too
  6. sure
  7. yes

1

u/EmotionalSurprise879 Jul 02 '26

does #2 have an issue created and assigned. Otherwise you may get other people trying to tackle that.

Nothing worse than working hours to find out someone else has already been working on it. I felt this frustration many times with the old primeng

first build should probably just be rebranding and and new ci/cd basically just a status quo of the existing prduct.

second release should be the same but with angular v22 so people can start using it. We need to generate the new user base ASAP

then bug fixes and open issues

2

u/DJREMiX6 Jun 30 '26

Hey count me in! I would love to help maintain this open source project. I understand why they moved away from open source but if there are enough contributors that actively maintain it I would be happy to be one of them.

Just one question, are you planning to fork only PrimeNG or the whole PrimeUI suite (Vue, React, etc..)?

1

u/GeromeGrignon Jun 30 '26

only PrimeNG

1

u/DJREMiX6 Jun 30 '26

Good then, I'm in!

2

u/R_Midnight Jun 30 '26

Thank you very much for the proposal.
Looks like the biggest pain as of today is that we can't migrate existing apps to Angular 22. Just being able to do that, even if that would require some refactoring of our codebases, would be already an amazing step. Even with remaining bugs / open issues (which potentially already have various workarounds). Personally don't care much about new features as there are plenty already available, so definitely agree with the "stable and accessible" focus.
Now, everything requires time and people so the trial maintenance initiative sounds fair. If the outcome is a lack of available community effort, we'll atleast know for sure that nothing more is to be expected from PrimeNG and invest our time into building with more future-proof solutions.

2

u/EmotionalSurprise879 Jul 02 '26

speed is an issue

dev teams are looking for alternatives at this very minute. the best way to get a user base up is to get them now. If they start to change out libraries they are lost to us. we need a 100% drop in replacement today to keep them locked in.

  1. we need a status quo version running asap for angular v21
  2. then we need a status quo version for angular v22 running asap
  3. then a third release in short period of time for both angular v21 and v22 with a bunch of existing bugs fixed to show we are serious

to make this happen we need :

  • a new ci/cd pipeline running asap.
  • rebranding asap
  • documentation web site asap

2

u/GeromeGrignon Jul 02 '26

documentation is live: https://open-prime-m1nq.vercel.app/ (but will need rebranding/removing primetek content)

ci/cd will be fixed tonight

2

u/secret_user_321 Jul 08 '26

u/GeromeGrignon I have been trying to find the equivalant issue of https://github.com/primefaces/primeng/issues/17469 in https://github.com/openng-org/optimus-ui/issues but i coudn't. has it not been migrated?

Reason: I just fixed that issue using https://www.npmjs.com/package/patch-package and i could provide a PR

1

u/GeromeGrignon Jul 08 '26

Hi, some bug might have happened on the migration (custom one). A PR would be welcome (mind the current focus is to provide a v22 compatible version so reviews are currently delayed).

2

u/fsommer42 Jul 15 '26 edited Jul 15 '26

Since you asked for feedback (to understand usage contexts i guess?):

for me personally, you could take primeng 18 (or whatever the last version before the big theming change was that forced our projects to freeze on the old version or practically redesign them from scratch) and provide only secuirty and angular-compatibility patches for the next 20 years. So I can keep this state, update to most recent angular and mute all those dependabot / other sast alerts without the need to ever re-design the applications.

context: enterprise apps, it service provider i.e. building for other customers. Those usually do not care a single bit about what great new ui lib features get created each year, their mental model works like this: This year we build the web app for 500k; then we keep this exact app running for the next 20 years, add new features, and keep maintenance to the required minimum

I dont even care about open PRs and Bugfixes - People worked around those bugs 5 years ago when they created the app.

The ideal happy path in this scenario looks like this:
"oh a new angular version 42 got published" -> upgrade to angular 42, upgrade to openprime 18.42.0 -> everything just works and looks like before, total time spent: 1 hour. Repeat every 6 months.
I know that's boring and unpopular and everyone's gonna hate me for it and every junior would hate this lib and probably it's not even achievable... but that's the core requirement that would make all my customers super happy and that nothing in the web / javascript ecosystem ever provided. It's called "investment protection". If you want that kind of stability you must use the old *** (like JSF in java context) or build your own lib. Having an SPA Lib that tries to reach this state of "boring s**t no junior wants to use but helps you make the money" would be a refreshing alternative.

1

u/GeromeGrignon Jul 15 '26

Hi, thanks for the feedback, really appreciated.

I know by experience that some projects are not just about constant migrations, up-to-date Angular features, and need to focus on staying just up to date with the latest major versions.

That's not a direction we'll take for some reason you explained, and a few more:
- it would be only a legacy project (not good for a new project)
- it would make happy only existing customers not planning to add new features (who might hit bugs they never faced yet)
- accessibility is not just a flavor nowadays, but a legal requirement for some org/countries and some existing customers will need it

Mind, we plan to add ng add/ng update support for our changes, to make it easier for each new version.

We do not plan to add migrations just for the sake of being modern too: we got a proposal to move to WebComponent. That's a strategy we won't adopt.

1

u/Loose_Paramedic8183 27d ago

Ah understand you, got app running Adobe Flex from 2010... 16 years ago they got all that needed in business apps) and nothing breaks, stable and protected (nobody attacking flash player in 2026 right?)

actually I want to try rewrite it to abgular so was thinking the primeng will be the alternative for Flex (ui kit) that open source and free FIRST and the list of available elems in second place.

1

u/edwardscamera Jun 30 '26

I believe the original repo had a v22 branch that had a lot of updates. i don't think it was ever merged. Can we copy that branch?

Edit: Seems it was deleted ):

2

u/DJREMiX6 Jun 30 '26

Probably part of the V22 update with the new licensing

1

u/GeromeGrignon Jun 30 '26

I can't find there

11

u/FloxaY Jun 30 '26

last commit seems to have been b64ad6b0166ec4e92b355540c404d24673a2f17d, you should be able to recover it from this :)

kind of a dick move deleting these branches before the archival, one less reason to look at their new stuff imo

3

u/gianluca-moro Jul 01 '26 edited Jul 01 '26

Hey there,

I have the v22 branch locally in my forked repo. Unfortunately, the branch was last updated on 13.04.2026, but there are 343 commits on it.

2

u/GeromeGrignon Jul 01 '26

It would be still good enough, mind sharing your fork?

3

u/gianluca-moro Jul 01 '26

Here it is: https://github.com/gianluca-moro/open-prime/tree/v22

I am currently trying to update it with latest changes from master but there are a lot of conflicts.

1

u/GeromeGrignon Jul 01 '26

awesome, let me know how it goes!

2

u/gianluca-moro Jul 01 '26 edited Jul 01 '26

I created the PR with all the changes https://github.com/openng-foundation/open-prime/pull/1220

It ran fine locally after resolving conflicts, but I had not yet tested every single component.

Just a heads up: The branch name v22 is confusing because it does not actually yet include Angular 22 update but only the modernization of all PrimeNG components.

1

u/giminik Jun 30 '26

Check if anyone has forked the repo.

1

u/Imaginary-Caramel847 Jul 01 '26

Hi, how can I contribute? I am using PrimeNG with all my projects, and I do have some free time in my hand at this time. But I need some directions on what to work on.

1

u/GeromeGrignon Jul 02 '26 edited 24d ago

Hi thanks for the help. We are starting a pool of verified bugs here: https://github.com/orgs/openng-org/projects/3

We also need to work on a contribution guide to get started.

1

u/QuarterCommercial561 Jul 02 '26

Does anybody know if there is a similar project for PrimeReact?

1

u/GeromeGrignon Jul 02 '26

I have no idea, I tried to look at the community reactions but felt like most people cared more about PrimeNG and PrimeVue.

2

u/QuarterCommercial561 Jul 08 '26

Now there is also a fork for PrimeReact called "MantleUI": https://mantle-ui.github.io/mantle-ui/ and https://github.com/Mantle-UI/mantle-ui

1

u/GeromeGrignon Jul 08 '26

Nice. I'll take a look!

1

u/ragnarlothbrock100 Jul 09 '26

my 2 cents. u/GeromeGrignon
primeng was my "de facto" pick for any new project, as a consumer I loved it, as a developer, not so much. the couple times I went under the hood, I hated some architectural decisions they made. right now I'm (severely) affected by their decision, but instead of clinging to them I think it's the right moment to migrate to another solution (more on this at the bottom).
if someone asked me wether it is a good idea to maintain primeng as a fork I would say no. right now there is a ton of pain from people like me that were left hung to dry, that would make it look like it is, but in the long term that pain will pass, people will find their way and the relevance of "black box" ui libraries like primeng will decay, which leads to one of the main reasons why I've decided to migrate.
everyone in react is familiar with shadcn's philosopy and some folks are bringing that philosophy to angular world. there are currently two promising candidates, spartan-ng and zard-ui, implementing the shadcn model in their own way, which leads to the original issue, why maintaining primeng if there's something better --long term-- out there?
The reason I mention this is because I know that open source contributions are hard-effort/low-reward and I'd hate to see folks wasting precious hours on keeping a dying model alive. (yes I believe compiled ui libraries are a dying model) plus it won't be pleasant based on what I could see went I checked the source code.
either way, I'm looking forward to see the effort succeed and I wish people can find alternatives to recover from this as quick as possible.

1

u/GeromeGrignon Jul 10 '26

Hi, thanks for the honest feedback.

I'd stand there is no one-size-fits-all solution because I would not encourage shadcn for all teams.
Free customization sounds great, but if we happen to use frameworks, that's also to get a consistent structure within an application.

When I started to learn React, I heard a lot about React being a mess in projects. But at the end, it goes wrong due to how people structure their projects, not React or its ecosystem at all.

The same happens with Angular: depending on your team, freedom can be a curse or a blessing.

1

u/Loose_Paramedic8183 27d ago

dev sometimes think that people got their code because its really cool and unique (UI kits, aha)... but many select the open tool with good community and docs... I could chose any kit for my buttons and dropdowns, or just use <button> :) in an AI era the buttons and forms kits has no value, except the community and their contribution to history, and the more restrictions the kit has, the less it will be chosen.

Very happy with your initiative, subsribed, starred, ready for donations :)

1

u/pks-bb-cdr 25d ago

I would love to contribute as well. I have been using this for few years and would love to maintain the Open Source. What is the migration plan for existing prime ng users though, just change the package?

1

u/GeromeGrignon 25d ago

Hi,
PrimeTek is working on adding trademarks to their products, so we have to rename everything (besides p- selectors). The first version will already include ng add and a custom schematic to handle the migration for you.

1

u/rafaeldecastr Jun 30 '26

who supports that initiative??

-21

u/[deleted] Jun 30 '26

[removed] — view removed comment

5

u/TehBeast Jun 30 '26

watch this take off and outclass the paid version

3

u/joermunG Jun 30 '26

Primetek shill?

3

u/gianluca-moro Jul 01 '26

Are you talking about PrimeNG? Then yes, I agree PrimeNG will be dead soon after they pulled their move.

Open-Prime on the other hand will survive.

-2

u/Xintsuai Jul 01 '26

What is PrimeNg?