Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dayone 2 support? #409

Closed
ahmedelgabri opened this issue Feb 8, 2016 · 30 comments

Comments

@ahmedelgabri
Copy link

commented Feb 8, 2016

Dayone 2 was released a couple of days ago and I wonder if it's supported or planned to be supported?

Thanks

@CodyKochmann

This comment has been minimized.

Copy link

commented Feb 8, 2016

For now, a good stop gap is just using Day One original for the imports. I've been able to import my journal from day one multiple times without any problems.

On Feb 8, 2016, at 10:09 AM, Ahmed El Gabri notifications@github.com wrote:

Dayone 2 was released a couple of days ago and I wonder if it's supported or planned to be supported?

Thanks


Reply to this email directly or view it on GitHub.

@MinchinWeb

This comment has been minimized.

Copy link
Collaborator

commented Feb 8, 2016

Dayone 2, from what I understand, uses a database for a backend, where Dayone 'original' used a folder of XML files. Has anyone seen the new database format documented anywhere? That would probably be the first step...

@ahmedelgabri

This comment has been minimized.

Copy link
Author

commented Feb 8, 2016

@CodyKochmann that's what I'm doing right now.

@CodyKochmann

This comment has been minimized.

Copy link

commented Feb 8, 2016

@ahmedelgabri I haven't seen any documentation on it. If you look at their faq, on their todo list is both support for IFTTT and it looks like their looking towards a web interphase as well which means (assuming from their previous actions) there's a good chance they'll make a web api for it.

Link to Day One 2 FAQ

That being said, I think our next avenue is sending it through IFTTT. I could see them doing something like todoist has where you can import into different lists from different actions.

@ahmedelgabri

This comment has been minimized.

Copy link
Author

commented Feb 9, 2016

Not sure if this useful or not but the CLI path has changed too http://help.dayoneapp.com/local-path-for-cli/

@CodyKochmann

This comment has been minimized.

Copy link

commented Feb 9, 2016

@ahmedelgabri every little bit helps, I didn't know it moved so thank you.

@ahmedelgabri

This comment has been minimized.

Copy link
Author

commented Feb 9, 2016

So I tried to change the journal path to the one in the Day One help and it seems that jrnl works perfectly with Day One 2 after this change, at least I can add new entries. without the need to import from the classic version

@maebert

This comment has been minimized.

Copy link
Collaborator

commented Feb 10, 2016

Good to know @ahmedelgabri, thanks for figuring this out! I'll update the docs accordingly.

@maebert maebert added the day one label Feb 10, 2016

@ahmedelgabri

This comment has been minimized.

Copy link
Author

commented Feb 10, 2016

So adding works, but editing creates a new entry. These are the things I tried until now @maebert

@maebert maebert added this to the 2.0.0 milestone Feb 11, 2016

@maebert

This comment has been minimized.

Copy link
Collaborator

commented Feb 11, 2016

Mh, had a brief look at it and know where the issue is. I'll fix it tomorrow morning :)

@ahmedelgabri

This comment has been minimized.

Copy link
Author

commented Feb 12, 2016

Great, thanks! 👍

@awinecki

This comment has been minimized.

Copy link

commented Feb 22, 2016

I've also changed the path like @ahmedelgabri, like specified on DayOne official site, and kind of works.

I can create entries seamlessly using jrnl, they somehow get synced very quickly to the desktop app and DayOne Sync.

However, I cannot browse entries using jrnl -n 10 or jrnl @tag. If you run it right after you create an entry, it'll show, but after a moment it's gone (visible only in DayOne). That's a bummer cause it's nice to grep the journals and do other text operations from CLI.

I've found out the DayOne 2 uses SQLITE as a backend for data. I guess the jrnl viewing command could be updated to fetch entries from the SQLITE db and list them as usual.

dayone2sqlite

@underscorephil

This comment has been minimized.

Copy link

commented Mar 12, 2016

Howdy!

The Day One 2 indeed using SQLite for all the entires. The auto import feature is working awesomely for for creation. The files typically get consumed into the DB in a bout 3-4 seconds. But, some additional work will be needed to navigate the tables. I have been working on a python module for interacting with day one. It currently supports creation of entries for both v1 and v2. I am looking into extending the module to support querying existing entries(maybe editing/exporting in the future).

At some point I was planning to take a swing at seeing what jrnl looks like using dayonelib as the interface to day one, but have not had the time yet.

https://github.com/underscorephil/dayonelib

@ahmedelgabri

This comment has been minimized.

Copy link
Author

commented Mar 28, 2016

I switched laptops recently and I can't make jrnl work with Day one 2 anymore, anything changed recently? I'm using the same exact config as my old laptop.

