0.1.8 • Published 2 years ago

configjoy v0.1.8

Weekly downloads
-
License
-
Repository
-
Last release
2 years ago

horizontal_blue(2)

configjoy

configjoy is a command line tool and GUI for structured, type safe editing of configuration files. Behind the scenes it uses Protocol Buffers to define the schema for these files, which allows you to automatically generate serialization code in most programming languages.

Note: configjoy is currently in active development and hasn't yet reached it's 1.0 release. Expect breaking changes on upgrade.

It has three main use cases:

1. Open a well known config file with built in structured editing support

configjoy package.json Screen Shot 2022-10-04 at 4 31 45 PM

2. Auto generate a .proto schema for an unknown config file

configjoy books.json

Screen Shot 2022-10-06 at 9 38 02 AM

Screen Shot 2022-10-06 at 9 39 07 AM

3. Use your own schema to edit an existing config file

configjoy --schema schema/books.proto books.json

Screen Shot 2022-10-06 at 9 41 40 AM

This utility was developed at CerebralFix.

Contributors

Nic Barker

See CONTRIBUTING.md

Custom config file usage guide

1. Create a proto file

configjoy --schema schema/books.proto --files data/books.json

2. Admin interface for the file is auto generated

Screen Shot 2022-10-03 at 4 12 07 PM

Admin interface live updates the backing .json data file

https://user-images.githubusercontent.com/2264338/188754293-faa6aa77-e02e-441c-85cc-36861fe19e46.mov

C# Integration allows Unity to hot reload the data

https://user-images.githubusercontent.com/2264338/188754365-1f0116a1-7ef1-4c72-95f4-4a7c652a2a43.mov

Interface usage guide

  • Cut, copy and paste are enables when array elements are selected. Paste will insert the copied data after the last selected array element.
  • Undo & Redo are a custom implementation and will undo array element deletion, field value changes etc.
  • All changes are propagated on blur i.e. when you click your cursor outside of an input field.