XNAT Developer Documentation
Several XNAT dependencies affecting plugins have been updated in XNAT 1.9. Plugin developers should see Updating Plugins for Changes in XNAT Dependencies
Building a Dev Instance
There are multiple ways to stand up a packaged developer instance. Choose the one that is most convenient for you.
XNAT Under The Hood
XNAT Code Structure
Using the XNAT Javascript API (JLAPI)
Using the Form Element Spawner
Restricting Permissions on XAPI Calls with "restrictTo" Annotations
External XNAT Development
External developers can contribute to XNAT in a number of ways: adding functions, services and data types via plugins; adding processing capabilities via pipelines; or adding connectors between their own applications and XNAT data.
With the advent of a mature XNAT API, it is easier for external developers to create a free-standing UI using whatever technology they choose, and connect all functions of that front end to XNAT services using the API. It is even possible, using CORS, to connect that front end to a remote XNAT.
Plugin Development Guide
Uploading Plugins and Tools to the XNAT Marketplace
Container Development Guide
Building Docker Images for Container Service
Pipeline Development Guide
Best Practices for Development
Version Control
XNAT Developer Tools