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

@hitchy/plugin-odem

v0.9.4

Published

a document-oriented database for Hitchy-based applications

Downloads

193

Readme

Hitchy Odem pipeline status

a document-oriented database for Hitchy

License

MIT

About

Hitchy is a lean server-side application framework focusing on these features:

  • Easily discover plugins.
  • Quickly dispatch incoming requests to handlers of those plugins.

Hitchy requires a plugin like this one to conveniently manage data. Hitchy Odem provides a document-oriented database for Hitchy. It is working on top of a key-value store relying on customizable backend adapters. There are two backends included with this plugin:

  • A memory-based adapter manages data in volatile runtime memory mostly for developing and testing purposes. It is the default backend.
  • A filesystem-based adapter is storing all data in a customizable folder of your local filesystem. This backend is suitable for persistently storing data in a single-server context.

In addition, there is a separate plugin providing an adapter for using an etcd3 cluster as backend in a multiple-server context.

Performance and memory consumption

Hitchy Odem supports index-based searching to significantly improve its performance on finding items when used with a filesystem-based data store or some dedicated etcd cluster. Indexes are rebuilt in runtime memory on every start of your Hitchy-based service. For that, all items of models with declared indexes are fetched from those stores on start. This results in increased memory consumption and boot time closely related to the number of items in your data store.

Of course, Hitchy Odem isn't designed to compete with established database engines like MySQL or MongoDB. However, most applications work with rather small sets of data and thus don't benefit much from those engines for the memory consumption and boot time are still rather low. On the other hand, using Hitchy in combination with Hitchy Odem comes with very little prerequisites for the server they are running on. For example, it takes a single Docker container to run your application. There is no need to have composition of containers combining a sophisticated database engine with your application. That's following one of the core-principles of Hitchy: getting rid of dependencies as good as possible.

Documentation

The latest documentation is available at https://odem.hitchy.org/.