Cosplay/doc/development.md

1.2 KiB

Development

Install uv, and then execute

uv sync

Environment

To get a development environment, run

uv venv

Then, either follow the instruction to activate this venv, or install direnv and create the file

# .envrc
source .venv/bin/activate

Test the environment with python3 -c "import nhf"

To visualize an object, create a file visualize.py, and run cq-editor:

CQ-editor visualize.py

Folder Structure

  • nhf/parts/: Ready-made parts
  • nhf/$WORK/$CHARACTER: Design for an individual character

For each individual character, the __main__.py script stores the overall build entry point and the entry point for all unit tests. Do not put build scripts in __init__.py

Testing

Run all tests with

unittest-parallel

Troubleshooting

Wayland

If there is the error

X Error of failed request:  BadWindow (invalid Window parameter)
  Major opcode of failed request:  3 (X_GetWindowAttributes)
  Resource id in failed request:  0x3
  Serial number of failed request:  28
  Current serial number in output stream:  29

Export the environment variable

export QT_QPA_PLATFORM=xcb