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

@starasia/scaffolder

v1.4.0

Published

StarAsia Developer Portal CLI (login SSO, buat project & modul ke GitHub) + engine template untuk dev-portal-api

Readme

@starasia/scaffolder (CLI & Core Engine)

Core scaffolder package untuk ekosistem StarAsia yang bisa dijalankan langsung lewat CLI maupun di-import oleh dev-portal-api (Web Internal Developer Portal).

Katalog Template

| ID | Isi | CI/CD | | :--- | :--- | :--- | | node-fe-standalone (default) | React 18 + Vite + @starasia/admin + @starasia/sso v2 (custom login / OIDC redirect) | Firebase Hosting dev/prod | | node-mfe-remote | MFE remote @module-federation/vite (expose ./App & ./menu), dual-mode standalone & host | Firebase Hosting dev/prod | | node-express-api | Express + TS ESM + Prisma + Joi, 4-layer route → controller → service → repository | Cloud Run (main.yml) | | go-fiber-api | Go 1.22 + Fiber v2, envelope response seragam | Cloud Run (main.yml) | | python-fastapi | Python 3.12 + FastAPI + Pydantic v2 | Cloud Run (main.yml) | | rust-axum-api | Rust + Axum 0.8 + Tokio, envelope response & header SSO | Cloud Run (main.yml) | | rust-leptos-web | Rust + Leptos 0.8 (CSR/WASM) + Trunk — tanpa @starasia/admin, SSO, MFE | Firebase Hosting dev/prod | | electron-desktop-shell | Desktop macOS/Windows: Electron shell yang membuka web app (acuan ofa-pro-desktop) + paksa update | Release tag → installer + update.json di Firebase Hosting | | rust-egui-desktop | Desktop native Rust (egui) macOS/Windows/Linux + paksa update | Release tag → paket + update.json di Firebase Hosting |

Cara Pakai via CLI

CLI terhubung ke Dev Portal — sama dengan versi web: login SSO, akses mengikuti admin-dashboard, project tercatat di Riwayat, bisa membuat aplikasi SSO, dan template selalu versi terbaru dari server.

npx @starasia/scaffolder login          # login SSO lewat browser (sekali; token disimpan & diperbarui otomatis)
npx @starasia/scaffolder                # buat project baru: template → nama → tujuan → aplikasi SSO
npx @starasia/scaffolder create --template node-fe-standalone --name billing-web-app \
  --org Star-Perkasa-Technology --sso new
npx @starasia/scaffolder add-module --name invoice --type backend-module \
  --org Star-Perkasa-Technology --repo billing-api        # push ke branch feat/module-invoice
npx @starasia/scaffolder history        # riwayat dev portal
npx @starasia/scaffolder --help

Tujuan project (--dest, default ditanya):

| Tujuan | Hasil | | :-- | :-- | | github-clone | repo GitHub dibuat lewat dev portal, lalu otomatis di-clone ke <folder>/<nama> (branch dev) | | github | repo GitHub saja (sama dengan versi web) | | local | file ditulis ke <folder>/<nama> di laptop, tanpa GitHub — tetap pakai template & aplikasi SSO dari dev portal dan tercatat di Riwayat |

--out <folder> menentukan folder induk (default: folder saat ini). Hanya CLI yang bisa menulis ke laptop — versi web selalu ke GitHub.

Token GitHub diambil dari env GITHUB_TOKEN (scope repo, workflow, read:org) atau otomatis dari GitHub CLI (gh auth login).

Mode lokal (tanpa dev portal, dipakai developer di dalam repo):

npx @starasia/scaffolder add-module --local --type mfe-feature --name purchase-order   # route & menu otomatis terdaftar
npx @starasia/scaffolder init --name tmp-app --template node-express-api --out /tmp     # verifikasi template

Env opsional: STARASIA_DEV_PORTAL_API, STARASIA_SSO_URL, STARASIA_DEV_PORTAL_CLIENT_ID, STARASIA_DEV_PORTAL_CALLBACK_PORT (default 53682), STARASIA_NO_BROWSER=1.

Publish ke npm

Otomatis lewat GitHub Actions (.github/workflows/publish.yml): setiap push ke main mem-publish versi di package.json bila versi itu belum ada di npm. Rilis baru cukup naikkan version (samakan dengan Vx.y.z rilis). Token: secret NPM_TOKEN di environment production.

Build & sinkron ke dev-portal-api

Package ini tidak punya node_modules sendiri; pakai tsc milik dev-portal-api:

cd dev-portal/starasia-scaffolder
rm -rf dist && ../dev-portal-api/node_modules/.bin/tsc && chmod +x dist/cli.js
yarn pack --filename ../dev-portal-api/packages/starasia-scaffolder.tgz
# atau cukup: cd ../dev-portal-api && yarn sync:scaffolder