How to make only part of my app available offline (not the whole thing)?

0
Hi community!  I’m having quite a struggle here, I’ve built an app with two modules where most of it relies on REST API calls and uses persistent entities. Now my client wants to be able to use just one specific part of the app while offline (for example: create an audit, view the list of created audits, and add observations), and then sync everything once they go back online.   The problem is: When I create an offline navigation profile, Mendix tries to make the whole app offline-compatible. That generates a ton of errors, since most of my second modules is in microflows and pages depend on online-only data sources. Is there a way for having a hybrid app (mostly online, with specific offline features and pages)?   Thanks a lot in advance,  Cheers !
asked
1 answers
0

hi,


Yes, this is possible, but only in a specific Mendix-supported way.

Key point (important)

Mendix does not support “partial offline” inside a single navigation profile.

When you enable an Offline Navigation Profile, Mendix expects every page reachable from that profile to be offline-compatible. That’s why you’re seeing many errors — this is expected behavior.

Correct and supported solution (Hybrid app)

You must use multiple navigation profiles.

Recommended setup

Create two navigation profiles:

1.Online Navigation Profile (default)

  • Used for most of the app
  • Can use:
    • Microflow data sources
    • REST calls
    • Online-only logic
  • No offline constraints

2. Offline Navigation Profile (limited)

  • Contains only the pages needed offline (Audit, Observations, etc.)
  • Rules:
    • Page data source = Entity (offline-enabled)
    • No REST calls
    • No microflow data sources
    • Only offline-safe widgets and logic

Users switch profiles by:

  • App logic (role-based)
  • Explicit navigation (button → open page in offline profile)
  • Or role separation (recommended)

This is the official Mendix pattern for hybrid apps.

Data sync (how it works)

  • Entities used offline must be:
    • Persistable
    • Offline-enabled
  • Mendix automatically:
    • Stores data locally (SQLite)
    • Syncs changes when the device goes online again

No custom sync logic needed.

What is NOT supported

  • Making only “some pages” offline inside one profile
  • Calling REST APIs from offline pages
  • Using microflow data sources in offline navigation
  • Mixing online and offline pages in the same navigation tree

Summary

  • Mendix does not support partial offline per navigation
  • Hybrid apps are achieved using multiple navigation profiles
  • Offline profile must be strictly isolated
  • This is expected, documented Mendix behavior




answered