nephthys/docs/contributing.md
Mish 2fe9460e31
Begin migration to blockkit (#164)
* Add blockkit

* Use blockkit for header components

* Add get_header_components()

* Add a APP_HOME_VIEWS list to reduce repetition

* Re-add `buttons = Actions()`

bc that merged wrongly somehow

* Remove Question Tags view button

* Switch to blockkit for dashboard view

Also splits get_ticket_status_pie_chart into two functions!

* Add some form of codebase contributing documentation

* Rename helper.py => dashboard.py

* Fix caption for fallback pie image
2026-02-16 23:19:21 +00:00

1.4 KiB

Nephthys contributing guide

This is not a full guide by any means, but it documents some bits about the codebase that are useful to know.

Getting started

See the README for instructions on setting up a development environment for the bot!

Pre-commit hooks

It's recommended to install the pre-commit hooks (for code formatting and import sorting):

uv run pre-commit install

However, if you aren't able to do that, you can run them manually (after making your changes) with:

uv run pre-commit run --all-files

Branches, PRs, and commits

See the Hack Club Contribution Guidelines for information about the GitHub Flow, how to name commits, and similar things.

File structure

All the Python code lives in nephthys/. Take a look around to get a feel for what all the subfolders are.

Tip: You can ignore a lot of of the subfolders most of the time, and just look at the ones relevant to your feature/change.

We prefer splitting code up into many Python files over having large files with a lot of code.

Slack Block Kit

We now have the blockkit library (!!) for building fancy Slack messages and views with buttons, dropdowns, etc. All new code should use blockkit, but note that existing code likely still uses raw JSON objects.