Choose an integration
Decide which DeGallery package belongs in each part of your application.
DeGallery has separate packages for API access, trusted server workflows, and React UI. Start with the smallest surface that matches the boundary you are building.
| You are building | Install | Runs in |
|---|---|---|
| A browser or framework-neutral API integration | @degallery/sdk | Browser or server JavaScript |
| A trusted backend, job, or upload worker | @degallery/node | Node.js server |
| A React gallery experience | @degallery/react + @degallery/sdk | React client boundary |
Recommended production split
flowchart LR
Server[Server or route handler\n@degallery/sdk / node] -->|gallery payload\nor read token| UI[React application\n@degallery/react]
Server -->|upload intent| Storage[Signed object storage]
UI -->|image URL| Edge[Media edge]
Edge -->|cached transformed image| Visitor[Visitor]Use the server for private credentials, organization authorization, upload intent creation, and private gallery access. Use React for rendering and interaction. Image delivery should resolve from the media edge after the UI has the gallery data.
Package decision rules
Use @degallery/sdk
Choose the framework-neutral client when you need GalleryClient, resource clients, uploads, or event tracking and do not need Node-only helpers.
Use @degallery/node
Choose the Node package for trusted code that reads local files, runs background jobs, or owns API secrets. Never import server credentials into browser code.
Use @degallery/react
Choose the React package when you need Gallery, GalleryProvider, Asset, Lightbox, or useGallery. It is a UI integration, not an authorization boundary.