Git Product home page Git Product logo

desktop's Introduction

Web Desktop

This project is a web implementation of a standard desktop interface, implemented in react using hooks and local storage for all state management. The demo is available at https://jmagder.github.io/webdesktop/ and consists of:

  1. A Window Management System: Window positioning, sizing, order, and applications state are preserved using local storage.
  2. A Taskbar: For switching between, hiding, minimizing and focusing on windows. The interface can be configured to have a taskbar on the left similar to Gnome, bottom similar to windows, top or right.
  3. Desktop Config Widget: Used to anchor the taskbar to the bottom (KDE/Windows), left (Gnome), top and right sides.
  4. Position Aware Popover System: All hidden content (ie, menus) is wrapped in a position aware popover system. This can be used to implement menus and tooltips that are guaranteed to render onscreen no matter their anchors positioning. For example, the configuration and start menu's should render on top if the taskbar is on the bottom of the screen, but the right if its on the left.
  5. Start Menu: For launching all instances of an application
  6. Demo Applications: A bar chart, pie chart, and note taking application, with state persisted to local storage.

desktop's People

Contributors

jmagder avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.