{
  "tagsymbols": "#",
  "editor": "nvim",
  "timeformat": "%Y-%m-%d %H:%M",
  "highlight": true,
  "journals": {
    "default": {
      "journal": "~/Library/Group Containers/5U8NS4GX82.dayoneapp2/Data/Auto Import/Default Journal.dayone"
    }
  }
}
@underscorephil

This comment has been minimized.

Copy link

commented Mar 29, 2016

@ahmedelgabri I have been having issues with the auto import folder since the last update. I am in communication with the Day One support team. I will let you know what I hear back!

@underscorephil

This comment has been minimized.

Copy link

commented Apr 4, 2016

I heard back that they have identified the issue and are hoping to have it fixed in the next release. I have a slight concern that with the release of IFTTT support and that this issue was not caught in QE that they may be moving focus away from the not as in-vogue forms of automation. How the next few months play out may impact how this integration should take place.

@demianturner

This comment has been minimized.

Copy link

commented Jul 4, 2016

Hi, I'm also looking for the best way to access Dayone2's datastore. As mentioned above they've moved to a DB backend, in fact CoreData, Apple's default persistence lib. There's an enormous amount of Cocoa code and infrastructure around this lib, I think directly accessing the data by doing SQLite queries is the wrong approach and would be bad design. I was told by Dayone support that the previous version of the app had Spotlight integration implemented, however disabled by default as many users had privacy concerns. Spotlight importers work by default with NSDocument based (file) apps but there is an official alternative approach for CoreData (db) apps.

I think if a Spotlight importer was created for the previous version of the app, it would not be a huge amount of work to update it for CoreData, however 3rd party devs would have to make it clear to the d1 team this feature was desired. Any data extracted from the app using the Spotlight importer (only the 1st party dev can create and sign this component) is added to the macOS meta data store, which is easily queried using Cocoa's NSMetadataQuery or the Mac CLI tool mdfind (which the Cocoa layer wraps). Here's the relevant docs

https://developer.apple.com/library/mac/documentation/Carbon/Conceptual/SpotlightQuery/Concepts/QueryingMetadata.html#//apple_ref/doc/uid/TP40001848-CJBEJBHH

Finally it should be mentioned that the above APIs are ancient, see the Carbon reference in the URL. The d1 team has implemented CoreSpotlight for the current iOS version of the app, this is a modernisation of the latter lib but that only exists on iOS for the moment. So, I'm thinking campaigning for Spotlight to be re-integrated to the Mac app would not be so difficult. Which would make it easier for all of us to access the data again :-)

@openmedi

This comment has been minimized.

Copy link

commented Oct 18, 2016

May I ask what the status of this is? There seems to be a CLI coming for interacting with day one 2 which might help with this?

@empireshades

This comment has been minimized.

Copy link

commented Jan 5, 2017

happy new year. Inquiring about the status of this as well .. Thanks.

@pacificera

This comment has been minimized.

Copy link

commented Feb 12, 2017

I have given up on Day One providing end-point encryption and I'm looking to move all those journals to jrnl. What is the best way to export my day one journals to jrnl? Also, if I have some multimedia in my entries what is the best way to continue to view it with jrnl?

@danielhoherd

This comment has been minimized.

Copy link

commented May 20, 2017

Updated DayOne 2.0 CLI link: http://help.dayoneapp.com/day-one-2-0/command-line-interface-cli

Glancing over it, the CLI appears to only allow creation of DayOne 2.0 entries, not exporting or reading existing entries. There is a way in the GUI to export to JSON, but it doesn't look like that's available from the CLI.

@openmedi

This comment has been minimized.

Copy link

commented Jun 29, 2017

With today's announcement of DayOne Premium this issue becomes very important.

@danielhoherd

This comment has been minimized.

Copy link

commented Jul 2, 2017

I'm not sure if this is what @openmedi was getting at, but now that DayOne 2 is a service, the apps are free on iOS and macOS. API access is limited to premium accounts, which are paid.

@openmedi

This comment has been minimized.

Copy link

commented Aug 16, 2017

Any news on this? As far as I can see, those of us, who have been using Day One 2 before the premium announcement have been granted the "Plus" status, which means we're grandfathered in into the features we already own. Everything should work as it did before is what I take from this, so the ideas put forth in this thread should still be somewhat valid.

Going forward what I'd like to see would be the ability to cleanly import a day one 2 json export package. Even though this is not a sync but a one time thing, it would still ease my mind a lot, if there was some mechanism with which to get my data out of Day One 2 and into an open source journaling solution such as jrnl.

@jameskerti

This comment has been minimized.

Copy link

commented Dec 9, 2018

Any movement here?

I used to use DayOne. Now I use jrnl, and I like it. When I switched, I was under the impression from reading the website and official docs that jrnl works with DayOne, which I took to mean the current version, not the deprecated one.

