Zen-notebook

A Distraction Free Journal/Notebook/Diary for Writing Practice

View the Project on GitHub eristoddle/zen-notebook

Zen Notebook

Join the chat at https://gitter.im/eristoddle/zen-notebook

Update - 1/10/2020

Well, I got busy after a while away. I am upgrading the code so I can create phone apps also. And then on to bug fixes and features. So currently on this branch, running the gulp commands will only run or build the example app until I get the Zen Notebook code updated for the new stack.

The old version of the app using Angular 1 and Node Webkit will always be available on the legacy-angular1-nodewebkit branch. And last time I checked everything built correctly, but I will not be supporting that version.

The new version will be able to open the data files of the old version. I am just changing the code stack.

A Distraction Free Journal/Notebook/Diary for Writing Practice

When I was 14, I bought Writing Down the Bones by Natalie Goldberg. I have kept up with writing practice off and on for over two decades now. Many times in the last few years, I have searched for something in an electronic version that I could use easily from a laptop, when I wanted to. Something I could just click on and start writing with. If I got caught up in the setup and configuration of the damn tool, the moment could be gone fast, because at the same time I like to write, I am also a nerd at heart and can tweak out on this type of stuff. So the only solution is to get to the writing quickly and not have to worry about anything getting in the way of that.

I found Red Notebook and ZenPen in the same week and an idea just came together.

And of course, being the nerd again, thought of all the other writing tools I would want distraction free and simplified. So the feature wish list keeps growing.

Screenshot

Screencast

YouTube Screencast of Zen Notebook

Features Currently in Executable Version

The application is still in alpha. The most recently version will be in the source code and in the Mac build because I am currently working on a Mac. I will keep the executables updated on a regular basis when I have added important features or fix major bugs. But I can tell I didn’t start creating executables until I had a version I trusted to use on a daily basis as a replacement for Red Notebook. And most of the beta version punch list items come from bugs I found and ideas I had while using it every day.

Download Zen Notebook Executables

These are in zip format. They are not installers. I do plan on working on installation package eventually, but for now, you can unzip the correct file for your operating system and run the executable for in the resulting folder. For the Mac version, just unzip the file and in it you will find a Zen Notebook app you can drag to your Application Folder

Mac

Download

Windows

Currently updating codebase. No build available.

Linux

Currently updating codebase. No build available.

Beta Version Punch List

Future Roadmap and Wish List

This is my wish and idea list

Development

  1. Pull down the repo
  2. Run npm install gulp ionic cordova electron -g unless you already have those installed globally
  3. Run npm install
  4. ionic serve will run the local Ionic Server.
  5. ionic build will build the web, Android and IOS apps.
  6. gulp electron:all will build the Windows, OSX, and Linux binary applications.
  7. gulp electron:build will build installation applications for Windows, OSX, and Linux

Note that electron-builder used to create the installers has it’s only requirements based on which platform you are building on listed here

Note that currently I am still converting the old app into the new Ionic app and until that is done, the process able will only run an example boilerplate application.

I am following the conventions of Ionic and Electron for the most part, so for further info, please see their respective documentation.

Don’t worry about the Laravel backend for now. It has never been production ready and I started work on it for the future: phone app project syncing, PanDoc compiling on the server, collaboration, etc. But currently all functionality is through local files. Also, as it stands now, the server part of the application was last updated two years ago and I have plenty of work migrating the code and fixing all the bugs before I even get to that again.

That being said, until I have a server or Dropbox syncing in place, I am not sure how useful the phone apps that result will be. I currently sync the files my desktop apps use by saving the notebook.json file to a Dropbox folder and I just point the app to that file on whichever computer I am on. It has worked for 2 years now and I have moved through all three platforms. And currently I jump back and forth from Windows to Linux almost daily.

Technologies Used

Random Windows Issues

Okay, I kept running into read-only issues and EPERM errors on Windows.

I found a lot of the time it had to do with having an electron app running I couldn’t see that owned the dist folder. Check the task manager.

To build the OSX on Windows, you need to be running cmd as Admin.

Software Features I May Emulate

Component Ideas