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

aurumjs

v0.9.50

Published

Stream based declarative DOM rendering library for javascript

Downloads

133

Readme

Fast and concise declarative DOM rendering library for javascript

Build Status npm npm bundle size

What is Aurum

Aurum.js is a DOM rendering library inspired by react and angular. In Aurum you use stream based programing (Similar to rx.js) for data management. You link your streams directly to the DOM be it into attributes, inner text or inner html, you keep your UI up to date all through streams. Components in aurum never "rerender" react style, there is no reconciliation, no watching no dirty checking and no guesswork on what will cause things to render because all DOM changes are directly tied to a data stream.

Why use Aurum

  • Aurum encourages writing UIs in a way that makes them update faster in response to data changes than even in popular modern libraries like react, vue or angular without the need for memoization, immutability or pure components.

  • Aurum does most of the data management overhead for you, saving time and allowing to focus on what matters: Implementing your business logic

  • Aurum has very few concepts and a small API, you can get a full understanding of Aurum.js in record time.

  • Aurum is completely built around the stream pattern, pipe your data from the backend over adapters all the way into the DOM

  • Aurum is not a framework. It does not impose how you should write your app and it plays nice with other libraries. You can even mix react and aurum in the same page if you want to.

Browser support

  • All chromium based browsers

  • Firefox

  • Safari

Getting started

Install:

$ npm install aurumjs

To use Aurum you need to compile JSX or TSX using babel or the typescript compiler.

With Babel

Example .babelrc

{
  "presets": [
    "@babel/preset-env",
  ],
  "plugins": [
    [
      "@babel/transform-react-jsx",
      {
        "pragma": "Aurum.factory"
      }
    ]
  ]
}

With typescript

In tsconfig.json put the jsxFactory option

    "compilerOptions": {
        "jsxFactory": "Aurum.factory",
        "jsxFragmentFactory": "Aurum.fragment",

    }

Simple Aurum app to render a div with text in the DOM:

import {Aurum} from 'aurumjs'

Aurum.attach((<div>Hello Aurum</div>), document.body)

Website with documentation and further explanations

https://cyberphoenix90.github.io/aurum-website/

Live example

TODO App with creation, deletion drag and drop, editing and marking as done of tasks all under 100 lines of code with aurum: https://codepen.io/cyberphoenix90/pen/LYYMwVr