Hi, Just like js has npm and go has third party packages. Is there something for roc?
I got to know about this project last year but at that time I didn't know rust at all. Hence I focused on contributing to other open source projects using javascript, nodejs, go. Now I'm somewhat familiar with rust, can you please explain if I can create and publish modules or packages for roc? Just like we can do for nodejs using npm.
There has been a lot of design work on the roc package manager which is intended to be builtin to the cli, would you be interested in working on that?
If you would like to make a roc package, there are a few examples here https://github.com/lukewilliamboswell/roc-awesome?tab=readme-ov-file#roc-packages-
Here is the design doc I think... I've lost the zulip thread
https://docs.google.com/document/d/1rklo1p2jETKVxhkAtClcMH8N4sHIgePm2JgJ3ciBR60/edit?usp=drivesdk
And here is a WIP branch that starts on it, but I think Richard is currently working in other things https://github.com/roc-lang/roc/pull/7180
@Luke Boswell Just finished reading the design doc. I would love to work on package manager, although not sure if aim capable of working on it but aill give it a shot. Also I want to build packages too but how can I make sure if I'm building something that is not already available? You may not have an issue with multiple packages for the same thing but if there's something already available then I can work on building a better one.
This page is a list of pretty much every public Roc package and platform: https://hasnep.github.io/roc-packages
You can check there to see if the thing you want to make already exists :grinning_face_with_smiling_eyes:
can you please explain if I can create and publish modules or packages for roc?
Currently you can just publish to an url (like on github), here's a github workflow that does most of the work.
Awesome, @Anton Can't we keep github page where we can discover all the packagees, just like @Hannes did, but that is a manual process. I'm thinking of a process where package creator can submit the link as a PR and then we can just automatically update the github page to show the updated list of packages?
If we can do this, then do let me know I can work on this
Yeah, we could create a new repo for that under roc-lang. I'm just going to wait for others to weigh in on this before we get started.
Awesome, will you create a new thread for this?
Can you create a new topic under ideas with a brief description?
sure, doing that right now
The roc-packages page is actually already semi-automated. Each Monday it gets every GitHub repo that has Roc as the main language and also has at least one release (to exclude stuff like everyone's AoC repos). It also has some manual overrides that I update sometimes, but I rarely need to.
Last updated: Jul 06 2025 at 12:14 UTC