The FLINT JSON Editor
is a platform-independent desktop app built on Electron
, React
and Webpack
. It is mainly used to create projects from pre-defined packages/set of JSON files. It can be used to create a CFG file by choosing a set of JSON files, or to open a project or set of JSON files either in a scratch based JSON editor or in a form-based editor. It is then used to power FLINT and its models.
- Users can choose a specific type of project and the application would create a set of JSON templates, which can then be easily edited by users. FLINT uses JSON files for a particular type of project like
Standard GCBM Project
,GCBM + Peatland Project
and more, thus easing the process for users. - Users can choose the files for a project and choose to create a CFG file that points to the JSON files which are used for a particular project. It is aided by a
transfer-list
implementation where a CFG file can be created along with the corresponding JSON files. - With the Open Project feature, Users won't need to select JSON files multiple times. We can now open a project which consists of multiple JSON files at one go and the users will also have the flexibility to remove JSON files from the dashboard before launching the editor.
- A ScratchJSONEditor and Form-like Editors has been built from scratch to create/edit JSON files.
- From a UI/UX perspective, a drag-and-drop feature has been added to drag a tab from one position to another.. The directory of the currently opened file is also shown at the title bar of the application.
Have a look at the Wiki Section of the Project to get a deep dive into the whole project and understand it from a user perspective.
Before setting up the local dependenices, make sure that the latest version of NodeJS, NPM and Yarn are installed. Follow the below mentioned steps to get started:
- Clone the repository and enter into the directory:
git clone https://github.com/moja-global/FLINT-JSON-Interface cd FLINT-JSON-Interface/FLINT_JSON_Editor
- Install the dependenices:
npm install
- Start the Project:
npm start
The app is built on ElectronJS which explains that the application is meant to be platform independent. The v1
release can be found on the GitHub Releases.
Have a look at the below steps to get started with reporting bugs as a user or developer:
- Navigate to the main page of the repository where you found the bug.
- Under the repository name, click Issues.
- Click the green New Issue button
- Click the green button Get Started in the Bug Report box.
- Use a clear and descriptive title.
- Follow the template and provide as much information as possible.
- Add ways through which the bug can be reproduced by the maintainer.
- Attach files, screenshots and/or animated GIFs.
- Click the green button Submit New Issue at the bottom right corner.
moja global welcomes a wide range of contributions as explained in Contributing document and in the About moja-global Wiki.
- You can find FAQs on the Wiki.
- If you have a question about the code, submit user feedback in the relevant repository
- If you have a general question about a project or repository or moja global, join moja global and
- submit a discussion to the project, repository or moja global team
- submit a message to the relevant channel on moja global's Slack workspace.
- If you have other questions, please write to [email protected]
Thanks goes to these wonderful people (emoji key):
moja global 📆 |
Abhishek Garain 💻 |
Max Fellows 👀 |
Guy Janssen 👀 |
This project follows the all-contributors specification. Contributions of any kind welcome!
The following people are Maintainers Reviewers Ambassadors or Coaches
Abhishek Garain 💻 |
Max Fellows 👀 |
Maintainers review and accept proposed changes
Reviewers check proposed changes before they go to the Maintainers
Ambassadors are available to provide training related to this repository
Coaches are available to provide information to new contributors to this repository