> For the complete documentation index, see [llms.txt](https://engineering.exile.watch/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://engineering.exile.watch/march-2024/lerna-the-hidden-powerhouse-of-exile.watch/3.-module-registry-a-place-where-packages-get-to-chill.md).

# 3. Module registry (a place where packages get to chill)

<figure><img src="/files/6T3mkUF582HmwgPcv48x" alt="" width="256"><figcaption><p>exile.watch logo</p></figcaption></figure>

*This page is part of* [Lerna - the hidden powerhouse of exile.watch](/march-2024/lerna-the-hidden-powerhouse-of-exile.watch.md#the-toolkit-i-needed-to-make-it-all-happen) *list - 3/7*

***

The [NPM registry](https://docs.npmjs.com/about-npm) is typically the go-to spot for uploading packages.&#x20;

But, with [exile.watch](https://exile.watch/) being an [open-source](/march-2024/to-open-source-or-to-not-open-source.md) project, I got curious about leveraging GitHub's package navigation section:&#x20;

<figure><img src="/files/W0sYQtPEs2jz27jeqioo" alt="" width="170"><figcaption><p>GitHub's repository navigation</p></figcaption></figure>

Turns out, to get your packages listed there, you’ve got to use [GitHub Packages](https://github.com/features/packages).&#x20;

So, I decided to dive into the GitHub Packages NPM registry.&#x20;

This move wasn’t just about getting our packages neatly listed; it was also a chance to really see what it's like to work with GitHub Packages.&#x20;

And honestly, this experience could fill another blog post, which I might just write up someday.

If you are not up to date - there is a new kid on the block when it comes to registries: [JSR](https://deno.com/blog/jsr_open_beta) (JavaScript Registry by Deno)

***

*Moving forward, we'll explore how Lerna aids in module versioning and publishing, and how tweaking `lerna.json` helps enforce commit conventions in our project.*
