Development Guide¶
This section provides everything you need to understand, run, customize, and contribute to the OnDemand Loop application. Whether you're fixing a bug, extending functionality, or integrating with a new repository, this guide is your entry point.
Quick Start¶
Clone the repository and start the local environment using the built-in Makefile
targets:
make loop_build
make loop_up
The make loop_up command starts the development environment using Docker Compose. It runs in the foreground, streaming logs from all containers to your terminal. The shell prompt will not return until you stop the environment manually.
To stop the environment, press Ctrl+C. This will gracefully shut down all containers.
Alternatively, in another terminal you can run: make loop_down
Once the containers are running visit https://localhost:33000/pun/sys/loop and log in with the test user ood/ood
.
The documentation is organized by topic to help you find what you need quickly:
-
Architecture and Code
Overview of the system design, key components, and how the codebase is organized. -
Connectors
Details on how OnDemand Loop interacts with external repositories like Dataverse, Figshare, or Zenodo. -
Local Environment
How to set up and run OnDemand Loop locally for development. -
Docker Images
Information on the Docker-based setup and available images. -
Open OnDemand
Deployment, compatibility, and upgrade guidance for running OnDemand Loop within the Open OnDemand environment. -
Dataverse Integration
Specifics on how integration with Dataverse is implemented. -
Contributing a Change
Best practices and workflow for contributing code or documentation. -
GitHub Actions
How CI is handled using GitHub Actions, including testing and deployment workflows.
Each page is self-contained but builds on shared understanding of the architecture and workflows.
If you're new to the project, we recommend starting with: