An advanced, high-performance, asynchronous desktop platform for offline course management.
<img src="https://img.shields.io/github/v/release/m3rcena/udeler_gui?include_prereleases&style=for-the-badge&color=2563eb" alt="Release" />
<img src="https://img.shields.io/github/license/m3rcena/udeler_gui?style=for-the-badge&color=7e22ce" alt="License" />
<img src="https://img.shields.io/github/stars/m3rcena/udeler_gui?style=for-the-badge&color=00e5ff" alt="Stars" />
Library > Course > Chapter).local:// safe streaming protocol to bypass standard Chromium media-sandboxing rules..vtt tracks dynamically on-the-fly into embedded Data URIs to eliminate strict browser Cross-Origin Resource Sharing (CORS) faults.electron-viteelectron-store (Persistent Encrypted App Settings & Progress Mappings)zod (Strict runtime schema validation for external API payloads)Ensure you have Node.js (v20 or higher) and npm installed on your development workstation.
Clone your active development branch:
bash
git clone -b v3 https://github.com/m3rcena/udeler_gui.git
cd udeler_gui
Provision configuration dependencies:
bash
npm install
Launch the development environment (Hot-Reload Enabled):
bash
npm run dev
To compile and pack the production binary distribution executable for your corresponding desktop operating platform:
# Windows Distribution Compile (.exe)
npm run build:win
# macOS Distribution Compile (.dmg / .app)
npm run build:mac
# Linux Distribution Compile (.AppImage / .deb)
npm run build:linux
The output distribution binaries will be written seamlessly to your root /dist or /out packaging paths.
Upon system initialization, securely capture and apply your authentication bearer access token into the application portal. The application validates endpoints asynchronously against your profile and provisions access tokens directly inside automated localized configurations.
Before running mass execution pools, navigate directly to the Settings configuration tab:
* Storage Location: Declare your primary output directory path. Moving paths triggers an instantaneous file migration script safely adjusting existing targets.
* Conditional Synchronization: Choose whether the background worker processes or drops external captions and structural documents (.pdf, .zip, etc.).
Once you select a course module and append files to your actively working pipeline: * The Waiting telemetry module displays absolute metrics remaining in the queue array. * The In Progress counter tracks active background processes. * The processing matrix updates state metrics seamlessly even if you return to alternative navigational tabs.
├── .github/ # Repository metadata profiles
├── build/ # OS entitlement rules & distribution parameters
├── resources/ # Application-wide icons (.ico, .icns, .png, .svg)
├── src/
│ ├── main/ # Primary Electron Application Backend Process
│ │ ├── index.ts # Window lifecycle and sandboxed IPC listeners
│ │ ├── download.ts # Multi-stage request processor & Zod validation
│ │ └── udemy.ts # Course extraction mappings
│ ├── preload/ # Electron Context Bridge Isolation Layer
│ │ ├── index.ts # Generic API Invoker bridge
│ │ └── ipc-types.d.ts # Single Source of Truth E2E Type Definitions
│ └── renderer/ # React Client Frontend Layer
│ ├── index.html # Client viewport with hardened Content Security Profile
│ └── src/
│ ├── assets/ # Vector design definitions and global CSS styles
│ ├── components/ # Modular overlays and notification components
│ ├── contexts/ # React context state engine pipelines
│ ├── views/ # Application views (Library Explorer, Settings)
│ └── App.tsx # Main state routers
├── electron-builder.yml # Desktop compilation assembly rules
└── electron.vite.config.ts # Vite bundler parameters
Udeler Reborn is designed to adhere to standard enterprise Electron application security metrics:
* Strict Context Isolation: Electron render engines are locked away from the bare operating system. Node APIs like fs and child_process are fully isolated to the backend layer and exposed safely via the custom Generic Electron Context Bridge.
* Runtime Schema Protection: All external API responses are intercepted and validated through strict Zod schemas, ensuring corrupted or malicious server data cannot poison the internal state.
* Hardened Content Security Policy (CSP): The embedded index.html file employs a modern CSP directive policy limiting external injection patterns while carefully authorizing local file streaming configurations via media-src 'self' local: blob: data:.
Join our community to report issues, suggest features, or chat with other developers and users!
This software is distributed under the terms of the MIT License. Check the root LICENSE profile for comprehensive parameters.
$ claude mcp add Udeler-Reborn \
-- python -m otcore.mcp_server <graph>