Skip to content

Releases: journiv/journiv-app

v0.1.0-beta.19

08 Feb 18:33
c67ff77

Choose a tag to compare

What's Changed

❤️ Supporters

Ongoing

One Time

Stay updated

Join subreddit.
Join discord community.
Subscribe to blog posts.

Full Changelog: v0.1.0-beta.18...v0.1.0-beta.19

v0.1.0-beta.18

08 Feb 16:13
44fbeb9

Choose a tag to compare

Withdrawn

Caution

This release has been superseded by 0.1.0-beta.19 and should not be used. A bug was discovered shortly after release. Please upgrade immediately to 0.1.0-beta.19.

What's Changed

❤️ Supporters

Ongoing

One Time

Stay updated

Join subreddit.
Join discord community.
Subscribe to blog posts.

New Contributors

Full Changelog: v0.1.0-beta.17...v0.1.0-beta.18

v0.1.0-beta.17

04 Feb 07:08
b914f14

Choose a tag to compare

Caution

Update 02/15/2026: Day One Import is broken in beta.17 release. You must use earlier beta.16 to do an import from Day One and then follow migration steps below.

Caution

Beta.17: Introduces updated format of handling entry content. Now journiv stores entries in standard quill delta format
You must backup before upgrade and perform migration actions after upgrade if you care about your entries.

What's Changed

Journiv Beta.17 brings complete backend based draft support, markdown typing mode and bug fixes for immich media handling while editing existing entry.

Upgrade Steps

1. Make Postgres DB backup

This will dump your database backup to file named in journiv_full_backup.sql in current working directory. If you are using sqlite then you can just copy the sqlite db file to a safe location.

docker exec -t journiv-postgres-db pg_dumpall -c -U journiv > journiv_full_backup.sql

2. Journiv Export (Optional)

Make a Journiv export of you journals as back up. You should select "All Journals" and you would need to ask all user on your instances to make the export (if you have multiple users). We will keep this as a secondary backup but the guide below prefer direct docker backup and restore.

3. Stop all Journiv containers

This step will vary depending on your setup and how you run containers.

docker compose down

4. Update Journiv version

Update your Journiv version to 0.1.0-beta.17 docker tag.

5. Start all Journiv services

docker compose up -d

Note: After starting your services if you open your browser and see you entries you would not find any entry content. This is expected. Perform the below migration to migrate your entries.

10. Migrate the journal entries

Caution

You must backup as suggested above before migrating.

Run the following command

docker compose exec app ./journiv-admin migrate content

Now go to Journiv in browser and spot check your journal entries to be showing up as expected. You can do this over couple of hours or days. Once you have ensured that there are no issues in displaying journal entries run the following command to clean up older format.

Note: You must do this clean up step before upgrading to any future versions of Journiv.

docker compose exec app ./journiv-admin migrate content --cleanup

You are all done! As always remember to do a hard refresh in browser after Journiv version upgrades.

Features

Fixes

  • fix: Add cli import mocked test and media fixes by @swalabtech in #365
  • fix: Remove plus module from workflow by @swalabtech in #374
  • fix: delete media which are deleted from content delta by @swalabtech in #373
  • [feat] Ability to disable requirement for email_verified claim when using OIDC #375 by @jecal22 in #376
  • fix: media deletion on journal delete by @swalabtech in #377
  • chore: update web for quill delta, markdown writing, drafts, immich fix by @swalabtech in #378
  • fix: local signed url for complete immich copy media by @swalabtech in #379
  • fix: content migration for sqlite by @swalabtech in #381
  • fix: stop text entry from continuously polling for media status by @swalabtech in #382
  • fix: media reslove after text entry loop by @swalabtech in #383

Others

New Contributors

Full Changelog: v0.1.0-beta.16...v0.1.0-beta.17

v0.1.0-beta.16

24 Jan 15:24
e6c88cd

Choose a tag to compare

What's Changed

Blogpost

Engineering Journiv: Scaling Private Media with Signed URLs and Immich

❤️ Supporters

Ongoing

Stay updated

Join subreddit.
Join discord community.
Subscribe to blog posts.

Full Changelog: v0.1.0-beta.15...v0.1.0-beta.16
Full Changelog: v0.1.0-beta.14...v0.1.0-beta.15

v0.1.0-beta.15

24 Jan 07:09
07f8839

Choose a tag to compare

Withdrawn

Caution

This release has been superseded by 0.1.0-beta.16 and should not be used. A bug was discovered shortly after release. Please upgrade immediately to 0.1.0-beta.16, which contains the fix.

Full Changelog: v0.1.0-beta.14...v0.1.0-beta.15

v0.1.0-beta.14

22 Jan 07:13
cbea02b

Choose a tag to compare

What's Changed

  • Immich Integration - Link or Copy your immich media in your journal entries. Watch Demo, Read Doc

Features

Fixes

Others

❤️ Supporters

Ongoing

One time

  • milktoastrat
  • GreenTentacle
  • Pawel

Stay updated

Join subreddit.
Join discord community.
Subscribe to blog posts.

New Contributors

Full Changelog: v0.1.0-beta.12...v0.1.0-beta.13
Full Changelog: v0.1.0-beta.13...v0.1.0-beta.14

v0.1.0-beta.13

22 Jan 03:06
a428dd2

Choose a tag to compare

Withdrawn

Caution

