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 🙏

© 2025 – Pkg Stats / Ryan Hefner

@istaging/fe-shared-component

v1.2.0

Published

[![Storybook](https://img.shields.io/badge/Storybook-FF4785?style=for-the-badge&logo=storybook&logoColor=white)](https://main--64f8b4a4c0a8a5007b4b4a4c.chromatic.com/) [![TypeScript](https://img.shields.io/badge/TypeScript-007ACC?style=for-the-badge&logo=

Readme

🚀 FE Shared Component Library

Storybook TypeScript React Tailwind CSS

📝 專案概述 / Project Overview

這是一個為 iStaging 設計的共享組件庫專案,旨在為所有產品線提供統一的 UI/UX 設計語言和組件。專案目標包括:

  • 🎨 建立統一的設計系統 - 提供高彈性和重用性的設計語言
  • 🤖 支援 AI 協作開發 - 建立標準化的 AI 工作流程
  • 提升開發效率 - 減少重複開發,加速產品迭代
  • 🎯 確保品牌一致性 - 所有產品線的用戶體驗保持一致
  • 🔧 降低維護成本 - 統一的架構和測試策略

💡 技術棧 / Tech Stack

  • 框架 / Framework: React 19.1.1 with Vite 7.1.2
  • 語言 / Language: TypeScript 5.8.3
  • 樣式 / Styling: Tailwind CSS 4.1.12
  • UI 基礎組件 / UI Primitives: Radix UI (avatar, checkbox, dropdown-menu, portal, radio-group)
  • 組件開發 / Component Development: Storybook 9.1.4
  • 測試 / Testing: Vitest 3.2.4 with Playwright for E2E testing
  • 建置工具 / Build Tool: Vite with Rollup
  • 程式碼檢查 / Linting: ESLint 9.33.0 with React and Storybook plugins
  • 程式碼格式化 / Code Formatting: Prettier 3.6.2
  • 套件管理 / Package Manager: pnpm 10.10.0
  • 版本管理 / Version Management: bumpp
  • CSS 處理 / CSS Processing: PostCSS with px-to-rem conversion

🚀 快速開始 / Quick Start

📦 安裝組件庫

npm install @istaging/fe-shared-component
# 或
pnpm add @istaging/fe-shared-component

🎨 引入樣式

/* Tailwind v4 專案 */
/* 給Tailwind v4解析時使用 */
@import "@istaging/fe-shared-component/foundations/tailwindv4/index.css";
/* 直接使用已編譯好的 global CSS(會在 :root 注入 tokens) */
@import "@istaging/fe-shared-component/foundations/css/index.css";
/* 或:只想在特定區域啟用 iStaging tokens,可使用 scoped 版本 */
/* 這個檔案只會在 .istaging-theme / [data-istaging-theme] 範圍內注入 tokens,避免污染全域 :root */
@import "@istaging/fe-shared-component/foundations/css/scoped.css";
// Tailwind v3 或 其他 CSS-in-JS 專案
import "@istaging/fe-shared-component/foundations/colors/js/index.js";

🧩 元件使用

import Button from "@istaging/fe-shared-component/components/Button";

function App() {
  return (
    <div>
      <Button variant="solid" size="md">
        點擊我
      </Button>
    </div>
  );
}

🛠️ 開發指南 / Development Guide

📖 開發指南

🎨 組件規範

🏗️ 專案結構

📦 打包過程

🔨 專案設定與雜項

⚖️ 授權 / License

此專案為 iStaging 內部使用,未經授權不得外傳。


注意 / Note: 此專案仍在積極開發中,API 可能會在正式版發布前有所變更。