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

newtil-css

v0.3.3

Published

Utility based CSS

Readme


✨ 주요 특징

🎨 Material 3 Design 100% 지원하는 컴포넌트

Google의 Material Design 3 가이드라인을 완벽하게 반영한 컴포넌트를 제공합니다. 모든 디자인 원칙, 상호작용 패턴, 접근성 가이드라인을 정확히 구현합니다.

🎯 순수 CSS와 100% 동일한 명명 규칙

CSS 속성을 그대로 클래스명으로 사용하여 학습 곡선을 최소화합니다.

<div style="display: flex; justify-content: center;">...</div>
<div class="d:flex jc:center">...</div>

위 예제에서 아래 클래스 표현(d:flex jc:center)은 위의 인라인 스타일(display: flex; justify-content: center;)의 축약 표현입니다.

🎨 Google Icons 완벽 지원

Google Material Icons를 간편하게 사용할 수 있습니다.

<span class="n-icon icon:home">home</span>
<span class="n-icon icon:menu">menu</span>

🚨 버튼 컴포넌트 예제

아래는 Newtil CSS 버튼 컴포넌트를 사용하는 간단한 예제입니다.

<!-- Filled 타입 기본 버튼 -->
<button class="n-btn">Filled 버튼</button>

<!-- Tonal 타입, 라운드, 아이콘 포함 버튼 -->
<button class="n-btn btn:tonal btn-shape:round">
  <span class="n-icon icon:add" aria-hidden="true">add</span>
  추가하기
</button>

<!-- Outlined 타입, 아이콘 전용(사각형, 사이즈 2) 버튼 -->
<button class="n-btn btn:outlined btn-size:2 btn-shape:square n-icon icon:edit" aria-label="수정">
  edit
</button>

<!-- Disabled(비활성) 상태 버튼 -->
<button class="n-btn" disabled>비활성 버튼</button>

다양한 버튼 스타일과 상태를 n-btn, btn:tonal, btn:outlined, btn-shape:round, btn-size:2 등 클래스 조합으로 쉽게 구현할 수 있습니다.

🔧 CSS 변수 기반 컴포넌트

사용자 정의가 쉬운 유연한 컴포넌트 시스템을 제공합니다.

.n-section {
  --padding: var(--space-4);
  --bd-radius: var(--space-3);
}

🌓 다크 모드 자동 지원

prefers-color-scheme을 통해 자동으로 다크 모드를 지원합니다.

📱 반응형 디자인

모바일부터 데스크톱까지 모든 화면 크기에 최적화되어 있습니다.


🚀 빠른 시작

CDN으로 설치

<link href="https://unpkg.com/newtil-css@latest/dist/style.css" rel="stylesheet" />
<script src="https://unpkg.com/newtil-css@latest/dist/script.js"></script>    

npm으로 설치

npm install newtil-css

기본 사용법

<!DOCTYPE html>
<html lang="ko">
<head>
  <link href="path/to/newtil-css/style.css" rel="stylesheet" />
</head>
<body>
  <div class="n-layout">
    <header class="n-header">
      <h1>My App</h1>
    </header>
    <main>
      <section class="n-section section:card">
        <h1>Welcome</h1>
        <p>Newtil CSS로 빠르게 시작하세요!</p>
      </section>
    </main>
  </div>
</body>
</html>

📦 주요 컴포넌트

Layout

<div class="n-layout">
  <header class="n-header">...</header>
  <aside>...</aside>
  <main>...</main>
  <footer>...</footer>
</div>

Section

<section class="n-section section:card">
  <h1>제목</h1>
  <div>내용</div>
</section>

Section Types:

  • section:card - 경계선이 있는 카드 스타일
  • section:glass - Glassmorphism 효과
  • section:elevated - 그림자 효과

List

<ul class="n-list list-sep:solid list-dir:column">
  <li>항목 1</li>
  <li>항목 2</li>
  <li>항목 3</li>
</ul>

Button

<button class="n-btn btn-color:main btn-style:fill">
  클릭하세요
</button>

Form

<input class="n-input" type="text" placeholder="입력하세요" />
<select class="n-select">
  <option>옵션 1</option>
</select>

🎨 유틸리티 클래스

레이아웃

<div class="d:flex jc:center ai:center gap:4">...</div>
<div class="d:grid gtc:3">...</div>

간격

<div class="p:4 m:2">...</div>
<div class="px:4 py:2">...</div>

색상

<div class="c:main bg:base-1">...</div>

크기

<div class="w:100p h:50vh">...</div>

📚 문서

자세한 사용법과 예제는 공식 문서를 참고하세요.

주요 문서


🤝 기여하기

기여는 언제나 환영합니다!

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request

📖 참고 자료


📄 라이선스

이 프로젝트는 MIT 라이선스 하에 배포됩니다. 자세한 내용은 LICENSE 파일을 참고하세요.


👨‍💻 제작자

뉴렉처 (Newlecture)