Development Setup

Scope: To be read by everyone who wants to change code, i.e., needs a development setup.

Operating Systems

  • Ubuntu/Debian-based Linux system or
  • Ubuntu/Debian in WSL on Windows

Ways to develop PermaplanT

Right now we have two different ways to develop PermaplanT:

Docker services + local development

Run the database and other services like adminer in Docker containers but run backend and frontend locally. Read more

Dev container

Run everything within the VSCode devcontainer. Read more

IDE

Visual Studio Code Extensions

Frontend

Backend

Rust formatting can be achieved by adding the following to settings.json in VSCode after installing rust-analyzer:

  "[rust]": {
    "editor.defaultFormatter": "rust-lang.rust-analyzer",
    "editor.formatOnSave": true
  }

Browsers

  • Chrome/Chromium 128.0.6613.137 or later
  • Firefox 115.15.0esr (Extended Support Release) or late

Note: You cannot switch between different branches (like mr.permaplant.net, dev.permaplant.net) while using the same browser without resetting the cache as CORS preflights etc. get cached and cause weird errors.