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

ngx-anabo-space

v0.0.2

Published

A lightweight, fully customizable **animated space particle background** for Angular applications. Built with pure Canvas API — no external dependencies.

Readme

ngx-anabo-space

A lightweight, fully customizable animated space particle background for Angular applications. Built with pure Canvas API — no external dependencies.

npm version Angular License: MIT SSR Safe


Preview

| Theme | Color | |---|---| | full | aurora — teal, cyan, violet, pink | | stars | electric — pink, purple, indigo, blue | | stars-glow | nebula — red, orange, yellow, pink |


Features

  • ✅ Floating stars with twinkling effect
  • ✅ Connection lines between nearby stars
  • ✅ Mouse interaction — stars repel from cursor
  • ✅ Shooting stars at random intervals
  • ✅ 10 built-in color palettes
  • ✅ 6 built-in themes
  • ✅ SSR / Universal safe
  • ✅ Runs outside Angular zone for 60fps performance
  • ✅ Zero external dependencies
  • ✅ Angular 17+ standalone component

Installation

npm install ngx-anabo-space

Quick Start

1. Import the component

// app.component.ts
import { Component } from '@angular/core';
import { NgxAnaboSpaceComponent } from 'ngx-anabo-space';

@Component({
  standalone: true,
  imports: [NgxAnaboSpaceComponent],
  templateUrl: './app.component.html',
})
export class AppComponent {}

2. Add to your template

<!-- app.component.html -->
<ngx-anabo-space theme="full" color="classic" [speed]="4" />

3. Make it fullscreen (app.component.css)

:host {
  display: block;
  width: 100vw;
  height: 100vh;
}

That's it! 🚀


Usage with Content

Place any content inside the component — it renders on top of the particles:

<ngx-anabo-space theme="full" color="aurora" [speed]="4">

  <div class="hero">
    <h1>Welcome to My App</h1>
    <p>Built with Angular</p>
    <button>Get Started</button>
  </div>

</ngx-anabo-space>

API — Inputs

| Input | Type | Default | Description | |---|---|---|---| | theme | SpaceTheme | 'full' | Controls which effects are active | | color | SpaceColor | 'classic' | Star color palette | | speed | number | 4 | Animation speed (1–10) | | particleCount | number | 140 | Number of stars | | showControls | boolean | false | Show built-in speed/toggle overlay |


Themes (SpaceTheme)

Controls which visual effects are active. Pass as a plain string — only one value at a time.

| Value | Stars | Lines | Glow | |---|---|---|---| | 'stars' | ✅ | ❌ | ❌ | | 'lines' | ❌ | ✅ | ❌ | | 'glow' | ❌ | ❌ | ✅ | | 'stars-lines' | ✅ | ✅ | ❌ | | 'stars-glow' | ✅ | ❌ | ✅ | | 'full' | ✅ | ✅ | ✅ |

<ngx-anabo-space theme="stars-glow" />
<ngx-anabo-space theme="full" />
<ngx-anabo-space theme="lines" />

Colors (SpaceColor)

10 built-in color palettes. Pass as a plain string.

| Value | Preview Colors | |---|---| | 'classic' | White, ice blue, warm gold, soft purple, mint | | 'aurora' | Teal, cyan, violet, pink, white | | 'nebula' | Red, orange, yellow, hot pink, white | | 'galaxy' | Lavender, violet, indigo, lilac, white | | 'matrix' | Neon green, lime, electric green, yellow-green | | 'mars' | Red, burnt orange, amber, blush, white | | 'ocean' | Sky blue, ocean blue, deep sea, aqua, white | | 'blossom' | Blush, rose, petal pink, hot pink, white | | 'moonlight' | Ice white, cool grey, periwinkle, slate blue | | 'electric' | Hot pink, deep purple, indigo, electric blue, cyan |

<ngx-anabo-space color="aurora" />
<ngx-anabo-space color="electric" />
<ngx-anabo-space color="moonlight" />

Examples

Basic fullscreen background

<ngx-anabo-space theme="full" color="classic" [speed]="4" />

Hero section with content

<ngx-anabo-space theme="full" color="aurora" [speed]="3">
  <div class="hero">
    <h1>Deep Space</h1>
    <p>Explore the universe</p>
  </div>
</ngx-anabo-space>

Stars only — no lines or glow

<ngx-anabo-space theme="stars" color="moonlight" [speed]="2" />

High energy — fast electric particles

<ngx-anabo-space
  theme="full"
  color="electric"
  [speed]="9"
  [particleCount]="200"
/>

Slow ambient background

<ngx-anabo-space
  theme="stars-glow"
  color="nebula"
  [speed]="1"
  [particleCount]="80"
/>

Using TypeScript types in your component

import { Component } from '@angular/core';
import {
  NgxAnaboSpaceComponent,
  SpaceTheme,
  SpaceColor
} from 'ngx-anabo-space';

@Component({
  standalone: true,
  imports: [NgxAnaboSpaceComponent],
  template: `
    <ngx-anabo-space
      [theme]="selectedTheme"
      [color]="selectedColor"
      [speed]="4"
    />
  `
})
export class AppComponent {
  selectedTheme: SpaceTheme = 'full';
  selectedColor: SpaceColor = 'aurora';
}

SSR Support

This library is fully SSR (Server-Side Rendering) safe. Canvas and animation APIs are guarded with isPlatformBrowser() and will not run on the server.

Works out of the box with:

  • Angular Universal
  • @angular/ssr
  • provideClientHydration()

No extra configuration needed.


TypeScript Types

All types are exported and available for use in your app:

import { SpaceTheme, SpaceColor } from 'ngx-anabo-space';

// SpaceTheme
type SpaceTheme = 'stars' | 'lines' | 'glow' | 'stars-lines' | 'stars-glow' | 'full';

// SpaceColor
type SpaceColor =
  | 'classic' | 'aurora'    | 'nebula' | 'galaxy'
  | 'matrix'  | 'mars'      | 'ocean'  | 'blossom'
  | 'moonlight'| 'electric';

Browser Support

| Browser | Supported | |---|---| | Chrome | ✅ | | Firefox | ✅ | | Safari | ✅ | | Edge | ✅ | | IE 11 | ❌ |


Requirements

| Package | Version | |---|---| | @angular/core | >= 17.0.0 | | @angular/common | >= 17.0.0 |


Building Locally

# Clone the repo
git clone https://github.com/yourusername/ngx-anabo-bg.git
cd ngx-anabo-bg

# Install dependencies
npm install

# Build the library
ng build ngx-anabo-space

# Run the demo app
ng serve demo

Publishing

# Build for production
ng build ngx-anabo-space --configuration production

# Navigate to dist
cd dist/ngx-anabo-space

# Publish to npm
npm publish

Changelog

1.0.0

  • Initial release
  • 6 themes, 10 color palettes
  • Mouse interaction
  • Shooting stars
  • SSR safe

License

MIT © Your Name