Intelligent Caching
GLC includes a proprietary intelligent caching system designed to dramatically improve launcher performance by reducing repeated downloads and reusing assets safely where possible.
This system works automatically in the background. In most cases, you don’t need to touch anything — but understanding it gives you a huge advantage.
What Intelligent Caching Does
When your launcher loads remote assets (images, audio, media, etc), the engine automatically downloads them once and stores them locally. On future runs, it reuses the local version instead of downloading it again.
This results in:
- ⚡ Faster launcher load times
- 🌐 Reduced bandwidth usage
- 🧠 Smarter asset handling across sessions
Instead of blindly caching everything, the system intelligently decides what should be reused and what should stay dynamic.
How It Works (Simple Version)
Step 1: Detect Remote Assets
The engine scans your launcher configuration and detects any external URLs used by objects such as images, videos, icons, and music.
Step 2: Store Locally
These assets are downloaded and stored inside a dedicated cache directory on the user’s system.
Step 3: Rewrite to Local
Once cached, the system automatically replaces the remote URL with a fast local path when the launcher runs.
Step 4: Validate Smartly
The system checks file size, timestamps, and server metadata to determine whether the cached version is still valid or needs refreshing.
The Cache Bust Setting (Important)
Every object has a Cache Bust option available inside its settings (Object Properties Dialog).
When enabled, the object will bypass the caching system completely and always load fresh data from the source.
When Cache Bust is OFF (Default)
The asset is cached and reused. This is ideal for static content such as:
- Background images
- Logos and icons
- UI assets
- Music files
When Cache Bust is ON
The asset is treated as dynamic and is always fetched fresh. This is critical for content that changes frequently.
⚠️ Where Things Can Go Wrong
If you cache dynamic content, your launcher may show outdated or incorrect data. This is one of the most common mistakes.
Always Enable Cache Bust For:
- Webview objects (live websites, dashboards, APIs)
- Query String / API objects (dynamic responses)
- Live data feeds
- Anything that changes without publishing
If you do not enable Cache Bust for these, the system may cache a snapshot and keep serving it — making your “live data” completely static.
Best Practices
Anything that rarely changes should stay cached for maximum performance.
Always disable caching for live or frequently updated content.
If the data should update without rebuilding the launcher, it should not be cached.
Always test your launcher with and without cache busting to confirm behaviour.
Quick Summary
- The system caches remote assets locally for speed
- It automatically rewrites URLs to use cached versions
- It intelligently validates cached content
- Cache Bust overrides the system and forces fresh data
- Use caching for performance, but disable it for dynamic content
Mastering caching properly can make your launcher feel instant — or completely broken. Use it wisely.