bazaar

module
v0.0.0-...-6377de2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 19, 2026 License: MulanPSL-2.0

README

SiYuan community bazaar

English | 简体中文

Bazaar package development samples

Submitting a bazaar package

If you have developed a plugin, theme, icon, template or widget and want to list it in the SiYuan community bazaar, follow these steps:

  1. Fork this repository

    Fork siyuan-note/bazaar on GitHub. If you have already forked, sync with the latest main branch first.

  2. Edit the bazaar package list TXT file

    In the repo root there are five list files: plugins.txt, themes.txt, icons.txt, templates.txt, widgets.txt. Add one line to the file that matches your package type. Format: owner/repo (owner is your GitHub username or org name, repo is the bazaar package repository name).

    • One owner/repo per line, with no extra commas or empty lines.
    • Example: siyuan-note/plugin-sample.
    • Add only one package per PR (across all types combined). Open separate PRs if you need to list multiple packages.
  3. Open a PR

    Commit your changes and open a Pull Request to the main branch of this repo.

  4. Wait for review and merge

    The PR Check workflow runs automatically to verify that the new package meets bazaar rules (e.g. release, required files, metadata fields). Maintainers will also review. Please make changes as requested.

    If the PR Check workflow fails, update your changes using the check output. Do not open a new pull request. Maintainers will manually re-run the PR Check workflow.

  5. Successfully listed

    After the review passes and the PR is merged, the bazaar index will update within minutes and the package will appear in the SiYuan bazaar (you may need to restart SiYuan once to refresh the bazaar index cache).

Updating a bazaar package

No need to open another PR. Release a new version in your package repository. The bazaar index will pull updates automatically.

Under normal circumstances, the community bazaar repo updates the index and deploys every one to three hours. You can check the deployment status on the Stage workflow page.

If it has not been updated for a long time, there may be an issue with the update (for example, the metadata version was not bumped). First check whether your repository has an open Stage check failure issue (label stage-fail); you can also inspect the latest Stage workflow logs.

Changing maintainers

If the original author can no longer maintain a listed bazaar package, a new maintainer may take it over. Changing maintainers requires a dedicated PR (one package per PR) and will only be merged after the original maintainer confirms.

Submission process
  1. Prepare the new repository

    The new maintainer should have a GitHub repository that can publish Releases (common approaches: fork the original repository, or have the original author transfer the repository). The repository must contain a valid bazaar package and publish a Latest Release that includes package.zip.

  2. Edit the bazaar package list TXT file

    In the list file for the corresponding type: remove the old owner/repo line and add the new owner/repo line.

    • Example: change alice/foo-plugin to bob/foo-plugin.
    • The name in the package metadata should stay the same as the previously listed package so users still recognize it as the same bazaar package; the url must be updated to the new repository address.
    • A maintainer change counts as a package update: the manifest version must be higher than the previously listed version, and you must publish a Latest Release with a new package.zip.
  3. Open a PR and ask the original maintainer to confirm

    After opening a Pull Request to the main branch of this repository, @ the original maintainer in the PR, explain why you are taking over and your maintenance plan, and ask them to confirm they agree to the change.

    If the original maintainer does not agree, the PR will not be merged.

  4. Wait for review and merge

    PR Check will verify the new repository against the listing rules. After the original maintainer confirms and checks pass, maintainers will merge the PR. Once merged, the bazaar index will update to the new owner/repo.

About download counts and other statistics

Bazaar package statistics are currently keyed by owner/repo. After a maintainer change, statistics from the old repository (such as download counts) are not inherited by default.

To migrate statistics, all of the following are required:

  1. The new maintainer requests the migration in the PR, or by opening a new issue in this repository;
  2. The original author replies and agrees;
  3. After confirmation, a SiYuan maintainer migrates the data manually on the server side.

Why is the repo named bazaar?

The name is inspired by the book The Cathedral and the Bazaar. The goal is not to be unconventional, but to continue the tradition of open source software.

Other questions

Please open an issue.

Directories

Path Synopsis
actions
check command
index command
stage command

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL