Files
daedalOS/README.md

178 lines
5.2 KiB
Markdown
Raw Normal View History

2022-01-02 01:27:17 -08:00
## 🌌 **daedalOS** 🌌
### _Desktop environment in the browser_
2022-01-02 00:42:53 -08:00
> [52 x Live Coding Streams of the Project w/Dustin Brett](https://www.youtube.com/playlist?list=PLM88opVjBuU7xSRoHhs3hZBz3JmHHBMMN)
2022-01-02 01:02:19 -08:00
![Stars](https://badgen.net/github/stars/DustinBrett/x)
![Stars](https://badgen.net/github/license/DustinBrett/x)
2022-01-02 00:42:53 -08:00
# Demo ⚡
![Demo](demo.gif)
# Try It 🏁
### Prerequisites
- [Git](https://git-scm.com/downloads)
- [Node.js](https://nodejs.org/en/download/) (LTS)
- [Yarn](https://classic.yarnpkg.com/en/) (`npm install --global yarn`)
### Build & Run
2022-01-02 11:25:08 -08:00
```
2022-01-02 01:13:54 -08:00
git clone https://github.com/DustinBrett/daedalOS.git
cd daedalOS
2022-01-02 00:42:53 -08:00
yarn
yarn build:fs
yarn dev
```
# System 🧠
### [File System](https://github.com/jvilk/BrowserFS)
- File Explorer
- Back, Forward, Recent locations, Address bar
- [Drag & Drop](https://developer.mozilla.org/en-US/docs/Web/API/HTML_Drag_and_Drop_API) File Support (internal & external)
2022-01-02 01:54:46 -08:00
- Loading progress dialog
2022-01-02 00:42:53 -08:00
- ZIP ([write support](https://www.npmjs.com/package/fflate)), [ZIP](https://github.com/jvilk/BrowserFS/blob/master/src/backend/ZipFS.ts)/[ISO](https://github.com/jvilk/BrowserFS/blob/master/src/backend/IsoFS.ts) read support, [RAR extract](https://www.npmjs.com/package/node-unrar-js) support
- Writes to [IndexedDb](https://developer.mozilla.org/en-US/docs/Web/API/IndexedDB_API)
- Group selection/manipulation & drag to sort
2022-01-02 01:02:19 -08:00
- Dynamic and auto cached icons for [music](https://github.com/Borewit/music-metadata-browser), images & video
2022-01-02 00:42:53 -08:00
- Context Menus
- Cut, Copy, Create shortcut, Delete, Rename
2022-01-02 11:25:08 -08:00
- [Add file](https://developer.mozilla.org/en-US/docs/Web/API/File/Using_files_from_web_applications), [Map directory](https://developer.mozilla.org/en-US/docs/Web/API/File_System_Access_API)
2022-01-02 00:42:53 -08:00
- Open with, Open file/folder location, Open in new window
- Download, Add to archive, Extract here, Set as wallpaper
- Sort by, New Folder, New Text Document
- Keyboard Shortcuts
- CTRL+C, CTRL+V, CTRL+X, CTRL+A, Delete
- F2, F5, Backspace, Arrows, Enter
2022-01-02 01:02:19 -08:00
- File information tooltips
- Allow sorting by name, date, type or extension
- Persists states
2022-01-02 00:42:53 -08:00
### Windows
- [Resizable and Draggable](https://github.com/bokuweb/react-rnd)
2022-01-02 01:54:46 -08:00
- Minimize, Maximize & Close
2022-01-02 00:42:53 -08:00
- Persists size/position/maximized states
- [Animates](https://www.framer.com/motion/) opening and closing
### Start Menu
- Expandable Sidebar
2022-01-02 01:02:19 -08:00
- Apps list, Documents shortcut, Power (clears session)
2022-01-02 00:42:53 -08:00
- Spotlight visual effect
- Folder support
2022-01-02 02:16:06 -08:00
- Keyboard shortcut opens with **_SHIFT+ESC_**
2022-01-02 00:42:53 -08:00
### Taskbar
- [Peek](https://github.com/bubkoo/html-to-image) hover preview of windows
- Focused window indicator
### Clock
2022-01-02 01:02:19 -08:00
- Runs in a [web worker](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Using_web_workers)
2022-01-02 00:42:53 -08:00
- Synced to system clock on load
- Date tooltip
### Wallpaper
- [Dynamic animated wallpaper](https://www.vantajs.com/)
- Set via images (Fill, Fit, Stretch, Tile, Center)
### URL
- Query parameter loading
- Examples:
- `/?url=/favicon.ico`
- `/?app=TinyMCE`
# Apps 🧪
### [BoxedWine](http://www.boxedwine.org/) (**_.exe, .zip_**)
- Runs 16/32-bit Windows applications
### Browser (**_.htm, .html_**)
- Loads websites (_w/HTTP header support_)
- Bookmark bar
- Favicon support
- Back/Forward & Reload
2022-01-02 01:54:46 -08:00
- Google search via Address bar
2022-01-02 00:42:53 -08:00
### [DevTools](https://eruda.liriliri.io/)
- Console, Elements, Network, Resources, Sources, DOM
- Activate from Start Menu or **_SHIFT+F12_**
### [js-dos](https://js-dos.com/) (**_.exe, .jsdos, .zip_**)
- DOS emulator
- Automatic save states on close
2022-01-02 01:02:19 -08:00
- /Users/Public/Snapshots
2022-01-02 00:42:53 -08:00
- Automatic window resize
### [Monaco Editor](https://microsoft.github.io/monaco-editor/)
- Code/text editor
- Supports all file types
- Save files via **_CTRL+S_**
- Line count, cursor position, language id
- [Prettier](https://prettier.io/) formatting
- json, js/ts, css/sass/less, html, markdown
### [PDF](https://mozilla.github.io/pdf.js/) (**_.pdf_**)
- Renders PDF's
- Page current/count & Zoom
### Photos
- [Supported Formats](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/img#supported_image_formats)
- Fullscreen & [Zoom](https://github.com/anvaka/panzoom)
### [Ruffle](https://ruffle.rs/) (**_.swf, .spl_**)
- Flash Player emulator
### [Terminal](https://xtermjs.org/)
- File system support
2022-01-02 01:54:46 -08:00
- Autocomplete & history
2022-01-02 00:42:53 -08:00
- Command list via `help`
- [Git support](https://isomorphic-git.org/) (checkout & clone)
- [Python support](https://pyodide.org/) (**_.py_**)
- [WebAssembly Package Manager](https://wapm.io/)
- Examples:
- `wapm cowsay moo` ([\#](https://wapm.io/package/cowsay))
- `wax fortune` ([\#](https://wapm.io/package/fortune))
- [Weather information](https://wttr.in/)
### [TinyMCE](https://www.tiny.cloud/tinymce/) (**_.whtml_**)
2022-01-02 01:54:46 -08:00
- Read & WYSIWYG modes
2022-01-02 00:42:53 -08:00
- File save support
### [Virtual x86](https://copy.sh/v86/) (**_.img, .iso_**)
- x86 emulator
- Automatic save states on close
2022-01-02 01:02:19 -08:00
- /Users/Public/Snapshots
2022-01-02 00:42:53 -08:00
- Automatic window resize
### [Video Player](https://videojs.com/)
- [Supported Formats](https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs)
2022-01-02 01:54:46 -08:00
- Plays [YouTube](https://github.com/videojs/videojs-youtube) videos/shortcuts
2022-01-02 00:42:53 -08:00
### [Webamp](https://webamp.org/) (**_.mp3, .wsz_**)
- Winamp audio player
- [Skin support](https://skins.webamp.org/)