meta-configurator
MetaConfigurator is a form generator and schema editor for JSON schema, making editing configuration files, research data and schemas easier and more enjoyable.
Science Score: 39.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 1 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.7%) to scientific vocabulary
Keywords
Repository
MetaConfigurator is a form generator and schema editor for JSON schema, making editing configuration files, research data and schemas easier and more enjoyable.
Basic Info
- Host: GitHub
- Owner: MetaConfigurator
- License: mit
- Language: TypeScript
- Default Branch: main
- Homepage: https://www.metaconfigurator.org
- Size: 68.3 MB
Statistics
- Stars: 42
- Watchers: 3
- Forks: 8
- Open Issues: 59
- Releases: 2
Topics
Metadata Files
README.md
[!NOTE]
You are using MetaConfigurator? Please get in touch with us! We are currently applying for funding to turn the tool into a research infrastructure and want to prepare an overview of the existing user base. Besides, we are interested in your ideas, your feedback, and any feature requests.
MetaConfigurator
What is MetaConfigurator?
MetaConfigurator is a powerful, user-friendly schema editor and form generator for JSON Schema. It simplifies the process of creating and editing structured data files such as configuration files and research data, making it accessible to both technical and non-technical users.
Try it out now:
Stable Release: www.metaconfigurator.org
Experimental Version: metaconfigurator.github.io/meta-configurator
What Can MetaConfigurator Do?
MetaConfigurator is a versatile tool that can be used for:
Schema & Data Model Creation or Editing Design and modify JSON Schema structures using an intuitive graphical editor.
Assisted Data Editing Edit JSON and YAML files efficiently with structured guidance based on schemas.
Configurator Builder Generate custom configurators that can be shared with others via pre-configured links.
Why Use MetaConfigurator?
Creating structured data files (or schemas) manually can be complex and error-prone. MetaConfigurator removes this friction by providing an intuitive UI for editing JSON and YAML files based on a schema. Its perfect for both beginners and experts who need a powerful yet easy-to-use tool.
Features & Benefits
Visual Schema Editor Create and edit JSON schemas using a graphical UI.
Flexible Data Editing Edit data using both a GUI and text editor, ensuring maximum flexibility.
Schema Inference & CSV Import Automatically generate schemas from CSV files.
Snapshot Sharing Share pre-configured links with preloaded schema, data, and settings.
Ontology Integration Auto-complete URIs for structured data.
Schema Diagram View Visually explore and modify complex schemas.
Custom UI Modes Adjust the interface to suit different user levels (beginner & advanced modes).
Pre-configured Configurators Generate shareable links that open MetaConfigurator with preloaded settings, acting as a tailor-made configuration tool.
Support for JSON Schema Draft-2020-12 Ensuring compatibility with modern schema definitions.
Code Generation Generate source code from JSON schemas in multiple programming languages (Python, Rust, TypeScript, C++, Java, etc.) using quicktype.
Documentation Generation Generate documentation from JSON schemas, with export to a Markdown file.
Development
MetaConfigurator is built with Vue.js and PrimeVue for an intuitive user experience.
Getting Started
git clone https://github.com/MetaConfigurator/meta-configurator.git
cd meta-configuratornpm installnpm run dev
For more details, check out the Developer Documentation.
User Guide & Examples
Explore how to use MetaConfigurator with real-world examples:
MOF Synthesis Example Demonstrates schema generation, CSV import, and JSON export.
Configurator Builder Learn how to create and share pre-configured MetaConfigurator URLs.
Code Generation Learn how to generate code in multiple programming languages from JSON schemas.
Read the full User Documentation.
Citing MetaConfigurator
If MetaConfigurator is useful for your research, please cite it using the following BibTeX entry:
bibtex
@article{metaconfigurator2024,
year = {2024},
title = {{MetaConfigurator: A User-Friendly Tool for Editing Structured Data Files}},
author = {Neubauer, Felix and Bredl, Paul and Xu, Minye and Patel, Keyuriben and Pleiss, Jrgen and Uekermann, Benjamin},
journal = {Datenbank-Spektrum},
issn = {1618-2162},
doi = {10.1007/s13222-024-00472-7},
abstract = {{Textual formats to structure data, such as JSON, XML, and YAML, are widely used for structuring data in various domains, from configuration files to research data. However, manually editing data in these formats can be complex and time-consuming. Graphical user interfaces (GUIs) can significantly reduce manual efforts and assist the user in editing the files, but developing a file-format-specific GUI requires substantial development and maintenance efforts. To address this challenge, we introduce MetaConfigurator: an open-source web application that generates its GUI depending on a given schema. Our approach differs from other schema-to-UI approaches in three key ways: 1) It offers a unified view that combines the benefits of both GUIs and text editors, 2) it enables schema editing within the same tool, and 3) it supports advanced schema features, including conditions and constraints. In this paper, we discuss the design and implementation of MetaConfigurator, backed by insights from a small-scale qualitative user study. The results indicate the effectiveness of our approach in retrieving information from data and schemas and in editing them.}},
pages = {1--9}
}
FAQ
What happens to the data I type into MetaConfigurator?
MetaConfigurator runs entirely inside your browser - it does not send your schemas, data, or anything you type to any server. The website itself is just a static page delivered by GitHub Pages (like downloading a PDF or image), and all the work happens locally on your computer.
The only exception is if you click the Share Snapshot button. Then, and only then, the snapshot you create is sent to a University of Stuttgart server so you can share a unique link with others.
See our full Privacy Policy for more information.
License
MetaConfigurator is open-source software licensed under the MIT License. See the LICENSE file for more details.
Join the Community & Contribute! If you have feature requests, bug reports, or contributions, feel free to open an issue or submit a pull request on GitHub.
Owner
- Name: MetaConfigurator
- Login: MetaConfigurator
- Kind: organization
- Repositories: 1
- Profile: https://github.com/MetaConfigurator
GitHub Events
Total
- Issues event: 127
- Watch event: 24
- Delete event: 113
- Member event: 2
- Issue comment event: 70
- Push event: 432
- Pull request review event: 5
- Pull request event: 223
- Fork event: 1
- Create event: 124
Last Year
- Issues event: 127
- Watch event: 24
- Delete event: 113
- Member event: 2
- Issue comment event: 70
- Push event: 432
- Pull request review event: 5
- Pull request event: 223
- Fork event: 1
- Create event: 124
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 90
- Total pull requests: 178
- Average time to close issues: 2 months
- Average time to close pull requests: 4 days
- Total issue authors: 4
- Total pull request authors: 3
- Average comments per issue: 0.13
- Average comments per pull request: 0.21
- Merged pull requests: 108
- Bot issues: 0
- Bot pull requests: 52
Past Year
- Issues: 71
- Pull requests: 125
- Average time to close issues: 10 days
- Average time to close pull requests: 3 days
- Issue authors: 2
- Pull request authors: 3
- Average comments per issue: 0.1
- Average comments per pull request: 0.21
- Merged pull requests: 78
- Bot issues: 0
- Bot pull requests: 28
Top Authors
Issue Authors
- Logende (84)
- PaulBredl (5)
- gianluca-sabena (1)
- torogi94 (1)
Pull Request Authors
- Logende (121)
- dependabot[bot] (57)
- MertAliBarlas (2)