Skip to content

Latest commit

 

History

History
86 lines (55 loc) · 2.7 KB

CONTRIBUTING.md

File metadata and controls

86 lines (55 loc) · 2.7 KB

爱发电 GitHub go.mod Go version Build images License

Contribute to misstodon

Prepare your environment

Prerequisites:

Fork and clone misstodon

First you need to fork this project on GitHub.

Clone your fork:

git clone [email protected]:<you>/misstodon.git

Prerequisite before build

mfm.js

Misskey uses a non-standard Markdown implementation, which they call MFM (Misskey Flavored Markdown).

Misskey has an mfm.rs. If it's completed, I will attempt to compile it to WebAssembly and replace the current implementation.

If you are using Bun:

bun install
bun run build

If you are using Deno:

deno task build

If you are using Node.js:

corepack prepare pnpm@latest --activate
pnpm install
pnpm run build

Test your change

Currently, misstodon lacks proper unit tests. You can create test cases in the pkg/misstodon/provider/misskey directory.

go test github.com/gizmo-ds/misstodon/pkg/misstodon/provider/misskey -v -run TestTimelinePublic

Another simple approach is to run the misstodon server and use tools like Insomnia to test the API.

Start the misstodon server:

cp config_example.toml config.toml
go run cmd/misstodon/main.go start --fallbackServer=misskey.io

Request the API:

curl --request GET --url "http://localhost:3000/nodeinfo/2.0" | jq .

Create a commit

Commit messages should be well formatted, and to make that "standardized", we are using Conventional Commits.

You can follow the documentation on their website.

Submit a pull request

Push your branch to your misstodon fork and open a pull request against the main branch.