This is a Windows Forms application that allows the user to write journal entries, save them locally, and view them later. I made this out of a desire to find a better way to keep a journal, preferring to type instead of physically write, while being able to use such an application offline.
- Ability to create new journal entries - with a title, and a context box filled with text - and save them to your system. They can be saved with a custom name via "Save As", or with an autogenerated name based on system time via a quick save ("Save") feature.
- Backdrop colors for journal entries - can be one of a few pre-defined ones or a custom one (picked via a color picker).
- An easy way to read over previous entries, delete selected ones, and edit them later on.
- Ability to adjust the display font of entries and the folder from which journal entries are read.
- Ctrl+S can be used to quicksave an entry. If it is a new entry, a new file is created, otherwise, the file being edited is overwritten.
- Basic markdown for journal entries can be used - e.g. [b]Text[/b] will bold text, [h1]Header[/h1] will create a large header, etc. Keyboard shortcuts now exist, such as Ctrl+B for bold - more info described below.
- Ability to create custom entry tags (with colors), and tag entries.
- Ability to search for a keyword or tag across all saved entries.
No internet connection required. Journal entries are saved locally; if on a Windows machine, you can use the integrated OneDrive feature to work with your journal across multiple of your machnines.
TBA.
Upon opening the program for the first time, you'll be greeted with a window that looks like this:
Select the directory you'd like the program to read journal entries from. This is also the location where the program quicksaves journal entries you write (more info below).
That done, you'll now be presented with the main menu:
Click on "New Entry" and you'll be presented with this window:
Here, you can write your entry in the contents box, and optionally add in a title for the entry. If filled in, this is what will be listed as the entry's title on the Entry Viewer; it otherwise defaults the the entry's creation date and time. Optionally, you can also set the background color of the entry to either one of a few pre-defined colors or a custom one of your choosing.
To select a custom color, a color picker will be opened upon choosing the option:
You can also format text! In order to do that, you can use the following tags:
- Surround text in [b] and [/b] to make the enclosed text bold. Or you can highlight a selection and press Ctrl+B to make the selection bold.
- Surround text in [i] and [/i] to make the enclosed text italic. Or you can highlight a selection and press Ctrl+I to make the selection italic.
- Surround text in [u] and [/u] to make the enclosed text underlined. Or you can highlight a selection and press Ctrl+U to make the selection underlined.
- There are three header tags, [h1], [h2], and [h3] that can make bigger text.
- You can also combine tags! (e.g. to make bold, italicized text)
- Pressing TAB will create an indent in the entry. (This is a pseudo-indent, adding in just a bunch of spaces, but hey, it works.)
On the top bar, you can load an existing entry to edit, but note that this will discard any unsaved changes you've made to whatever entry you are currently editing.
Here's an example entry of mine that I'll refer to later:
Once you're done with your entry, you can save it in one of two ways:
- Pressing "Save" on the top left or hitting Ctrl+S will do a quicksave of the entry, saving the entry in the directory you specified earlier, with its name being based on the system date and time. If quicksaved more than once, the existing file will be automatically overwritten:
- "Save As" will allow you to save the entry as a custom name, or overwrite an already existing entry of your choosing.
Back at the main menu, go to "View Entries." This will bring you to a list of entires you've already made, listed by their title (if none supplied, the title used is the date/time the entry was created) and with the entry's color as a background:
Here, you can simply view the entry (without editing it), or you can bring the entry's contents into the entry editor and modify it. Double-clicking an entry's name in the list will bring you to the entry viewer:
You can also see the previous and next entries easily, if applicable, by pressing the two buttons on the bottom left/right.
A tagging system is in place which allows you to create "tags" that can be added to your entries, allowing you to narrow down searches (more described below) by filtering entries based on tags they contain.
To start, you can create tags by (starting from the main menu) going to View Entries/Tags -> View Tags -> New Tag. Enter a name and select a color for it, then save the tag - this will make it usable in the tag selector for entries and search function.
To tag an entry in the Entry Creator, click on the combo box adjacent to the Add Tag
button, select a tag, then press the button. That will add it to the current tags in the entry. Double clicking a tag in the tags box will remove it.
You can search for a keyword or tag across all saved entries. This is accessible through Main Menu -> View Entries/Tags -> Search.
Here, you can change the journal directory and font:
The journal directory takes in a folder, while the font option brings you to the font selector. You can change the typeface, as well as the font size. The size will adjust the size of normal text and headers (which are relative to the normal text size) accordingly.
I hope you enjoy and/or get use out of this project! If you have any feedback, don't hesistate to toss something in the issues section.