velt-self-hosting-data-best-practices
Velt Self-Hosting Data Best Practices
Comprehensive implementation guide for Velt's self-hosting data feature in React and Next.js applications. Contains 15 rules across 7 categories, prioritized by impact to guide automated code generation and integration patterns.
When to Apply
Reference these guidelines when:
- Storing sensitive user-generated content on your own infrastructure
- Configuring VeltProvider dataProviders prop for comments, attachments, reactions, recordings, or users
- Choosing between endpoint-based (config) and function-based (custom) data providers
- Building backend API routes to handle Velt data provider requests
- Implementing database storage patterns (MongoDB, PostgreSQL) for Velt data
- Uploading attachments to S3 or other object storage via multipart/form-data
- Debugging data provider events with the dataProvider subscription
- Migrating from Velt-hosted storage to self-hosted storage
Rule Categories by Priority
| Priority | Category | Impact | Prefix |
|---|---|---|---|
| 1 | Core Setup | CRITICAL | core- |
| 2 | Comment Data Provider | HIGH | comment- |
| 3 | Attachment Data Provider | HIGH | attachment- |
| 4 | Additional Providers | MEDIUM | provider- |
| 5 | Backend Implementation | MEDIUM | backend- |
| 6 | Debugging | LOW-MEDIUM | debug- |
Quick Reference
1. Core Setup (CRITICAL)
core-provider-setup— Configure VeltProvider dataProviders prop with correct initialization ordercore-response-format— Return the required response shape from all data provider handlers
2. Comment Data Provider (HIGH)
comment-endpoint-provider— Use endpoint-based config for comment data providercomment-function-provider— Use function-based comment data provider for full control
3. Attachment Data Provider (HIGH)
attachment-multipart-provider— Handle attachment uploads with multipart/form-data
4. Additional Providers (MEDIUM)
provider-user-resolver— Implement read-only user data provider for PII protectionprovider-reaction-recording— Configure reaction and recording data providersprovider-retry-timeout— Configure retry policies and timeouts per data provider
5. Backend Implementation (MEDIUM)
backend-api-routes— Structure backend API routes for data provider endpointsbackend-database-patterns— Implement database storage with upsert and proper indexingbackend-s3-attachments— Store and delete attachments in S3-compatible object storage
6. Debugging (LOW-MEDIUM)
debug-data-provider-events— Monitor data provider events for troubleshooting
How to Use
Read individual rule files for detailed explanations and code examples:
rules/shared/core/core-provider-setup.md
rules/shared/comment/comment-endpoint-provider.md
Each rule file contains:
- Brief explanation of why it matters
- Incorrect code example with explanation
- Correct code example with explanation
- Source pointers to official documentation
Compiled Documents
AGENTS.md— Compressed index of all rules with file paths (start here)AGENTS.full.md— Full verbose guide with all rules expanded inline
More from velt-js/agent-skills
velt-crdt-best-practices
Velt CRDT (Yjs) collaborative editing best practices for real-time applications. This skill should be used when implementing collaborative features using Velt CRDT stores, integrating with editors like Tiptap, BlockNote, CodeMirror, or ReactFlow, or debugging sync issues. Triggers on tasks involving real-time collaboration, multiplayer editing, CRDT stores, or Velt SDK integration.
28velt-comments-best-practices
Velt Comments implementation patterns and best practices for React, Next.js, and web applications. Use when adding collaborative commenting features, comment modes (Freestyle, Popover, Stream, Text, Page), rich text editor comments (TipTap, SlateJS, Lexical), media player comments, or chart comments.
27velt-setup-best-practices
Velt collaboration SDK setup guide for React, Next.js, Angular, Vue, and HTML applications. Use this skill when setting up Velt for the first time, configuring VeltProvider, implementing user authentication with authProvider and JWT tokens, initializing document collaboration with setDocuments, or debugging Velt setup issues. Triggers on any task involving Velt installation, VeltProvider configuration, auth token generation, document identity setup, or project structure for Velt integration — even if the user doesn't explicitly mention "setup".
26velt-activity-best-practices
Velt Activity Logs implementation patterns and best practices for React, Next.js, and web applications. Use when adding real-time activity feeds, custom activity logging, audit trails, CRDT debounce configuration, or server-side activity management via REST API.
7velt-rest-apis-best-practices
Velt REST API v2 and webhook best practices for server-side integration. Use when calling Velt REST API v2 endpoints, generating JWT tokens for frontend authentication, handling Velt webhooks (comment events, huddle events, CRDT updates), managing users/documents/organizations via REST, or implementing server-side Velt operations. Triggers on any task involving Velt REST API, JWT token generation for Velt, Velt webhooks, x-velt-api-key headers, or server-side comment/notification/activity management — even if the user doesn't explicitly say 'REST API'. For the Python SDK (velt-py) for self-hosting, see velt-self-hosting-data-best-practices instead.
5velt-single-editor-mode-best-practices
Velt Single Editor Mode implementation patterns and best practices for React, Next.js, and web applications. Use when implementing exclusive editing access, editor/viewer role management, access request handoff flows, element-level sync control, timeout-based editor transfer, or multi-tab editing restrictions.
5