Some time ago I created a comment in the CG Sync discussion about Chrome moving away from Chrome Apps, and eventually removing the ability to run Chrome Apps on non-Chrome OS systems. This would mean that CG Sync would stop working, because it uses a Chrome App to watch the selected file for changes.
Therefore, I created CG Local. It is basically a copy of CG Sync that works with both Chrome and Firefox, and instead of a Chrome App it uses a Java application to watch the selected file for changes. Besides that, it also makes it easier to work in different files for different puzzles and is completely open-source.
CG Local consists of a browser extension and a Java application. The browser extension can be downloaded via the following links:
The application can be downloaded here and requires Java 8 or newer. From version 1.2.0 onwards the application uses Swing instead of JavaFX, so a JRE or a JDK with JavaFX is no longer required. On top of that, from version 1.2.0 onwards, the application also works on Java versions newer than 8.
How to use
The first step to using CG Local is to make sure that the CG Local application is running. Then, open a puzzle and click on Settings in the sidebar. In the settings panel, toggle Use an external code editor on.
Now, you need to select a local file to synchronize with the CodinGame IDE. Open the CG Local application and choose whether you want to select a file, or use a previously selected file. The latter is only available when you have previously selected a file.
When you have selected a file, it is time to choose the first action. The three options are self-explanatory.
That’s it! You can now start working in your personal editor.
An explanation of the available settings, available via the gear icon in the top-right corner of the application.
Use one file for all puzzles (default: No)
When set to No, the “Previously selected file” will be different for every puzzle. This makes it easier to have a workflow where you use one file per puzzle. If you prefer to use one file for all puzzles, I recommend to set this to Yes.
Auto Play (default: Off)
When set to On, the current puzzle will automatically be played when the local file is changed.
Enable 2-way data binding (default: No)
When set to Yes, the CodinGame IDE will not be set to read-only mode so you can still use it. Changes in the CodinGame IDE will simultaneously be reflected in the local file. When Auto Play is also set to On, the puzzle will only be automatically played if you manually edit the local file.
Default first action (default: Ask me)
This specifies what happens when you select a file. When set to Download or Upload, the First Action part after you select a file is skipped. When set to Ask me, you will be asked what to do with the selected file every time you select a file.
The source for both the extension and the application can be found on GitHub. Contributions are welcome.
The changelog for both the extension and the application can be found on GitHub.