Prerequisites:
First you need to fork this project on GitHub.
Clone your fork:
git clone [email protected]:<you>/misstodon.git
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
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 .
Commit messages should be well formatted, and to make that "standardized", we are using Conventional Commits.
You can follow the documentation on their website.
Push your branch to your misstodon
fork and open a pull request against the main branch.