Open Registers provides the ability to work with objects based on schema.json
.
Open Registers is a system for managing registers in Nextcloud. A register is a collection of one or more object types that are defined by a schema.json
. Registers sort objects and validate them against their object types.
Registers can store objects either directly in the Nextcloud database, or in an external database or object store.
Registers provide APIs for consumption.
Registers can also apply additional logic to objects, such as validation that is not applicable through the schema.json
format.
- 📦 Object Management: Work with objects based on
schema.json
. - 🗂️ Register System: Manage collections of object types.
- 🛡️ Validation: Validate objects against their types.
- 💾 Flexible Storage: Store objects in Nextcloud, external databases, or object stores.
- 🔄 APIs: Provide APIs for consumption.
- 🧩 Additional Logic: Apply extra validation and logic beyond
schema.json
. - 🗑️ Object Deletion | Soft deletion with retention and recovery | Data safety, compliance, lifecycle management
For more detailed information, please refer to the documentation files in the docs
folder:
- appinfo/routes.php: Defines the routes for the application.
- lib: Contains all the PHP code for the application.
- src: Contains all the Vue.js code for the application.
- docs: Contains documentation files.
Open Register is a powerful object management system for Nextcloud that helps organizations store, track, and manage objects with their associated metadata, files, and relationships. Born from the Dutch Common Ground initiative, it addresses the need for quickly deploying standardized registers based on centralized definitions from standardization organizations.
Open Register emerged from the Dutch Common Ground movement, which aims to modernize municipal data management. The project specifically addresses the challenge many organizations face: implementing standardized registers quickly and cost-effectively while maintaining compliance with central definitions.
- Decentralized data storage
- Component-based architecture
- Standardized definitions
- API-first approach
Open Register makes these principles accessible to any organization by providing:
- Quick register deployment based on standard schemas
- Flexible storage options
- Built-in compliance features
- Cost-effective implementation
Feature | Description | Benefits |
---|---|---|
💾 Object Storage | Flexible storage backend selection per register | Storage flexibility, system integration, scalability |
📝 Audit Trails | Complete history of all object changes | Compliance, accountability, change tracking |
⏰ Time Travel | View and restore previous object states | Data recovery, historical analysis, version control |
🔒 Object Locking | Prevent concurrent modifications | Data integrity, process management, conflict prevention |
🗑️ Soft Deletes | Safely remove objects with recovery options | Data safety, compliance, mistake recovery |
🔗 Object Relations | Create and manage connections between objects | Complex data structures, linked information, dependencies |
📎 File Attachments | Manage files associated with objects | Document management, version control, previews |
🔍 Content Search | Full-text search across objects and files | Quick discovery, unified search, advanced filtering |
🏷️ Automatic Facets | Dynamic filtering based on object properties | Intuitive navigation, pattern discovery, smart filtering |
✅ Schema Validation | Validate objects against JSON schemas | Data quality, consistency, structure enforcement |
📚 Register Management | Organize collections of related objects | Logical grouping, access control, process automation |
🔐 Access Control | Fine-grained permissions management | Security, role management, granular control |
⚡ Elasticsearch | Advanced search and analytics capabilities | Performance, insights, complex queries |
📋 Schema Import & Sharing | Import schemas from Schema.org, OAS, GGM, and share via Open Catalogi | Standards compliance, reuse, collaboration |
🔔 Events & Webhooks | React to object changes with events and webhooks | Integration, automation, real-time updates |
🔄 Data Extension | Automatically include related entities in responses | Efficient data retrieval, reduced API calls, complete context |
✂️ Data Filtering | Select specific properties to return | Data minimalization, GDPR compliance, efficient responses |
🔍 Advanced Search | Filter objects using flexible property-based queries | Precise filtering, complex conditions, efficient results |
🗑️ Object Deletion | Soft deletion with retention and recovery | Data safety, compliance, lifecycle management |
For detailed information about each feature, please visit our documentation.
- Nextcloud 25 or higher
- PHP 8.1 or higher
- Database: MySQL/MariaDB
[Installation instructions]
[Support information]
This project is licensed under the AGPL-3.0 License - see the LICENSE file for details.