JournivJourniv
User Guide

Mobile App Guide

Connect and use the Journiv mobile apps for iOS and Android.

Journiv has native mobile apps for iOS and Android that provide full offline support and all the features available in the web app. This guide covers connecting the mobile apps to your self-hosted instance and using them effectively.

Download the Apps

  • iOS: Available on the App Store (coming soon)
  • Android: Available on Google Play (coming soon)
  • Direct Download: Check GitHub Releases for direct APK/IPA downloads

Connecting to Your Server

Step 1: Get Your Server URL

Your server URL depends on your setup:

  • Local Network: http://192.168.1.1:8000 (replace with your server IP)
  • Domain: https://journiv.example.com
  • Custom Port: http://192.168.1.1:8080 (if you changed the port)

Step 2: Add Server in App

  1. Open the Journiv app
  2. Tap "Add Server" or "Connect to Server"
  3. Enter your server URL
  4. Tap "Connect"

The app will validate the connection and save your server URL.

Step 3: Log In

  1. Enter your username/email and password
  2. Or tap "Sign in with OIDC" if using OIDC/SSO
  3. Complete authentication

Your credentials are stored securely on your device.

Features

Offline Support

The mobile apps work completely offline:

  • Create Entries: Write entries without internet connection
  • View Cached Data: Access previously loaded journals and entries
  • Upload Media: Queue media uploads for when connectivity is restored
  • Automatic Sync: Changes sync automatically when online

All Web Features

Everything available in the web app works on mobile:

  • Multiple Journals: Create and manage journals
  • Rich Text Entries: Full formatting support
  • Mood Tracking: Log moods with timestamps
  • Writing Prompts: Browse and use prompts
  • Search: Full-text search with filters
  • Analytics: View insights and statistics
  • Media: Upload images, videos, and audio
  • Tags: Organize entries with tags

Mobile-Specific Features

  • Offline Mode: Full functionality without internet
  • Background Sync: Automatic synchronization in background
  • Push Notifications: Reminders and updates (coming soon)
  • Biometric Auth: Fingerprint/Face ID login (coming soon)
  • Widgets: Home screen widgets (coming soon)

Troubleshooting

Can't Connect to Server

Check:

  • Server URL is correct (include http:// or https://)
  • Server is accessible from your device's network
  • Firewall allows connections on port 8000
  • CORS is enabled if accessing from different domain

Solution:

  • Test URL in mobile browser first
  • Verify server is running: docker compose ps
  • Check server logs: docker compose logs journiv

Offline Sync Not Working

Check:

  • Internet connection is active
  • Server is accessible
  • App has sync permissions

Solution:

  • Pull down to refresh
  • Check sync status in settings
  • Restart app if needed

Media Not Uploading

Check:

  • File size within limits (MAX_FILE_SIZE_MB)
  • Supported file types
  • Sufficient storage space

Solution:

  • Compress images before uploading
  • Check server logs for errors
  • Verify media directory permissions

Best Practices

Server Configuration

For mobile app access:

  1. Use HTTPS: Set up reverse proxy with SSL/TLS
  2. Enable CORS: Required for web app, helpful for mobile
  3. Set Strong Passwords: Use secure authentication
  4. Configure OIDC: For enterprise SSO integration

App Usage

  1. Regular Sync: Let app sync in background
  2. Offline Writing: Write entries offline, sync later
  3. Media Management: Compress images before uploading
  4. Backup: Use export feature for regular backups

Security

Credentials Storage

  • Credentials stored securely using device keychain/keystore
  • Tokens encrypted at rest
  • Automatic token refresh

Network Security

  • HTTPS recommended for production
  • Certificate pinning available (configurable)
  • Secure token transmission

Getting Help

Need assistance with the mobile apps?