Electron-based slide/presentation app — zero frameworks, vanilla JS
Features ·
Installation ·
Build ·
TODO ·
See GitHub Releases for downloads and changelog.
- Editor redesign — 5-group topbar, canvas ruler, zoom bar, AI FAB, status bar, panel tabs (Element/Slide/Animation), redesigned settings panel
- Home screen redesign — sidebar navigation, topbar search, 4-column card grid, list view, empty state
- Light mode — full light/dark theme support for both home and editor pages
- Inno Setup installer — dark-themed setup wizard with Turkish/English, custom bitmaps, gold accent (#FFD700)
- Security fixes —
renderMD()XSS fix (href protocol whitelist),--allow-file-access-from-filesremoved,structuredClone()instead ofJSON.parse(JSON.stringify()) - Editor refactor — split
editor.jsintoai-ui.jsandexport.js - i18n updates — new home screen keys, version bumped in locale files
- Zoom — range 0.25–3, step 0.1, CSS transform scaling
- Status bar — save status dot (red/green), slide count, element count
- Project filename — displays actual project name in topbar
- Simplified toolbar — removed non-functional icon buttons
- Updated app icon: black-to-yellow gradient, bold O letter with accents, rounded corners, drop shadows
- v0.1.1 portable EXE
- Portable single-file EXE (self-signed) — no install required
- AI assistant, multi-select + alignment, animations, theme system
- i18n (Turkish/English), snap guides, presentation annotations, favorites
- AI Assistant — Generate slides, edit content, and execute commands via Pollinations.ai API
- Multi-Select — Shift+click to select multiple elements; align (left/center/right/top/middle/bottom), distribute (horizontal/vertical), match width/height
- Animations — Slide transitions (fade/slide/zoom), per-element entrance & emphasis effects, auto-stagger, "Apply to All"
- Theme System — Project themes with customizable colors, fonts, animations; theme picker with visual cards
- Presentation Mode — Fullscreen slideshow with pen and highlighter annotation tools
- Snap Guides — Visual alignment lines while dragging elements
- Project Management — Create, open, rename, duplicate, delete, favorite projects
- DOM-Based Editor — Add text, titles, images, rectangles, circles, arrows; properties panel
- Slide Management — Add, duplicate, delete, reorder via drag-and-drop thumbnails
- Undo / Redo — Unlimited history stack
- Export / Import — Export to PDF or PNG; import/export project files
- Keyboard Shortcuts — Fully customizable via Settings > Shortcuts
- i18n — Turkish & English localization (extensible)
- Themes — Dark, Light, and System with 3-card selector
- Context Menu — Right-click for project cards and editor elements
- Dev Console — Toggle with F12 for debugging
- Auto-Save — Periodic save to prevent data loss
npm install
npm start- Launch app — home screen appears
- Click "New Project" or open an existing one
- Use the toolbar to add and arrange elements
- Press F5 for presentation mode
- Press Ctrl+S to save
npm run buildOutput: dist/win-unpacked/oSlide2.exe — Portable app (package with your own distributable)
├── main.js # Electron main process
├── preload.js # IPC bridge
├── home.html # Home screen
├── editor.html # Slide editor
├── presentation.html # Presentation mode
├── css/
│ ├── home.css
│ ├── editor.css
│ └── presentation.css
├── js/
│ ├── core/
│ │ ├── state.js # Application state, undo/redo
│ │ └── actions.js # Slide and element CRUD
│ ├── ui/
│ │ ├── renderer.js # DOM rendering
│ │ ├── canvas.js # Canvas interactions (drag, resize)
│ │ └── panels.js # Properties panel
│ ├── services/
│ │ ├── projectManager.js # Project CRUD
│ │ ├── fileManager.js # File I/O
│ │ ├── shortcuts.js # Customizable shortcuts
│ │ ├── i18n.js # Localization
│ │ └── theme.js # Theme management
│ ├── pages/
│ │ ├── home.js # Home screen logic
│ │ ├── editor.js # Editor logic
│ │ └── presentation.js # Presentation logic
│ └── locales/
│ ├── tr.json # Turkish translations
│ └── en.json # English translations
└── package.json
| Shortcut | Action |
|---|---|
| Ctrl+Z | Undo |
| Ctrl+Y | Redo |
| Ctrl+S | Save |
| Ctrl+C | Copy |
| Ctrl+V | Paste |
| Ctrl+B | Bold |
| Ctrl+I | Italic |
| Ctrl+U | Underline |
| Delete / Backspace | Delete selected |
| F5 | Start presentation |
| F12 | Toggle dev console |
| Escape | Close dialog/menu |
All shortcuts are customizable in Settings > Shortcuts.
- Slide templates & layouts
- Charts & data visualization
- Cloud sync / backup
- Collaborative editing
- Mobile remote control
- Plugin / extension system
- Video export (MP4/WebM)
- Custom themes marketplace
- PDF import
- Undo/redo for element position changes during drag