Skip to main content

Convert a JSON export from Day One into individual notes for Obsidian.

Project description

Day One to Obsidian Converter

Build Status codecov PyPI - Version PyPI - Python Version

Convert your Day One journal entries into Markdown files compatible with Obsidian.

Features

  • Complete Data Migration: Transfers all text, images, and metadata (including creation dates) from Day One entries.
  • Markdown Formatting: Converts Day One entries into Markdown format, making them compatible with Obsidian and other Markdown editors.
  • Tag Support: Migrates all tags from Day One, allowing for easy categorization and search within Obsidian.
  • Image Embedding: Automatically transfers and embeds any images from Day One entries into the Markdown files.

Prerequisites

Before using dayone-to-obsidian, ensure you have the following:

  • Python 3.10 or higher installed on your machine.
  • Your Day One journal exported in JSON format.
  • Obsidian installed if you wish to immediately start using your migrated files in Obsidian.

Installation

pip install dayone-to-obsidian

Usage

Follow these steps for conversion:

  1. Prepare Your Day One Export: Export your Day One journal entries to a JSON file or directory containing multiple JSON files following the manual.

  2. Run the Conversion: Open a terminal or command prompt and execute the CLI with the appropriate options. The command structure is as follows:

    dayone-to-obsidian run --json /path/to/your/dayone_export.json --target /path/to/target_directory [--force] [--tag-prefix=prefix] [--tag=tag1] [--tag=tag2]
    
    • --json: Path to your Day One export JSON file or directory. If not specified, it defaults to the current directory.
    • --target: Path to the directory where converted Markdown files will be saved. By default, a new folder is created in the current directory.
    • --force: Force the overwriting of existing journal folder.
    • --tag-prefix: Prefix for tags, allowing customization of how tags are formatted in the converted files.
    • --tag: Additional tag(s) to add to all entries. This option can be repeated to include multiple tags.
    • --help: Display the help message.

    Example command:

    dayone-to-obsidian run --json ./DayOneExport/Journal.json --target ./ObsidianNotes --tag-prefix=DayOne/ --tag=Imported --tag=Journal
    

    This command specifies a Day One JSON export file, sets the target directory for the converted Markdown files, adds a prefix to all tags, and includes additional tags for each entry.

  3. Import to Obsidian: Once the conversion process is complete, manually move the generated Markdown files to your Obsidian vault directory.

Support

If you encounter any issues or have suggestions for improvements, please open an issue in this GitHub repository.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dayone_to_obsidian-0.4.10.tar.gz (17.4 kB view details)

Uploaded Source

Built Distribution

dayone_to_obsidian-0.4.10-py3-none-any.whl (15.9 kB view details)

Uploaded Python 3

File details

Details for the file dayone_to_obsidian-0.4.10.tar.gz.

File metadata

  • Download URL: dayone_to_obsidian-0.4.10.tar.gz
  • Upload date:
  • Size: 17.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.4

File hashes

Hashes for dayone_to_obsidian-0.4.10.tar.gz
Algorithm Hash digest
SHA256 9bf78ed6b87f0427dd4e642d28f9bdfaaae7257f9902f959db0b77d67f56c2e7
MD5 8d08b9d95bab8b06e7105a6905199fa3
BLAKE2b-256 381e88c5d8eccfa6cc4498c33c38759487279a8f85eb723b0903944ad810597a

See more details on using hashes here.

File details

Details for the file dayone_to_obsidian-0.4.10-py3-none-any.whl.

File metadata

File hashes

Hashes for dayone_to_obsidian-0.4.10-py3-none-any.whl
Algorithm Hash digest
SHA256 3e9f22e6a9def387cbf1ad6df1235be6e515ccccb01af912829588e7353e79f6
MD5 e1b058cdcb21a4bc769c135cb8ae4612
BLAKE2b-256 f01e3e0675f234d8dd6206a6b936441a41cd4675e646d746b019a971b23f6896

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page