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

admini

v1.8.3

Published

Minimalistic Admin Panel built with Bootstrap 5

Downloads

8

Readme

Admini

Minimalistic Admin Panel built with Bootstrap 5.3

Features

  • No bloat, only what's strictly required to get a decent admin panel
  • A nice, modern, Bootstrap 5 based interface
  • A friendly dashboard
  • Extended Avatar UI with badges, icons, pictures, groups...
  • A powerful action system that supports many use cases (multiple actions, drops, navigation, offcanvas panel...)
  • A sane default layout for forms (includes tabbed form support and responsive by default)
  • A nice default set of colors that are more accessible
  • Powerful (but optional) ajax navigation
  • Super lightweight (around 100kb, including bootstrap)
  • Dark mode support

BS Companion

Some bootstrap related features of admini have been extracted to a third party module called BS Companion

  • Responsive Table : Nice responsive tables without ugly scrollbars
  • BS Tabs : Improved tabs, that collapse down to a dropdown and with linkable tabs
  • BS Toggle : Self initializing popovers and tabs
  • Toaster : Generate beautiful toast message without markup
  • Modalizer : Generate beautiful modals without markup
  • Form Validator : Consistent validator that works across tabs and accordions

Form elements

Admini does not provide any built in custom form elements. This is because we are often used to use specifics libraries based on our usage and personal preferences.

I highly recommend you to use my WIP (but already very stable) Formidable Elements collection.

If you don't find what you need there, you can use Modular Behaviour. It works beautifully in combination with skypack.

Ajax navigation

The admin panel provides a built-in (but optional) navigation with sco-pe, a custom element made to load page fragments.

Changing from a full page load on each action to a ajax powered navigation as a few side effects that you should not ignore:

  • Avoid initializing things multiple time
  • But aware of the state
  • Cleanup when elements are removed

Avoid initializing things multiple time can be done in three ways:

  • Have self initializing custom elements or use Modular Behaviour.
  • Happily trigger full page init with multiple init safe scripts (eg: using initialize util provided)
  • Define custom per fragment code with onScopeLoad

You can also ditch sco-pe completely and use a more robust solution like Turbo or Unpoly. I didn't want to use these libraries because they tend to creep to much into the project architecture. With sco-pe, you can pretty much write regular html and it will work with minimal changes. More on that topic.

Icons and images

Demo

Demo is available on Vercel

Try at home

The build setup

Admini use esbuild to compile the js assets. After cloning this repo, simply run

npm start

And you will get a fully functional local demo to play with.

If you want to work on the css, run in another terminal the following

npm run watch-css

And your css will be compiled automatically.

No complicated build pipe :-)