An open-source package registry where you can browse, search and actually discover Zig libraries and applications

zigpkg.dev - a package registry for Zig (that also indexes Codeberg)

Hey Zig folks :waving_hand:

For a while now I’ve been building zigpkg.dev - an open-source package
registry where you can browse, search and actually discover Zig libraries
and applications.

It started as an internal tool. The company I work at leans on Zig pretty
heavily, and finding packages by spelunking through GitHub/Codeberg topic
searches got old fast - we just wanted one place to find things. Before
writing our own we went through the existing ones (zigistry.dev, aquila.red,
zig.pm, astrolabe.pm) and most are either unmaintained or missing what we
needed, so… here we are.

What it does

  • Browse & search libraries and applications - filter by topic, owner, type,
    or just A–Z.
  • Every package page renders the README with proper Zig syntax highlighting,
    shows stars / forks / license / version, the file tree and version history.
  • It parses each repo’s build.zig.zon and lists the dependencies, so you can
    see what a package actually pulls in before you add it.
  • Indexes both GitHub/Codeberg - publish on a Forgejo instance and you
    won’t be invisible.
  • Re-syncs every hour (incrementally), so new tags and new packages show up on
    their own listings stay fresh.

Want your package listed? Tag the repo zig-package / zig-library
(libraries) or zig-program (applications) and it gets picked up
automatically.

This isn’t a weekend throwaway - we use it internally, so it’s going to stick
around and keep getting maintained. It’s MIT and fully open source, and
contributions are very welcome: issues, PRs, feature ideas, or just telling me
what annoys you about it.

Would love your feedback :folded_hands:

8 Likes

Really cool, clean UI too. How often is the index refreshed? I realized that one library I often use had no zig-library tag assigned. And now I’m curious how fast the list gets updated with new packages.

1 Like

Thx :slight_smile: Updated every hour, right now, I’m working on a feature for manually adding and possibly registering items.

If you have any ideas, I’m ready to put them into action.

1 Like

very, very great app, fast and functional. good design. you get it, it’s good

things to look at

  • favicon.ico uses svelte’s icon
  • I used MIT license but it shows it as ‘UNKOWN’ so I might suggest some solutions:
  1. keep it like that and make it modifiable by humans (you, or users request competing info)
  2. when you can’t get the license, before showing unkown, check if root has a LICENSE file and link it
  3. show it next to readme, code and deps
  4. keep it like that (I don’t like making people work :slightly_smiling_face:)

I fixed :slight_smile:

1 Like

I added bandge with last time sync.

1 Like

Very cool :slight_smile:

There seems to be an issue with the license detection, I’m using an unmodified copy of MIT for all my packages which shows up as unknown. E.g. kiesel - zigpkg

it would be nice to have a global package dependency graph like https://zigistry.dev/graph/

I have appreciated the little one-sentence (or so) commentary showcasers have added when tagging with llm - would you be willing to offer a short description of how llms were employed?

1 Like