--- title: "Workflow for developing software and documentation" --- ## GitHub and Git Our guidelines for how to work with Git and GitHub can be found in [our guidebook](https://guidebook.seedcase-project.org/workflows/commits). ## Workflow helper We use some tools to help automate some of the tasks of working on the project repositories, such as formatting/linting Markdown and Python code or re-building a website or software. They are all found in the [`justfile`](https://just.systems/man/en/) file. Using `justfile` requires opening a Terminal, and how you do that depends on the application you are using. > If you don't know what any of this means, ask the team lead or another > member, and we will help you out. If you use VS Code, you can run this command by using `Ctrl/Cmd-Shift-P` to access the Command Palette, then type out "terminal create new", and finally hit enter. A Terminal will open up in VS Code. You can also type out "terminal focus" and select the option "Terminal: Focus on Terminal View", which will switch your cursor to the Terminal on the bottom. In the Terminal, type out `just` and hit Enter to see a list of commands you can use for helping you develop the project and work better together in a team. Read the descriptions for each of the commands to identify which ones you want or need to use. For instance, if you need to reformat your code or Markdown, or build the website locally, all of these commands are found in the `justfile`. ## Writing Python code While writing Python code, follow these guidelines: - Use Ruff as well as the VS Code Python and Ruff extension linters/formatters (should work automatically) to check that the format of code is written correctly by follow the styling instructions. For instance: - Write docstrings for every function, class, and method. - Include type hints for both inputs and returns. ## Writing documentation (`.qmd` files) When writing documentation, we write in Quarto Markdown (`.qmd`) files. See the [Quarto documentation](https://quarto.org/docs/authoring/markdown-basics.html) for more information on how to write Markdown. To format the Markdown files, as we aim to do before committing our changes, we use VS Code. To format a Quarto file, follow these steps: 1. Open the Command Palette in VS Code by pressing `Ctrl/Cmd-Shift-P`. 2. Type "Visual Mode" and select the option that appears ("Quarto: Edit in Visual Mode"). 3. In Visual Mode, save the file (`Ctrl/Cmd-S`). This will format the file. 4. To go back to the Source Mode (the default mode), open the Command Palette again, type "Source Mode", and select the option that appears ("Quarto: Edit in Source mode"). 5. Now, you're ready to commit your changes. Alternatively, use `Ctrl/Cmd-Shift-F4` keybinding to switch to Visual Mode, then use the same keybind to switch back to Source Mode.