Skip to content

Commit 5aa08f7

Browse files
committed
Add README.md
1 parent c56f031 commit 5aa08f7

File tree

6 files changed

+41
-0
lines changed

6 files changed

+41
-0
lines changed

README.md

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
![JSON Configuration File Banner](./doc/images/json_configuration_file_banner.png)
2+
3+
# JSON Configuration File
4+
5+
JSON Configuration File is a plugin for Godot that aims to aid reading user input via a JSON file. Using a JSON file as a way to configure your Godot application would allow your users to share configuration files. Minecraft is a remarkable example that uses JSON files to configure certain aspects of the game, such as block models.
6+
7+
The definition of JSON Schemas inspired this plugin. However, instead of using a JSON file to define the structure of a JSON, it takes a coding approach. This approach has the advantage of allowing more features.
8+
9+
## Code example
10+
11+
When using this plugin, you would be able to set up a configuration file with code like this:
12+
![Code example](./doc/images/code_example.png)
13+
This code would verify that this JSON file is valid:
14+
![Valid JSON](./doc/images/valid_json.png)
15+
And it would also detect multiple errors in this JSON file with a single validation process:
16+
![Incorrect JSON](./doc/images/incorrect_json.png)
17+
Please, check the [documentation](./doc/README.md) to learn how to set up your own JSON configuration file.
18+
19+
## Features
20+
21+
This plugin would offer you:
22+
- Twelve different types of properties:
23+
- Booleans
24+
- Real numbers
25+
- Integers
26+
- Percentages
27+
- Strings
28+
- Enums
29+
- Arrays
30+
- Colors
31+
- Objects
32+
- Files
33+
- JSON Configuration Files
34+
- Images
35+
- The ability to detect multiple errors and warnings with a single call to the validation process.
36+
- A representation of the errors and warnings with dictionaries to allow customization of the messages.
37+
- The execution of code during the validation process to transform the data or to create custom tests.
38+
39+
## Contributing
40+
41+
If you want to contribute with a new kind of property or a new feature, please consider also contributing to the [documentation](./doc/README.md) and adding new tests to the [repository of tests](https://github.com/98teg/JSONConfigFileTests) for this plugin.

doc/images/code_example.png

343 KB
Loading

doc/images/incorrect_json.png

162 KB
Loading
134 KB
Loading
98.1 KB
Loading

doc/images/valid_json.png

74.9 KB
Loading

0 commit comments

Comments
 (0)