jsgui


Namejsgui JSON
Version 0.9.3 PyPI version JSON
download
home_pagehttps://github.com/truekenji/jsgui
Summaryjsgui provides a gui to edit json files based on a schema file
upload_time2024-07-09 14:25:43
maintainerNone
docs_urlNone
authorTrueKenji
requires_pythonNone
licenseNone
keywords gui json schema json tkinter decomply visualisation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # JSGUI - A JSON Schema based GUI to create and edit JSON files

JSGUI provides a little tkinter based gui to allow for convenient configuration of json files using a schema file as base.

## Features

- Visualises JSON Schemas using 
  - checkboxes
  - textfields
  - drop-down menus
  - hover tips / tool tip texts
- Allows modification and saving as a .json file conforming to the underlying schema
- Allows to load an existing .json file into an underlying json schema for easy manipulation
- supports the following JSON Schema keywords:
  - properties
  - type
  - $comment
  - enum
  - patternProperties
  - $ref
  - required
  - default
  - <i> ... work in progress to enable more keywords </i>

## Install

`pip install jsgui`

## How to use

Simply start the application to open an empty window. Either drag-and-drop a json schema or use the Load Menu Button. The schema will be loaded with all `required` fields being active and `default` values inserted already.
Modify as you please and click "Save" to save.

After loading a schema you may also load a valid .json file to have its values inserted accordingly.

Note that drag-and-drop will try to guess whether you dropped a schema or a "data" json file by searching for typical schema keywords in the first level of the object.

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/truekenji/jsgui",
    "name": "jsgui",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": "GUI, JSON Schema, JSON, tkinter, decomply, Visualisation",
    "author": "TrueKenji",
    "author_email": null,
    "download_url": "https://files.pythonhosted.org/packages/9b/c2/3fabc7b34c9526353f56b6bf69af1a1ad9bdddcb621b88859301191824e7/jsgui-0.9.3.tar.gz",
    "platform": null,
    "description": "# JSGUI - A JSON Schema based GUI to create and edit JSON files\r\n\r\nJSGUI provides a little tkinter based gui to allow for convenient configuration of json files using a schema file as base.\r\n\r\n## Features\r\n\r\n- Visualises JSON Schemas using \r\n  - checkboxes\r\n  - textfields\r\n  - drop-down menus\r\n  - hover tips / tool tip texts\r\n- Allows modification and saving as a .json file conforming to the underlying schema\r\n- Allows to load an existing .json file into an underlying json schema for easy manipulation\r\n- supports the following JSON Schema keywords:\r\n  - properties\r\n  - type\r\n  - $comment\r\n  - enum\r\n  - patternProperties\r\n  - $ref\r\n  - required\r\n  - default\r\n  - <i> ... work in progress to enable more keywords </i>\r\n\r\n## Install\r\n\r\n`pip install jsgui`\r\n\r\n## How to use\r\n\r\nSimply start the application to open an empty window. Either drag-and-drop a json schema or use the Load Menu Button. The schema will be loaded with all `required` fields being active and `default` values inserted already.\r\nModify as you please and click \"Save\" to save.\r\n\r\nAfter loading a schema you may also load a valid .json file to have its values inserted accordingly.\r\n\r\nNote that drag-and-drop will try to guess whether you dropped a schema or a \"data\" json file by searching for typical schema keywords in the first level of the object.\r\n",
    "bugtrack_url": null,
    "license": null,
    "summary": "jsgui provides a gui to edit json files based on a schema file",
    "version": "0.9.3",
    "project_urls": {
        "Homepage": "https://github.com/truekenji/jsgui"
    },
    "split_keywords": [
        "gui",
        " json schema",
        " json",
        " tkinter",
        " decomply",
        " visualisation"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1b92941d2ef08b07e770885efd3704c54c07504fdb6dcde618519e00558b68e8",
                "md5": "2bb95afd8f058f84c568cd6ee3b932b8",
                "sha256": "84252c4628951a8c5c0fe191cc43af4238c5c295e8290e66b67cd93b8029f50f"
            },
            "downloads": -1,
            "filename": "jsgui-0.9.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "2bb95afd8f058f84c568cd6ee3b932b8",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 12664,
            "upload_time": "2024-07-09T14:25:41",
            "upload_time_iso_8601": "2024-07-09T14:25:41.575197Z",
            "url": "https://files.pythonhosted.org/packages/1b/92/941d2ef08b07e770885efd3704c54c07504fdb6dcde618519e00558b68e8/jsgui-0.9.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9bc23fabc7b34c9526353f56b6bf69af1a1ad9bdddcb621b88859301191824e7",
                "md5": "0ed973c9fe666378eadffd40d3edef71",
                "sha256": "c44f3afa68a1ab567da030955a9218b1bef01b022950e9ba1ba3bf444111e417"
            },
            "downloads": -1,
            "filename": "jsgui-0.9.3.tar.gz",
            "has_sig": false,
            "md5_digest": "0ed973c9fe666378eadffd40d3edef71",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 11698,
            "upload_time": "2024-07-09T14:25:43",
            "upload_time_iso_8601": "2024-07-09T14:25:43.605164Z",
            "url": "https://files.pythonhosted.org/packages/9b/c2/3fabc7b34c9526353f56b6bf69af1a1ad9bdddcb621b88859301191824e7/jsgui-0.9.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-07-09 14:25:43",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "truekenji",
    "github_project": "jsgui",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "jsgui"
}
        
Elapsed time: 0.40809s