source-cooperative / source-cooperative/source.coop
[Proposed Feature] DOIs
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 26
- Forks
- 9
- Avg merge
- 1d 7h
- Merged PRs (30d)
- 42
Description
Summary
Implement a DOI registration service that allows data product owners to register DOIs and assign for their datasets through DataCite.
Proposed Solution
Create user flow (ideally a single in-page modal) on product editing page that allows users to register DOIs. All DOIs previously registered through MLHub will be grandfathered in.
User Flow
- User selects "Register DOI" on their data product
- System pre-populates form with existing metadata
- User reviews and customizes DOI-specific fields
- Payment processing for registration fee (TBD on how we handle payments and it's likely that this feature is depenent on us figuring that out first)
- Automatic API call to DataCite for DOI creation
- DOI displayed on product page in Product Details pane
Core Features
- Possibly Source's first paid service: Paid DOI registration through DataCite API integration
- Citation Generation: Will assist with supporting citation formats (APA, MLA, Chicago, BibTeX)
- DOI metrics: Track usage, manage relationships between data products and publications
Technical Requirements
DynamoDB Schema Updates:
- TBD on how much DOI metadata we should cache in our own database as much of it is redundant for what we already have.
DataCite Integration:
- RESTful API client for DataCite registration
- Metadata validation against DataCite schema
- Error handling and retry logic
- Webhook support for status updates
Payment Processing: (DOIs are likely dependent upon a separate feature that allows us to manage payments)
- Secure payment gateway integration
- Invoice generation and management
- Refund handling for failed registrations
Benefits
- Improved discoverability in academic databases
- Better tracking of dataset usage and impact
- Compliance with funding agency requirements
- Improved data governance and tracking
Implementation Priority
Success Metrics
- Number of DOI registrations per month
- Citation tracking and impact metrics
- Integration with external academic databases
Future Enhancements
- Integration with ORCID for author identification
- Automated citation tracking and impact metrics
- Integration with academic publishing workflows
- Support for dataset versioning with DOI suffixes
- Bulk DOI management for large organizations
Technical Considerations
- Ensure DOI metadata stays synchronized with product updates
- Implement proper error handling for DataCite API failures
- Plan for DataCite API rate limits and quotas
- Handle international character sets in metadata
- Implement proper backup and recovery for DOI datax
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
The issue names no files or tests. Start at the product editing page and inspect its existing metadata flow, then review the DataCite registration requirements and unresolved payment dependency. Done would require an agreed scope covering the user flow, schema, API integration, payment handling, and citation or metrics features.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- api, backend, database, frontend, payments
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100