@@ -61,8 +61,9 @@ All modules are organized under `/registry/[namespace]/modules/`. Each contribut
6161
6262### Images and Icons
6363
64- - Place images in ` /registry/[namespace]/images/ ` to avoid conflicts
65- - Icons can go in the top-level ` /.icons/ ` directory if used by multiple modules
64+ - ** Namespace avatars** : Place your avatar in ` /registry/[namespace]/images/ `
65+ - ** Module images** : Place other images in ` /registry/[namespace]/images/ ` to avoid conflicts
66+ - ** Module icons** : Can go in the top-level ` /.icons/ ` directory if used by multiple modules
6667
6768---
6869
@@ -74,21 +75,35 @@ If you're a new contributor, create your namespace:
7475
7576``` bash
7677mkdir -p registry/[your-username]
78+ mkdir -p registry/[your-username]/images
7779```
7880
81+ #### Add Your Avatar
82+
83+ Every namespace should have an avatar. Add your avatar image:
84+
85+ 1 . Add a square image (recommended: 400x400px minimum) to ` registry/[your-username]/images/ `
86+ 2 . Supported formats: ` .png ` , ` .jpg ` , ` .jpeg ` , ` .svg `
87+ 3 . Name it something clear like ` avatar.png ` or ` profile.jpg `
88+
89+ #### Create Your Namespace README
90+
7991Create ` registry/[your-username]/README.md ` :
8092
8193``` markdown
8294---
8395display_name: "Your Name"
84- bio: "Brief description"
96+ bio: "Brief description of what you do"
97+ avatar_url: "./images/avatar.png"
8598github: "your-username"
8699status: "community"
87100---
88101
89102# Your Name
90103```
91104
105+ > ** Note** : The ` avatar_url ` should point to your avatar image relative to your namespace directory.
106+
92107### 2. Generate Module Files
93108
94109``` bash
@@ -124,7 +139,7 @@ resource "coder_script" "install" {
124139
125140** Update ` README.md ` ** - Add proper frontmatter:
126141
127- ```` markdown
142+ ``` markdown
128143---
129144display_name: "Tool Name"
130145description: "Brief description of what this module does"
@@ -147,9 +162,7 @@ module "tool" {
147162 agent_id = coder_agent.main.id
148163}
149164```
150- ````
151-
152- ````
165+ ```
153166
154167**Write tests in `main.test.ts`**:
155168```typescript
@@ -167,7 +180,7 @@ describe("module-name", () => {
167180 });
168181 });
169182});
170- ````
183+ ```
171184
172185### 4. Test and Submit
173186
@@ -259,25 +272,16 @@ bun test
259272 - What you changed and why
260273 - Any breaking changes
261274
262- ### PR Template
275+ ### Using PR Templates
263276
264- ``` markdown
265- ## Description
277+ We have different PR templates for different types of contributions. GitHub will show you options to choose from, or you can manually select:
266278
267- Brief description of changes.
279+ - ** New Module** : Use ` ?template=new_module.md `
280+ - ** Bug Fix** : Use ` ?template=bug_fix.md `
281+ - ** Feature** : Use ` ?template=feature.md `
282+ - ** Documentation** : Use ` ?template=documentation.md `
268283
269- ## Type of Change
270-
271- - [ ] New module
272- - [ ] Bug fix
273- - [ ] Feature enhancement
274- - [ ] Documentation
275-
276- ## Testing
277-
278- - [ ] Tests pass (`bun test`)
279- - [ ] Code formatted (`bun run fmt`)
280- ```
284+ Example: ` https://github.com/coder/registry/compare/main...your-branch?template=new_module.md `
281285
282286---
283287
@@ -331,24 +335,15 @@ go build ./cmd/readmevalidation && ./readmevalidation
331335
332336---
333337
334- ## Release Process
335-
336- After your PR is merged, maintainers will handle the release:
337-
338- 1 . ** Create release tags** for changed modules:
339-
340- ``` bash
341- git tag -a " release/$namespace /$module /v$version " -m " Release $namespace /$module v$version "
342- git push origin release/$namespace /$module /v$version
343- ```
338+ ## Versioning Guidelines
344339
345- 2 . ** Version numbers** follow semantic versioning :
340+ After your PR is merged, maintainers will handle the release. Understanding version numbers helps you describe the impact of your changes :
346341
347- - ** Patch** (1.2.3 → 1.2.4): Bug fixes
348- - ** Minor** (1.2.3 → 1.3.0): New features, adding inputs
349- - ** Major** (1.2.3 → 2.0.0): Breaking changes (removing inputs, changing types)
342+ - ** Patch** (1.2.3 → 1.2.4): Bug fixes
343+ - ** Minor** (1.2.3 → 1.3.0): New features, adding inputs
344+ - ** Major** (1.2.3 → 2.0.0): Breaking changes (removing inputs, changing types)
350345
351- 3 . ** Publishing ** : Changes are automatically published to [ registry.coder.com ] ( https://registry.coder.com ) after tags are pushed .
346+ ** Important ** : Always specify the version change in your PR (e.g., ` v1.2.3 → v1.2.4 ` ). This helps maintainers create the correct release tag .
352347
353348---
354349
0 commit comments