traverse-framework / traverse-framework/registry

Publish small capability: text.slugify (first-contributor friendly)

Open
#485 2 comments 0 reactions 0 assignees View on GitHub
enhancement good first issue help wanted no-spec-needed
Dominant language
Rust
Stars
1
Forks
1
Avg merge
1h 17m
Merged PRs (30d)
217

Description

## Why

The public registry has solid text helpers (`text.detect-language`, `text.redact-entities`, …) but no tiny slugify. That is a perfect first publish for someone who wants to learn the full PR path without inventing a domain model.

## One-PR ask

Publish **`text.slugify@1.0.0`** (or `formatting.slugify` if that fits namespace rules better — match existing `text.*` / `formatting.*` conventions):

- Input: `{ "text": string, "separator"?: string }` (default `-`)
- Output: `{ "slug": string }` — lowercase, ASCII-ish, collapsed separators, trimmed
- Include `capability-src/` with real Rust tests meeting registry coverage gates (`functions` 100%, lines/regions ≥ 95%)
- Use `traverse-cli capability publish` (or the documented scaffold) so `artifact.digest` / `artifact.url` survive
- Run `bash scripts/ci/pre_pr_check.sh ` before opening

Follow [`CONTRIBUTING.md`](https://github.com/traverse-framework/registry/blob/main/CONTRIBUTING.md) and existing `text.*` contracts for shape.

## Out of scope

- Unicode-perfect i18n transliteration libraries (keep deterministic + small; document limits)
- Batching / streaming APIs
- Changing registry CI gates

## Done when

- CI green on the publish PR
- Capability appears in the next index release after merge
- Contract `use_cases` follow the current persona/user-story format if required by FR-011

## Labels

`help wanted` · `good first issue` · `enhancement` · `no-spec-needed`

Contributor guide

Open the contributing guide

Research direction

Start with CONTRIBUTING.md and existing text.* contracts, then use the documented scaffold or traverse-cli capability publish to inspect the expected capability-src/ layout and artifact fields. Add text.slugify@1.0.0, or the namespace permitted by existing conventions, with Rust tests meeting the stated coverage gates, and run bash scripts/ci/pre_pr_check.sh . Done means CI is green and the capability is eligible for the next index release, with use_cases updated if FR-011 requires it.

Written by the indexing model from the issue text.

Assessment

Tech stack
bash, rust, wasm
Domain
api, release, testing
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
76/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.