Day One Command Line Interface (CLI)
IFTTT Integration (Day One 2.0 only)
Tools (Not officially supported by Day One)
Importer for Momento to Day One script by Scott C.
Import from iMood Journal script by Simon El Nahas.
iMessage-to-Day-One import Script for importing from the Messages app to Day One by Bryan Anderson.
Slogger Social logging script for Day One by Brett Terpstra
DayOneViewer Basic Windows Client with Dropbox sync (use at your own risk; we have had reports of data loss with this – so please back up first)
JRNL—Read, write and search your DayOne journal from the command line.
socImport—Send Twitter/Instagram/Facebook posts to Day One Journal.
day-one-narrato-import—Import Narrato entries into Day One.
Automating Instagram Posts into Day One—Great overview of various options for importing Instagram posts into Day One.
TaskPaper Scripts—Scripts for importing TaskPaper to-do lists into Day One.
Journaley—Windows client for Day One journal data.
Memiary Import—Import tool for getting Memiary entries into Day One.
day one_to_markdown.rb—Retain the metadata of Day One while having a sidecar file that you can work with in your writing environment of choice.
todoist_dayone—script to log completed Todoist tasks to Day One.
vi2DayOne—A simple Mac OS shell script to aid in converting viJournal entries into DayOne entries.
Reportermd—Convert ReporterApp entries to markdown and import into DayOne.
Twitter-to-DayOne—Script to fetch all your tweets and make a DayOne entry.
Command Line Interface
The Day One CLI makes it possible for programs and scripts to interact with a Day One Journal from the command line.
$ ./dayone new
Waits for input from stdin then creates a new entry in the default journal
$ echo "an entry from yesterday" | ./dayone -d="yesterday" new
Creates a new entry using yesterday’s date with the specified text
$ ./dayone -d="25/03/2011 5:30PM" -s=true new < ~/Desktop/note.txt
Creates a starred entry using the contents of note.txt
$ echo "an entry in my other journal" | ./dayone -j=~/Documents/WorkJournal.dayone new
Creates an entry in a journal other than the default
To see available options and examples, use the
$ ./dayone --help
Currently, there is one supported command: “new”. The “new” command allows users to write scripts to import entries from another program or to write utilities that allow for automated entry creation.
The CLI automatically uses the Day One Journal that is configured in the Day One Preferences window. You can specify a different Journal using the
When creating a new entry, the current time is used by default as the entry creation date. To specify a different date, use the
--date option. This option accepts dates in most formats, including some natural language strings such as
yesterday. The system’s locale is used when deciding how to parse a date.
Uninstalling the CLI
To uninstall the CLI, run this command:
Import Vesper entries to Day One by Geoff Cleary
Logging With Day One Geek Style by Brett Terpstra
System Service Clip to Day One by Brett Terpstra
Import from MacJournal (Sample Ruby script)
Export to HTML, Text and more In addition to the Mac App Export to text.
Import from Racounter iPhone app by Pawel Witan
DayOne Windows Client by Nitin Khanna
A script to add timezone information to older entries by Al Pasechnik
jrnl Command Line writing with more options.
Also see the Day One Uses Page