It would be great to get my DayOne entries into jrnl.

Obviously it isn't happening urgently but I'm wondering if it's on the road map somewhere.

Thanks again for a great application.

@MinchinWeb

This comment has been minimized.

Copy link
Collaborator

commented Dec 10, 2018

Would it be possible to provide a sample DayOne 2 export? I don't have access the app myself.

@DanTheColoradan

This comment has been minimized.

Copy link

commented Dec 10, 2018

I included geodata. Don't worry, not my address. Let me know if there is anything I should redact. I think those UUIDs are for the journal entry, and not my MacBook.

Day One Version: 2.9.2

"metadata" : {
  "version" : "1.0"
},
"entries" : [
{
  "text" : "# Day One Export Example\n\nNORMAL TEXT\n**BOLD TEXT**\n*ITALIC TEXT*\n\n\n![](dayone-moment:\/\/6C886CB69DC14EB9A8B568678C0FDD32)\n\nPicture is above this text\\. This is normal text\\. There is a single line above the picture\\.\n\n#example #tag #are #at #the #bottom",
  "starred" : false,
  "location" : {
    "region" : {
      "center" : {
        "longitude" : -104.89109802246094,
        "latitude" : 39.604099273681641
      },
      "radius" : 75
    },
    "localityName" : "Greenwood Village",
    "country" : "United States",
    "timeZoneName" : "America\/Denver",
    "administrativeArea" : "CO",
    "longitude" : -104.89109802246094,
    "placeName" : "6340 S Fiddlers Green Cir",
    "latitude" : 39.604099273681641
  },
  "creationOSName" : "macOS",
  "uuid" : "0A3BFC9847BD4173881DE43749F23B58",
  "creationOSVersion" : "10.14.1",
  "duration" : 0,
  "modifiedDate" : "2018-12-10T16:56:18Z",
  "richText" : "{\"meta\":{\"version\":1},\"contents\":[{\"text\":\"Day One Export Example\\n\",\"attributes\":{\"line\":{\"header\":1}}},{\"text\":\"\\n\"},{\"text\":\"NORMAL TEXT\\n\"},{\"text\":\"BOLD TEXT\",\"attributes\":{\"bold\":true}},{\"text\":\"\\n\"},{\"text\":\"ITALIC TEXT\",\"attributes\":{\"italic\":true}},{\"text\":\"\\n\\n\"},{\"embeddedObjects\":[{\"identifier\":\"6C886CB69DC14EB9A8B568678C0FDD32\",\"type\":\"photo\"}]},{\"text\":\"\\n\"},{\"text\":\"Picture is above this text. This is normal text. There is a single line above the picture.\\n\\n#example #tag #are #at #the #bottom\"}]}",
  "creationDate" : "2018-12-10T16:52:14Z",
  "creationDevice" : "Raven II",
  "creationDeviceType" : "MacBook Pro",
  "photos" : [
    {
      "fnumber" : "(null)",
      "orderInEntry" : 0,
      "width" : 4962,
      "type" : "jpeg",
      "identifier" : "6C886CB69DC14EB9A8B568678C0FDD32",
      "height" : 3508,
      "md5" : "4179c44375cf73df4a8747291155ee00",
      "focalLength" : "(null)"
    }
  ],
  "weather" : {
    "sunsetDate" : "2018-12-10T23:35:34Z",
    "temperatureCelsius" : 3.9000000953674316,
    "weatherServiceName" : "HAMweather",
    "windBearing" : 150,
    "sunriseDate" : "2018-12-10T14:09:45Z",
    "conditionsDescription" : "Mostly Sunny",
    "pressureMB" : 1025,
    "visibilityKM" : 16.093439102172852,
    "relativeHumidity" : 17,
    "windSpeedKPH" : 7,
    "weatherCode" : "partly-cloudy",
    "windChillCelsius" : 2
  },
  "timeZone" : "America\/Denver",
  "tags" : [
    "tag",
    "bottom",
    "are",
    "the",
    "example",
    "at"
  ],
  "creationDeviceModel" : "MacBookPro14,3"
}
]}
@jameskerti

This comment has been minimized.

Copy link

commented Dec 11, 2018

@MinchinWeb

This comment has been minimized.

Copy link
Collaborator

commented Dec 11, 2018

Thanks @DanTheColoradan @jameskerti

DayOne "Classic" identified each entry with a UUID, so I'm not surprised they're maintained that.

@micahellison micahellison removed this from the 2.0.0 milestone Jul 7, 2019

@stale

This comment has been minimized.

Copy link

commented Aug 6, 2019

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Aug 6, 2019

@stale stale bot closed this Aug 13, 2019

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
You can’t perform that action at this time.