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

mama-linter

v1.0.9

Published

A simple CLI linter with sound notifications

Downloads

386

Readme

mama-linter CLI

A CLI tool combining Prettier and ESLint with sound notifications

mama-Linter CLI は、ESLint と Prettier を使用してコードスタイルを統一し、手動修正箇所のリストアップや音声通知機能🎵を備えたツールです。


特徴

  • 自動修正: ESLint と Prettier によるコードの自動修正。
  • 手動修正箇所の特定: 修正が必要な箇所をリストアップ。
  • 音声通知: 修正完了や手動修正が必要な箇所を音声で通知。
  • 柔軟な設定: 対象ファイルや動作モードをオプションで指定可能。

インストール方法

以下のコマンドでインストールします:

npm install -g mama-linter

注意: インストールと実行時の名前について

このCLIツールのインストール時にはパッケージ名(mama-linter)を使用します。 実行時には、CLIコマンド名(my-linter)を使用します。

たとえば:

インストールコマンド

npm install -g mama-linter

実行コマンド

my-linter --help

このように、**インストール時の名前(mama-linter)と実行時の名前(my-linter)**が異なることに注意してください。


基本的な使い方

コマンド一覧

1. デフォルト動作

my-linter
  • 自動修正と手動修正箇所のリストアップを行います。
  • 修正完了後、音声通知が再生されます。

2. 修正のみ

my-linter --fix
  • 自動修正のみを行います。

3. チェックのみ

my-linter --check
  • コードスタイルのチェックのみを行います。

4. 音声通知の無効化

my-linter --noSound
  • 音声通知を無効化します。

5.特定のファイルやディレクトリを指定

my-linter --files "src/**/*.js"
  • 対象ファイルを指定できます。

6.実行モードの指定

my-linter --mode [mode]
  • 実行モードを指定します。 default: 自動修正と手動修正箇所のリストアップを行います。(デフォルト) fix: 自動修正のみを行います。 check: チェックのみを行い、修正は行いません。

7. 詳細ログ表示

my-linter --verbose
  • 詳細なログを表示します。

8. ヘルプの表示

my-linter --help
  • 使用可能なすべてのオプションとその説明を表示します。

デモの詳細: 手動修正と音声通知

mama-linterの操作を体験するためのデモリポジトリを利用できます。以下の手順で実施してみてください☺️

1.デモリポジトリの準備

1.リポジトリをクローン

git clone https://github.com/Jyoumama/mama-linter-demo.git
cd mama-linter-demo

2.mama-linter をグローバルにインストールします。

npm install -g mama-linter

3.依存関係のインストール(必要な場合)プロジェクト内の依存関係をインストールする場合は、以下を実行します。

npm install

これで、デモの準備が整いました!

2.デモ手順

以下の手順でmama-linterの動作を体験してください。

1.テストファイルのリセット

リセットコマンドでtestFile.js を初期状態(手動修正できる状態)に戻します。

my-linter reset-test

このコマンドは、以下の場合に便利です。

  • 手動で修正した後に、テストファイルを初期状態に戻したいとき。

  • テストを何度も繰り返したいとき。

注意:testFile.jsは、初期状態で提供されていますが、リセットコマンドを使用すること> で何度でも元の状態に戻せます。

オプション

詳細なログを表示する場合は、 --verbose オプションを付けて実行します。

my-linter reset-test --verbose

出力例:

🛠️ reset-test コマンドが呼び出されました!
リセットするファイル: src/testFile.js
✅ ファイルがリセットされました: src/testFile.js

2.My-Linterの実行

My-Linterを実行して、手動修正が必要な箇所をリストアップします。

my-linter

出力例:

⚠️ 修正が必要な箇所が残っています:
`src/testFile.js`
- 4:1 Unexpected var, use let or const instead. (no-var)
//'var' を 'let' または 'const' に置き換えてください (no-var)

説明:

  • var の使用が no-var ルールに違反していることを示しています。
  • エラーメッセージを参考に修正を行います。

3.手動修正の実施

  • エディタで testFile.js を開き、varlet または const に置き換えます。

修正例:

// 修正前
var noUseVar = "Hello";

// 修正後
let noUsedVar = "Hello"; // no-var ルールに準拠

4.修正完了の確認

再度My-Linterを実行して、修正が正しく反映されたか確認します。

my-linter

出力例:

🎉 手動修正が完了しました!

さらに、修正が完了したことを知らせる音声通知が再生されます。 **「やったね!」**という達成感を味わいましょう!🎵

捕足:他のファイルで試したい場合

reset-test コマンドはデフォルトで src/testFile.js を対象にしていますが、--file オプションで別のファイルを指定することも可能です。

my-linter reset-test --file=path/to/your/file.js

デモを試す流れの概要

1.リポジトリをクローン:

git clone https://github.com/Jyoumama/mama-linter-demo.git`

2.必要なツールのインストール:

npm install -g mama-linter

3.テストファイルのリセットと実行:

my-linter reset-test
my-linter

設定ファイルの例

以下は、My-Linterで使用されるESLintとPrettierの設定ファイルです。

eslint.config.js

import globals from "globals";
import pluginJs from "@eslint/js";
import eslintConfigPrettier from "eslint-config-prettier";

export default [
  {
    languageOptions: { globals: globals.nodeBuiltin },
  },
  pluginJs.configs.recommended,
  eslintConfigPrettier,
  {
    rules: {
      "no-var": ["error"],
      "prefer-const": ["error"],
      camelcase: ["warn"],
      "no-console": ["warn"],
      "no-unused-vars": ["warn"],
      semi: ["error", "always"],
      quotes: "off",
      indent: "off",
      "eol-last": ["error", "always"],
      "no-trailing-spaces": "error",
      "object-curly-spacing": ["error", "always"],
      "array-bracket-spacing": ["error", "never"],
    },
  },
  {
    files: ["src/testFile.js", "src/testFileTemplate.js"],
    rules: {
      "no-unused-vars": "off",
      "no-console": "off",
      "no-undef": "off",
    },
  },
];

prettier.config.js

export default {
  tabWidth: 2,
  useTabs: false,
  semi: true,
  singleQuote: false,
  trailingComma: "es5",
  bracketSpacing: true,
  printWidth: 80,
};

よくある質問(FAQ)

Q1. 音声通知を無効化できますか?

A1. はい、--no-sound オプションを使用してください。

Q2. 特定のファイルだけを修正したい場合は?

A2. --files オプションを使用して対象ファイルを指定してください。

Q3. 設定ファイルが見つからない場合の動作は?

A3. デフォルト設定が適用されます。ただし、カスタマイズを推奨します。


ライセンス

このプロジェクトは MIT ライセンスのもとで提供されています。