Development Overview
Sprout is built with a mobile first approach using Flutter for its interfaces and a Nest.js backend.
Environment
For development, we recommend using VS Code. The repository includes a VS Code workspace file that sets up recommended extensions and debug configurations. You can launch the debuggers directly from VS Code to run and debug both the Flutter frontend and Nest.js backend.
Useful Commands
To simplify common development tasks, several npm scripts have been created. These commands are run from the project's root directory.
# Build the Docker image
npm run docker:build
# Fixes code styling issues
npm run prettier:write
# Serves mkdocs locally for doc updating
npm run docs:serve
# Creates a reverse TCP proxy for the android emulator so localhost:8001 of the
# emulator = localhost:8001 of the computer.
npm run adb:reverse
# Generates screenshots of the app and updates the respective doc images. This
# must be run in developer mode using the web device and with data you would
# want shown on the screenshots (no personal data!).
npm run screenshot
Contributions
For feature requests and bug reports, please open an issue on GitHub. We appreciate all reports and contributions!