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 🙏

© 2026 – Pkg Stats / Ryan Hefner

lunanore

v0.8.1

Published

Lunanore is a 3D game framework built on top of ThreeJS

Readme

Lunanore

Lunanore is my personal 3D typescript game framework built on top of Three.

About

Background

If you look at my other repositories you will notice quickly I also have several other library projects focussed at game development. I have been a game (engine) developer for almost a decade and if I wanted to create a 3D library I could.. eventually. I decided however not to because there are many 3D rendering libraries already out there. Three is such a library.

While I would not recommend trying to create the next Call of Duty or Skyrim with Three, it sure as hell is powerful enough for a lot of web games. But not just games. Three is also used a lot in the indudstry for the creation of CAD software. That said..

Downsides

As you have noticed, Three is not specifically designed for video games and only provides functionality for rendering 3D objects and a wrapper for the Web Audio API. It does not cover input, asset magenement or specific structures because that would be out of scope for Three. However, because Three is pretty genericaly designed it is easy to end up with chaotic code. Especially if you have to do all the input management yourself too.

Lunanore.. I choose you!

That is where Lunanore comes in. Lunanore provides a structure that allows you to maintain that overview and quickly have a basic game project up and running. Lunanore does so by providing classes for asset management, scene control and input like mouse, keyboard, touch and even gamepads. Lunanore also comes with its own wrapper for the Web Audio API. The only reason I included it because I already had one from my other project Aquanore.

Installation

npm install --save lunanore

Examples

I highly recommend looking at the example folder. That way you get some idea of how to use Lunanore. When the framework is stable enough I will provide some documentation too.

Contribution

Right now I have pull requests locked because I am still working on the beta version but in the future help is certainly welcome!

License

MIT