Instantly share code, notes, and snippets.

Embed
What would you like to do?
OS.js v3 TODO list

This is the list of tasks for OS.js v3 development. I'm just adding things here as I go. So if you see anything interesting and you want to pitch in, that'd be much appreciated.

Transition to v3

  • CI
  • Make permanent redirects in old manual to /v2/.
  • Make v3 notifications in old manual
  • Properly update webmaster stuff
  • Screenshots in README files
  • Simplified www.os-js.org
  • Set the v3 branch as master
  • Make the current master branch v2
  • Start using 3.0.x instead of alpha signature
  • Remove alpha notices from core package readme's
  • Add peerDependencies to package.json files in applications etc.
  • Add links to all README-s
  • Announcement 🎉

Work in progress

  • Unit testing
  • WebDAV VFS Adapter

Community assisted

Beta Goals

  • GUI Treeview
  • GUI Fileview (abstraction over other views, basically take from FM/File Dialog)

TODOs

  • Make applications store their states (session) after interaction(s)
  • "Global modal" windows (i.e. blackout with only one window allowed)
  • Panel item management (via contextmenu and dnd?)
  • Draw application needs more functionality
  • MusicPlayer application needs playlist
  • Low-resolution (mobile) optimized interface(s)
  • Multiple panels (it's kinda supported, but needs managment)
  • Microsoft OneDrive VFS Adapter
  • Support multiple authentication adapters at once
  • Window aspect ratios
  • Creation of server-mountpoints via client (API is already pretty much done)
  • Better Login abstraction and cusomization
  • More applications, themes and panel items

Documentation

Done

A list of things already done:

  • Docker setup
  • Client build setup
  • Package build setup
  • Full configuration support
  • Hot-reloading
  • Custom distros
  • Self-contained application and builds
  • npm support
  • CLI - package discovery
  • CLI - package creation
  • CLI - plugin support
  • Common - service provider loader
  • Common - service provider dependency support
  • Common - service provider factories
  • Common - basic application abstraction
  • Common - shared client/server core base class
  • Client - Windows
  • Client - Applications
  • Client - Windows
  • Client - Notifications
  • Client - Search
  • Client - Window Behaviour abstraction
  • Client - Window Media Queries
  • Client - Standalone support
  • Client - Localization
  • Client - Sessions
  • Client - Tray management
  • Client - Basic touch input support
  • Client - Embedding support
  • Client - Basic clipboard
  • Client - DnD utils
  • Client - Provider - Authentication
  • Client - Provider - Packages
  • Client - Provider - VFS
  • Client - Provider - Settings
  • Panels - manager
  • Panels - Item - Menu
  • Panels - Item - Breadcrumbs
  • Panels - Item - Tray
  • Panels - Item - Clock
  • Dialogs - abstraction
  • Dialogs - Implementation - Alert
  • Dialogs - Implementation - Choice
  • Dialogs - Implementation - Color
  • Dialogs - Implementation - Confirm
  • Dialogs - Implementation - Custom
  • Dialogs - Implementation - File
  • Dialogs - Implementation - Font
  • Dialogs - Implementation - Progress
  • Dialogs - Implementation - Prompt
  • Widgets - abstraction
  • Widgets - Item - Digital Clock
  • Themes - Theme - Standard
  • Themes - Theme - Dark
  • Themes - Sounds - Freedesktop
  • Themes - Animation support
  • Icons - Theme - Gnome
  • Server - Express HTTP server
  • Server - Logging facilities
  • Server - WebSocket connections
  • Server - Package server scripts
  • Server - Provider - Authentication
  • Server - Provider - Packages
  • Server - Provider - VFS
  • Server - Provider - Settings
  • VFS - mountpoint support
  • VFS - filesystem adapter support
  • VFS - Watch and notify
  • VFS - Adapter - System
  • VFS - Adapter - Google Drive
  • VFS - Adapter - Applications
  • Authentication - PAM
  • Authentication - SQLite
  • Authentication - Databases
  • Authentication - Dummy
  • Settings - LocalStorage
  • Settings - Filesystem
  • Settings - Databases
  • GUI - Abstraction
  • GUI - Contextmenu API
  • GUI - Component - Box-es
  • GUI - Component - Button
  • GUI - Component - Icon
  • GUI - Component - IconView
  • GUI - Component - Iframe
  • GUI - Component - Image
  • GUI - Component - ListView
  • GUI - Component - Menubar
  • GUI - Component - Menu
  • GUI - Component - Panes
  • GUI - Component - Progressbar
  • GUI - Component - RangeField
  • GUI - Component - SelectField
  • GUI - Component - Statusbar
  • GUI - Component - Tabs
  • GUI - Component - TextareaField
  • GUI - Component - TextField
  • GUI - Component - ToggleField
  • GUI - Component - Toolbar
  • GUI - Component - Video
  • GUI - Component - Expander
  • Application - Calculator
  • Application - Draw
  • Application - File Manager
  • Application - HTML Viewer
  • Application - Music Player
  • Application - PDF Reader
  • Application - Preview
  • Application - StropheJS
  • Application - Textpad
  • Application - Xterm
  • Application - Xpra
  • Application - Settings
  • Provider - Google API
  • Provider - D-BUS
  • Misc - Example application
  • Misc - Example iframe application w/coms
  • Misc - Example service provider
  • Misc - Legacy browser support (https://manual.os-js.org/v3/guide/deploy/#legacy-browsers)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment