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

ozjs

v2.6.4

Published

A microkernel for modular javascript, a toolchain for modern front-end, a micro-framework for growable WebApp

Downloads

48

Readme

OzJS Project

OzJS is NOT yet another script loader, but a microkernel that provides sorely-missing module mechanism at runtime (that means it mainly works at language-level, not file-level. Use Ozma.js to process files statically at build time based on the same mechanism) for large/complex javascript program, compatible with the de facto standards (AMD, NodeJS/CommonJS and traditional module pattern).

Even better, it was implemented earlier than the well-known RequireJS, so there are differences between similar APIs in philosophy and approach, which bring more value.

The API and code of oz.js are minimalist and stable. It won’t add new features that aren't truly needed (It's absolutely bad practice to meet new requirements through new configuration options or new plugins for a module mechanism provider!).

The OzJS Project now focuses on providing bundles of powerful and yet micro-framework friendly AMD modules.

Toolchain

generator-ozjs

  • Scaffolding tool for OzJS which offers a packaging workflow integrates toolchain, micro-framework and many best practices
  • oz.js + bower + Grunt + Mo + Moui + ...
  • Source code
  • OzJS app template

OzmaJS

  • Intelligent autobuild tool for OzJS
  • Unique ability to support transparent dynamic dependence
  • Source code

grunt-ozjs

karma-ozjs

grunt-dispatch

  • Bower mate, copy the necessary files of package(like bower\_components/) directory to your src/ directory
  • Source code

grunt-furnace

  • Transform code from one format to another
  • template > AMD, AMD > CJS, CJS > AMD...
  • Source code
  • karma-furnace-preprocessor - A Karma plugin. Convert code from one format to another (like grunt-furnace)

OzJS Adapter:

  • Mini define/require mplementation for old web page
  • Transform AMD module into traditional module pattern
  • Source code

Micro-framework

It is time to stop using All-in-One JavaScript library or framework which bundle all functionalities and solutions within a single global namespace.

OzJS Project provides plenty of tiny, mutually independent, single purpose modules to help you build(mix and match) your own MVC(or suchlike) framework.

Mo

  • A collection of OzJS core modules that form a library called "Mo"
  • Modules overview
    • mo/lang
      • ES5/6 shim and minimum utilities for language enhancement
    • mo/domready
      • Non-plugin implementation of cross-browser DOM ready event
      • Based on OzJS's built-in module -- 'finish'
    • mo/browsers
      • Standalone jQuery.browsers supports skin browsers popular in China
    • mo/template
      • A lightweight and enhanced micro-template implementation, and minimum utilities
    • mo/network
      • Standalone jQuery.ajax API and enhanced getJSON, and so on
    • mo/easing
      • An easing library supports jquery.js, standalone module and CSS timing functions
    • mo/mainloop
      • Implement and manage single loop for WebApp life cycle
      • Provide tweening API for both property animation and frame animation(canvas or css)
    • mo/key
      • Wrapping API for keyboard events
      • Support key sequence, multiple key press, ...
    • mo/console
      • Debulg tool
  • Source code

EventMaster

  • A simple, compact and consistent implementation of a variant of CommonJS's Promises and Events
  • Source code

NervJS

  • A tiny, pure, event-based model wrapper for the MVC or MDV (Model-driven Views) pattern.
  • Source code

DollarJS

  • A jQuery-compatible and non-All-in-One library which is more "Zepto" than Zepto.js
  • Source code

SovietJS

URLKit

  • A lightweight implementation of routing and URL manager
  • Source code

UI Toolkit

Moui

  • OO-based UI behavior modules behind CardKit's view components
  • Modules overview
    • moui/control
      • Minimal stateful component
    • moui/picker
      • Compose of Control objects
    • moui/overlay
      • Minimal overlay component
    • moui/actionview
      • Inherit from Overlay
      • Compose of Picker objects
    • moui/modalview
      • Inherit from Overlay
    • moui/growl
      • Inherit from Overlay
    • moui/ranger
      • Minimal range component
    • moui/util/stick
      • Stick a DOM element to anther from any clock position
    • More
  • Source code

DarkDOM

  • Design your own markup languages on a higher level of abstraction than HTML
  • Build responsive cross-screen UI components
  • Source code

CardKit

  • A mobile UI library provides a series of building blocks to help you build mobile web apps quickly and simply, or transfer entire website to mobile-first web app for touch devices.
  • CardKit building blocks are all use-html-as-configure-style (like Custom Elements, directive...) components built on DarkDOM and Moui.
  • Source code

Momo (MoMotion)

  • A framework and a collection for separate and simple implementation of touch gestures
  • Source code

ChoreoJS

  • An animation library which uses "stage" and "actor" as metaphors
  • Source code

Tutorials

Quick Start

Install the scaffolding/workflow tool then try the ozjs:app generator.

Demo App

In the Real World

Follow @ozjs

More References

License

Copyright (c) 2010 - 2014 dexteryy
Licensed under the MIT license.