Feature Request: Implement File Upload via API for Branding and Language Resources
Nobody has claimed this yet.
- Dominant language
- Java
- Stars
- 1.1k
- Forks
- 564
- Avg merge
- 2d 2h
- Merged PRs (30d)
- 29
Description
Summary
Add API support for uploading front-end resources (HTML templates, CSS files) and language packs to Dataverse, utilizing the existing file handling mechanisms already present in the Dataverse API infrastructure.
Currently, deploying front-end customizations and language packs to Dataverse environments requires using SCP or similar shell-based tools. This presents significant challenges in complex network environments that utilize bastion hosts and multiple security gateways. The current approach:
- Complicates deployment processes in secure environments
- Requires direct shell access which may not always be available
- Creates unnecessary operational overhead for routine updates
Proposed Solution
Extend the existing Dataverse API capabilities (which already support zip file uploads and unpacking for datasets) to handle:
- Branding logo upload
- HTML template and CSS uploads for branding customizations
- Language pack (languages.zip) file uploads
This would leverage existing infrastructure and patterns already proven in the Dataverse API ecosystem rather than creating entirely new mechanisms.
Benefits
- Simplifies deployment in complex network environments
- Enables automation through standard API calls
- Aligns with existing patterns familiar to Dataverse developers
- Supports CI/CD pipelines without requiring shell access
- Reduces operational complexity for routine updates
- Provides a more consistent developer experience across Dataverse customization tasks
Implementation Notes
The solution could utilize Base64 encoding for transferring code files with special characters
The implementation pattern should mirror the existing dataset upload functionality
Authentication and authorization should follow existing Dataverse API security patterns
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the existing Dataverse API entry points for zip uploads and dataset unpacking, then review how authentication and authorization are applied. Done means API support covers branding logos, HTML/CSS resources, and languages.zip; the issue names no files or tests.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- api, backend
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100