Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/levkopo/webos
Experimental web app simulating file system and os
https://github.com/levkopo/webos
Last synced: about 1 month ago
JSON representation
Experimental web app simulating file system and os
- Host: GitHub
- URL: https://github.com/levkopo/webos
- Owner: levkopo
- License: apache-2.0
- Created: 2021-10-14T16:53:37.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-02-10T17:22:49.000Z (11 months ago)
- Last Synced: 2024-02-10T18:31:33.511Z (11 months ago)
- Language: JavaScript
- Size: 17.6 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# WebOS
> Just for funМини-приложение которое симулирует операционную систему.
Сделано ради прикола 3 года назад.Попробовать можно [здесь](https://levkopo.github.io/webos/).
# Пакеты
Все пакеты хранятся в папке packages. При запуске приложения
все пакеты загружаются в папку /bin в виртуальной памяти (localStorage).Список предустановленых пакетов
|Имя пакета|Назначение|Пример использования|
|---|---|---|
|`cat`|Вывод файла в консоль| `cat /bin/cat`|
|`cd`|Переход в папку|`cd /bin`|
|`echo`|Вывод текста в консоль|`echo Hello, World!`|
|`js`|Выполнение кода js (буквально eval)|`js alert('Hi!')`|
|`ls`|Вывод папок и файлов по текущему пути в консоль|`ls /bin`/`ls`|
|`rm`|Удалить файл/папку|`rm /bin/rm`|
|`sh`|Запустить консоль|`sh`|
|`touch`|Создать новый пустой файл|`touch /bin/newcmd`|
|`write`|Записать текст в файл|`write /bin/newcmd alert('Hi!')`|
|`wui`|Запуск мини-оболочки WebUI|`wui`|# Базовое API для пакетов
## Работа с файловой системой
`removeFile(path): void` - удаление файла
`createFile(path): void` - создание файла
`getFile(path): string?` - чтение файла
`getFileContentArrayBuffer(path): Uint8Array?` - чтение файла в виде байтов## UI
```
Window(drawer: (api: {
setInfo(info: {title: string?})
draw(html: string)
nextChar(): Promise
})
```## Other
`Base64.encode(str): string`
`Base64.encodeArrayBuffer(buffer): Promise`
`escapeHTML(text): string`
`sleep(ms): Promise````
Я не знаю зачем я это расписал но пусть будет :D
```