Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 

Repository files navigation

Grayscale Packages

The central index for community Grayscale packages.

This repo contains a single registry file that maps package identities to their source repositories. It is the only discovery mechanism for the Grayscale package ecosystem. Packages themselves live in author-owned GitHub repos — this index simply tracks what exists.


How It Works

Grayscale packages are distributed as source. Authors maintain their own repos. This index maps author/package-name to the repo URL:

johndoe/color = github.com/johndoe/grayscale-color devB/color = github.com/devB/grayscale-color-lib alice/math-utils = github.com/alice/grayscale-math

Namespacing is username/package-name. GitHub usernames are globally unique, so naming collisions are impossible.


For Package Authors

Packages are registered via gray publish from your package repo. The tool validates your package and submits an entry to this index.

Your package must meet all of the following requirements:

  • No main() function
  • Every function has a #doc attribute
  • Every .gray file has the required header (see below)
  • A README is present
  • A valid semver git tag exists on the repo (e.g., v1.2.3)
  • Flat structure — a single .gray file or a single directory of .gray files, no subdirectories
  • No transitive dependencies — packages may only depend on Grayscale's stdlib

Required File Header

// Package:     color
// Version:     1.2.3
// Author:      John Doe
// GitHub:      github.com/johndoe
// Email:       john@example.com
// License:     MIT
// Description: Color manipulation utilities for Grayscale

This header is the metadata. There is no manifest file.


For Package Users

gray add github.com/johndoe/color@1.2.3 # install specific version gray add github.com/johndoe/color # install latest tagged version gray dump color # remove a package gray update color@1.4.0 # update to specific version gray update color # update to latest gray list # show installed packages gray search query # search this index gray restore # re-fetch all from .registry

Packages are downloaded into a packages/ directory in your project and imported with:

import pkg"color"


Deprecation

Packages with no new version tag in 6+ months are flagged as potentially unmaintained. Archived repos are flagged immediately. Deprecation is a warning — packages are never auto-removed. Publishing a new version clears the flag.


This Repo Is Machine-Managed

Entries in this index are added and updated by the gray publish tool. Do not edit the index file by hand.


About

Central registry for the Grayscale package manager

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors