https://github.com/dug22/jjournal
A Jupyter like notebook software for Java
https://github.com/dug22/jjournal
data data-analysis data-science java jshell jshell-repl notebook swing swing-application
Last synced: 1 day ago
JSON representation
A Jupyter like notebook software for Java
- Host: GitHub
- URL: https://github.com/dug22/jjournal
- Owner: dug22
- License: mit
- Created: 2026-04-04T22:58:03.000Z (5 days ago)
- Default Branch: master
- Last Pushed: 2026-04-05T14:56:57.000Z (4 days ago)
- Last Synced: 2026-04-05T16:27:17.105Z (4 days ago)
- Topics: data, data-analysis, data-science, java, jshell, jshell-repl, notebook, swing, swing-application
- Language: Java
- Homepage:
- Size: 139 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
JJournal
===
[](./LICENSE) [](https://github.com/dug22/JJournal/stargazers) [](https://github.com/dug22/JJournal/releases)[](#)
## Overview
JJournal is a desktop based notebook software that allow users to write and execute Java code. JJournal leverages JShell's API, making it possible
to interactively run code snippets, visualize outputs, and document workflows with in a single, user-friendly ecosystem. With JJournal you never have to lose your progress,
as JJournal allows you to save your notebook's work and load it back up to work on later. JJournal utilizes GSON to save and load notebook components
(including cells and their content). Give JJournal a try if your work primarily revolves around simple code testing, analysis, and more.

## Getting Started
```JJournal``` requires Java 23 or higher.
```JJournal``` is distributed as Jar and can be downloaded from the repository's releases tab.
```
curl -LO https://github.com/dug22/JJournal/releases/download/{version}/JJournal.jar
```
Then to launch the software:
```
java -jar JJournal.jar
```
### Initial Setup
You will be prompted with this upon launch: (this will only appear once)
```txt
Before using JJournal for the first time, you will be prompted to provide a list of class paths you wish to use.
Once entered, these class paths will be saved in the following text file: {class-paths_file_path.txt}.
When entering your JAR file paths, use the following format:
\\path\\to\\jar1.jar
\\path\\to\\jar2.jar
Type ‘done’ when you have finished entering class paths, or if you prefer to use JJournal without any dependencies.
If you need to update your class paths later, simply edit the class-paths.txt file. This prompt appears only once, during the initial launch.
```
Optionally, you can provide an input of class paths you wish to use (you can skip this part by typing 'done').
Class paths are the dependencies you wish to use upon launch. Class paths must all point to the jar files of
the dependencies you wish to use. Most of your dependencies are likely to be located in your .m2/repository folder if you use Maven.
If you wish to update your class-paths file, just edit the class-paths.txt file (which is located in the JJournal folder, which is in your user directory),
as this prompt only shows up once on the first launch.
After typing done, JJournal will then launch. Enjoy!
## License
JJournal is released under the MIT license [MIT License](https://github.com/dug22/Image-Shield/blob/master/LICENSE)
```
MIT License
Copyright (c) 2026 dug22
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associateddocumentation
files (the "Software"),to deal in the Software without restriction,
including without limitationthe rights to use, copy, modify, merge,
publish, distribute, sublicense,and/or sell copies of the Software,
and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be included
in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
```
## Contributions
Contributions are welcome! If you have suggestions, bug fixes, or enhancements, please open an issue to share them.