Oh hell yeah on the Day One import! I’ve got 9 years of entries I want to take out of that ecosystem. I wish I wasn’t traveling for work, otherwise I’d get it installed and take it for a spin. Thanks for all the hard work!
Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
-
No low-effort posts. This is subjective and will largely be determined by the community member reports.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
Congrats on liberating your memories and thoughts. I look forward to your feedback.
I've been working on a journaling app for a couple months that uses CalDAV for syncing. I found out there's a underutilized part of the VCALENDAR component for journaling and couldn't find a good journaling app with sync that supported it. Got as far as a compotent TUI app, snyc, journal management, wrote a text editor. I am not a developer, btw, I'm a datacenter engineer. I've been working on edge-cases and dragging my feet on moving on to a GUI. But this honestly sounds so much better. And if there will be mobile apps, this is definitely going in my stack.
That sounds like a fun project. I did initially do some research in VJOURNAL but found it rather limiting for all the stuff I want to build in Journiv. I wrote a blogpost about it earlier: https://www.journiv.com/blog/why-journiv-doesnt-use-caldav The application is cross platform so it work as PWA and you can use it as mobile devices as PWA without any issues. Many Journiv users are already doing so. Native mobile apps are ready and will be coming soon once the project becomes sustainable to cover the development cost and expenses around it: https://github.com/orgs/journiv/discussions/184#discussioncomment-15180557
Thank you for the reply. I really enjoyed reading all of the blog posts you have on the site. I really enjoy what you're doing with the project and look forward to becoming a contributing patron soon. I'm genuinely surprised at the polish and well thought out development with so very little support given so far. I had a question regarding performance in Trivalent, but didn't know if I should field that here or in github or possibly somewhere else. If you can let me know, I'd really appreciate it.
Thanks. Yes, I am hoping the support grows and the project becomes sustainable to grow. Sure, anywhere is fine.
If this supported daylio (and the mood tracking that daylio uses), I would immediately switch.
Daylio has been requested before (and I just saw it has 4 upvote, so I am guessing its pretty popular ?) https://github.com/journiv/journiv-app/issues/58
Daylio kind of mood tracking i.e. extensive with custom mood and with activities will come soon.
Import from Daylio is possible although I am not sure how much the demand is. The github repo has lot of import from request from different apps and import does take a lot of time to build as most apps have obscure formats and nuances to deal with or on purpose don't support simple portable formats to lock down user data. For example see the circus one has to go through to get meaning from Daylio export: https://www.joelotter.com/posts/2022/01/daylio/
Thanks for the details - I'm sure it's intentional that Daylio makes it quite the circus to go through. I'm excited about Journiv in general, so I might switch over once mood tracking is all set. However, it'd still be great to be able to import Daylio as I have around 2,000 entries :)
Daylio import will come. The blogpost above has done a lot of hard work of decrypting their obscurely secure export :) The larger lift for Journiv is building a native activity tracking system this needs db schema design update and changes. This is what I will be working on very soon once that is done export from Daylio will follow.
Thank you :)
Is Journiv still having issues with export? I couldn't get it to work (tried following all the stuff I could find about the export issues and folder permissions) - so I gave up. A shame because I like the app.
Can you clarify the export issue you are seeing or please report it on github? The export/import has been working well. I am guessing you might have tried it out with quickstart docker compose or Synology NAS guide from mariaus hosting which does not have complete docker compose i.e. it is missing celery-workers container which are needed to create import/export jobs and run them async. Couple of users tripped on this so I will be improving the error message to specifically say they need to run complete stack right not the error message is very cryptic low level detail which is hard for anyone to understand what went wrong.
Thanks. I took another look at your documentation and decided to re-install everything. You're right, I'd used the simple "test" compose script from your site. After a little trial and error, I got everything working properly with this:
services:
redis:
image: redis:7-alpine
container_name: journiv-redis
restart: unless-stopped
volumes:
- /mnt/dietpi_userdata/docker-data/journiv/redis-data:/data
command: redis-server --appendonly yes
journiv:
image: swalabtech/journiv-app:latest
container_name: journiv
ports:
- "8111:8000"
environment:
- SECRET_KEY=XXX
- DOMAIN_NAME=XXX
- CELERY_BROKER_URL=redis://redis:6379/0
- CELERY_RESULT_BACKEND=redis://redis:6379/0
- REDIS_URL=redis://redis:6379/0
volumes:
- /mnt/dietpi_userdata/docker-data/journiv/data:/data
restart: unless-stopped
depends_on:
- redis
celery-worker:
image: swalabtech/journiv-app:latest
container_name: journiv-celery-worker
entrypoint: []
command: ["celery", "-A", "app.core.celery_app", "worker", "--loglevel=info"]
environment:
- SECRET_KEY=XXX
- DOMAIN_NAME=XXX
- CELERY_BROKER_URL=redis://redis:6379/0
- CELERY_RESULT_BACKEND=redis://redis:6379/0
- REDIS_URL=redis://redis:6379/0
volumes:
- /mnt/dietpi_userdata/docker-data/journiv/data:/data
restart: unless-stopped
depends_on:
- redis
- journiv
Exports are working!
Nice. You can just follow this doc and it will be smoother. https://www.journiv.com/docs/installation/docker Celery beat is still missing from the compose. Journiv uses that for scheduled tasks. Also if you like Journiv and plan to use it I will recommend moving to Postgres because that is preferred DB and many upcoming features will utilize pg vector etc.
This sounds cool. Is speech to text, with saved audio and linked transcript part of the roadmap?
Hello, yes it is.
Amazing, thanks.
I'd love if this had end to end encryption so I could host it on my VPS. Is this on the roadmap?
Hello, Encryption at rest is on roadmap. End to end encryption is very time intensive to build correctly and would be an overkill for a large percentage of users who are self hosting Journiv so as of now there are no plans for e2e.
ok thanks for the reply. I understand that this would take very much work but I wouldn't be comfortable hosting something with potentially very sensitive data on a remote server where the admins could see the files. Unfortunately hosting on my Raspberry Pi at home isn't possible because of this error when starting the docker containers (which seems to be a Raspberry issue).
What is the difference between your encryption at rest and disk/file system encryption? Would the use case be that someone stealing the server couldn't access the files?
That makes sense. As of now I have not considered the VPS approach you mentioned but only thought of self hosting but I can see how in VPS world it is not safe. Encryption at rest can be obtained by various means
- Have the disk encrypted like you said.
- Have the db encrypt by a admin provided secret but in this case all users of instance share that secret and admin can technically decrypt other user data.
- Have the app do encryption based on user provided password. This gives per user secret and encryption. So encryption at rest will be something among this preferably (3) one.
Am I able to import notes from evernote or upnote? I switched to upnote recently but got a warning from them about not supporting grapheneos for much longer
No that is not supported. Journiv is not a note taking app and a journal app and the focus is to build it as a journal app even if it limits its target audience. There are many note taking apps out there and many in self hosted world. My personal favorite is Obsidian which I am happy with.