npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

njdesktop

v2.4.1

Published

A Javascript-based desktop environment

Downloads

20

Readme

NjDesktop 2

NjDesktop 2 is the modern version of the robust Javascript desktop framework for modern browsers. It has shed most of its dependencies. The only runtime dependencies are Interact.js for moving and resizing the windows and uuid for some unique ids. Also the Interact library provides more functionality which can be useful when building apps with NjDesktop.

Documentation

The documentation is available here. You may also refer to the index.js file in the demo folder:

Features:

  • Compatible with all modern versions of major browsers.
    • Internet Explorer and legacy versions of Edge are not officially supported. You may get lucky if it works in them
  • CSS driven: all visual behaviors are controlled by css rules. Some aspects (window positioning, z-index) are computed with Javascript, but are applied via styles.
  • Event system. Almost all NjDesktop components are inheriting the HasEvents class. This provides a robust and easily extensible event handling system for NjDesktop.
  • Fully integrated theme support. NjDesktop themes are now an integral part of the system and are completely driven by CSS classes. Just invent a new theme name and apply it to the main unit (the theme name must be a valid CSS class name). Build a new CSS file based on this new class name (take redmond7.scss as an example).
  • Menu support over the desktop, in the taskbar, inside windows and inside toolbars
  • Toolbar support in taskbar and windows (windows can have multiple toolbars)
  • Icon list with multiple icon sizes and views, multiselect, available on desktop and inside windows
  • List view with sorting and multi-select available inside windows
  • Robust tiling support
  • Cascade
  • Object-oriented design
  • Plain Javascript implementation, with the exception of dragging and resizing (Interact.js)

Differences from NjDesktop 1 features

Important note: This version is not compatible with NjDesktop 1

  • Desktop icons are not draggable
  • Simpler API
  • Generic icon list, that can be appended to windows and desktop
  • Generic menus (available for desktop, toolbars, taskbar and windows), but they can also added anywhere
  • Generic toolbars (available for taskbar and windows)
  • Better dialogs
  • Window footers
  • Generic listview with multiselect, custom item column rendering, sorting with custom comparer option for each column
  • No desktop widgets
  • ES6 modules

License

NjDesktop 2 is licensed under the MIT license