This release has been superseded by 0.1.0-beta.14 and should not be used. A bug was discovered shortly after release. Please upgrade immediately to 0.1.0-beta.14, which contains the fix.

v0.1.0-beta.12

14 Jan 01:34
7b30ce4

Choose a tag to compare

What's Changed

This release contains some critical fixes for v0.1.0-beta.11. Please switch to v0.1.0-beta.12 as soon as possible.

  • chore: bump version to beta.12 by @swalabtech in #288
  • fix: expose env setting through API for frontend #292 by @swalabtech in #293
  • fix: update web for getting max file and signup disable flag from bac… by @swalabtech in #296
  • chore: add plus release in docker build by @swalabtech in #295
  • fix: relax validation to not fail on day one data #297 by @swalabtech in #298
  • fix: Issue in loading plus features which are license protected on some machines.

Full Changelog: v0.1.0-beta.11...v0.1.0-beta.12

v0.1.0-beta.11

12 Jan 01:09
118aa0b

Choose a tag to compare

Caution

Beta.11: Introduces new/updated dependencies and path changes.
You must backup before upgrade and perform maintenance actions after upgrade.

Tip

Journiv Plus Launch: Gives additional features to encourage and thank people for supporting development of Journiv. Plus features are designed with the same privacy-first, self-hosted philosophy as the core Journiv app. Learn more

What's Changed

Journiv Beta.11 brings some dependency changes and updates in preparations for going GA in next one or two releases. Specifically,

  1. Journiv Beta.11 upgrades it's Postgres dependency from 15 to 18. You must upgrade to Postgres 18 as soon as possible. See details below.
  2. Journiv Beta.11 replaces its redis dependency for cache to redis alternative Valkey. You must update your compose file or use official compose file.
  3. Journiv Beta 11 moves all media from data/media to per user-id directory data/media/user-id and adds capability for media de-duplication. You must run media migration script.

Upgrade Steps

1. Journiv Export

Make a Journiv export of you journals as back up. You should select "All Journals" and you would need to ask all user on your instances to make the export (if you have multiple users). We will keep this as a secondary backup but the guide below prefer direct docker backup and restore.

2. Make Postgres DB backup

This will dump your database backup to file named in journiv_full_backup.sql in current working directory. If you are using sqlite then you can just copy the sqlite db file to a safe location.

docker exec -t journiv-postgres-db pg_dumpall -c -U journiv > journiv_full_backup.sql

3. Make Media directory backup

This will dump your media directory to file names journiv_media_backup.tar.gz in your current working directory. If you are using sqlite your container name will be journiv-sqlite-app.

docker exec journiv-postgres-app tar -cz -C /data media | cat > journiv_media_backup.tar.gz

4. Stop all Journiv containers

This step will vary depending on your setup and how you run containers.

docker compose down

5. Delete Postgres DB and Redis data

This steps will vary based on whether you use bind mounts or volume mounts. If you are using sqlite you do not delete your db file. Although you must backup the sqlite db file as mentioned before for later steps.

# adjust the volume name depending on your setup if needed
docker volume rm journiv-backend_postgres_data
docker volume rm journiv-backend_redis_data

6. Update Docker Compose

  • It is strongly recommended you use the compose file from repository for your postrges or sqlite based setup.
  • If you have your custom compose file then please adjust based on the compose files above.
  • Specifically you need to pay attention to the following changes:

7. Start Postgres 18 ONLY

Do not start all Journiv containers. You should start only Postgres and restore your DB first. If you are using sqlite you can ignore this step.

docker compose up -d postgres

8. Restore Postgres DB

Restore your DB from the backup you created earlier.

cat journiv_full_backup.sql | docker exec -i journiv-postgres-db psql -U journiv -d journiv

Confirm that tables were restored

docker exec -it journiv-postgres-db psql -U journiv -d journiv_prod -c "\dt"

9. Start all Journiv services

docker compose up -d

After starting your services you can go to Journiv in your browser and check everything is working and all your entries were stored. But you must do the next step to migrate your media directory.

10. Migrate the media directory

Go inside the Journiv app container

docker exec -it journiv-postgres-app bash

Run the media migration script

python migrate_media_storage.py --migrate --cleanup

You are all done! Open Journiv in your browser and continue Journaling...

Features

Fixes

Others

❤️ Supporters

Ongoing

One time

  • cositech
  • Robert
  • Dylan
  • raphaelzell3
  • S B

Stay updated

Join subreddit.
Join discord community.
Subscribe to blog posts.

New Contributors

Full Changelog: v0.1.0-beta.10...v0.1.0-beta.11

v0.1.0-beta.10

14 Dec 21:44
760de47

Choose a tag to compare

What's Changed

Features

Fixes

  • Allow OIDC Login/Linking for Existing Local Users when Sign-up is Disabled by @patricksmith0330 in #171
  • Fixes celery worker status display, Preserve newline in markdown, Fix delete journal in journal detail page. by @swalabtech in #181
  • fix(timeline): Do not show profile icon on homepage on web #192 by @swalabtech in #197
  • Fixes for user role change and deletion by @swalabtech in #211
  • fix(streak) Fix streak calc for backdated entry by @swalabtech in #213

Others

Upgrade Notes

It is highly recommended you create a Journiv export before upgrading.

❤️ Supporters

Ongoing

One time

Be a part of the journey toward truly personal journaling. Support Journiv!

Full Changelog: v0.1.0-beta.9...v0.1.0-beta.10

Stay updated