Skip to content

publiccodeyml/publiccode.yml

Repository files navigation

The publiccode.yml Standard

A metadata standard to describe software made by or for Public administrations, making it discoverable and understandable for both developers and non-technical users.

What is publiccode.yml

Public Administrations often create valuable software, but reuse is often limited due to poor discoverability or difficulty understanding if a project fits another administration's context.

publiccode.yml solves this by providing a human-readable and machine-readable metadata file.

It answers the questions:

  • What does this project do? (name, description, languages)
  • What is its status? (concept, development, beta, stable, obsolete)
  • Who maintains it and until when?
  • Who to contact for technical/support inquiries?
  • What legal frameworks is it designed for?
  • What are its dependencies?

It is designed to be easy to add to any new project and to grow as the project evolves.

Example

A minimal publiccode.yml file:

publiccodeYmlVersion: "0"
name: My text editor
url: "https://example.com/mysoftware/text-editor.git"
platforms:
  - windows
developmentStatus: development
softwareType: standalone/desktop
description:
  en:
    shortDescription: A lightweight text editor
    longDescription: >
          A lightweight yet powerful text editor designed for everyday use by developers,
          writers, and public administrations. It also supports syntax highlighting.
    features:
       - Syntax highlighting
       - Collaborative editing features
       - Scripting interface
legal:
  license: AGPL-3.0-or-later
maintenance:
  type: community
  contacts:
    - name: Margaret Hamilton
localisation:
  localisationReady: true
  availableLanguages:
    - en
    - de
    - fr

See all available fields...

Finding projects

Finding projects depends on how the search API is structured for every hosting platform. For example, you can find all publiccode.yml on GitHub files by searching using the frontend or the API.

Versioning

Latest release: GitHub release See all versions

This project follows the Semantic Versioning.

Contributing

Feel free to submit Pull Requests, file Issues or open a Discussion.

The Standard's website is built using the Python Sphinx package and deployed on GitHub Pages.

Prerequisites

Local development process

sphinx-build can be used to compile all source file to static html files. Run this command to generate the website:

uv run sphinx-build docs/standard build -c .

then open the relevant file in the build directory with a browser (e.g., build/index.html) to explore the contents.

License

Licensed under the CC0-1.0.