コンテンツにスキップ

最終更新日: 2026-04-17 17:30 JST

Mylist2

Mylist2 は、ニコニコ動画の動画を効率的に管理するための Web アプリケーションである。
ローカルストレージ(IndexedDB)を使用して 完全にブラウザ内で動作し、オフラインでも利用可能。

主要機能

  • マイリスト管理: 複数のマイリストを作成し、整理・管理(名前変更・削除も可能)
  • 動画追加: 動画ID/URLから情報を取得して追加
  • キーワード機能: 検索キーワードを保存して、後で素早く確認
  • ソート・検索: タイトル、再生数、投稿日時などでソート/検索
  • 一括操作: 複数動画を選択して他のマイリストへ移動/コピー/削除/更新
  • データ管理: インポート/エクスポートでバックアップ・移行。Google Driveへのバックアップも可能。
  • オフライン対応: Service Worker によりオフラインでも基本機能を利用可能
  • 情報更新: 再生数・コメント数などの最新情報を手動で更新

はじめに

動作環境

  • モダンブラウザ(Chrome / Firefox / Safari / Edge)
  • IndexedDB サポート必須
  • Service Worker 対応(HTTPS 環境または localhost)

初回起動時の設定

  1. アプリケーションの起動
    ブラウザで index.html を開く。初回起動時にデータベースが自動作成される。
  2. 最初のマイリスト作成
    左サイドバーの「新規マイリスト名」欄に名前を入力して追加。
  3. 動画の追加
    「マイリスト設定」の「動画ID または URL」欄に動画ID/URLを入力して動画を追加。
  4. 動画視聴ページでの動画の追加
    mlink-video-controller の追加ボタンから、視聴ページ上で動画を追加可能。

注意: 初回の動画情報取得には時間がかかる場合がある。API制限により、大量追加の際は間隔を空けること。

基本的な使い方

動画の追加方法

以下の形式で動画を追加可能。

  • 動画ID: sm12345678
  • 完全URL: https://www.nicovideo.jp/watch/sm12345678
  • 短縮URL: nico.ms/sm12345678

マイリストの操作

操作 方法 説明
新規作成 サイドバー入力欄 + 追加 新しいマイリストを作成
名前変更 「マイリスト設定」の名前欄 + 保存 選択中のマイリスト名を変更
削除 「マイリスト設定」の「マイリストを削除」ボタン 確認後にマイリストと動画を削除
選択 サイドバーのマイリスト名をクリック メインエリアに動画一覧を表示

動画アイテムの操作

操作 方法 説明
選択 チェックボックス 複数選択して一括操作
移動 移動ボタン 他のマイリストへ移動
コピー コピーボタン 他のマイリストへコピー
削除 削除ボタン 選択中マイリストから削除
情報更新 更新ボタン 再生数・コメント数等のメタデータを最新へ更新

検索とソート

  • マイリスト検索: サイドバー検索でマイリスト名を検索
  • 動画検索: メインエリア検索で動画タイトルを検索
  • ソート: 投稿日時、タイトル、再生数などのメタデータでソート

高度な機能

キーワード機能

検索キーワードをマイリストに保存して、すぐに検索結果ページへ飛ぶことが可能。

  1. 「キーワードを追加」欄にキーワードを入力
  2. 追加ボタンで保存
  3. リンクから検索結果に直にアクセス

一括操作

複数の動画を選択して効率的に操作可能(移動/コピー/削除/情報更新)。

動画情報の更新

再生数やコメント数などは時間経過で増える。個別更新・一括更新が可能。
API制限により短時間に大量更新するとエラーが発生する場合があるため、適度な間隔を空けて実行したほうがよい。

インポート・エクスポート

エクスポート(バックアップ)

  1. マイリスト設定をクリック
  2. エクスポートボタンをクリック
  3. ローカルを選ぶとJSONファイルがダウンロードされる。またはGoogle Driveにバックアップ。

エクスポートされるデータ例:

  • すべてのマイリスト情報
  • すべての動画情報
  • キーワード情報
  • 設定情報

インポート(復元)

  1. インポートボタンをクリック
  2. JSON ファイルを選択。またはGoogle Driveからインポート。
  3. データが自動的にインポートされる

注意:

  • 既存データは上書きされる
  • インポート前に必ずバックアップを取ること
  • 大量データの場合、処理に時間がかかる

レガシーデータ対応

旧バージョン(CustomMylist)のデータも適宜、自動変換してインポート可能。

トラブルシューティング

よくあるエラーと対処

  • 動画が追加できない
  • 動画ID/URL形式を確認
  • 動画が存在するか確認
  • 既に追加済みでないか確認
  • API制限にかかっていないか確認
  • 動画情報が更新されない
  • インターネット接続を確認
  • 時間を空けて再試行
  • ブラウザキャッシュをクリア
  • データが保存されない
  • IndexedDB 対応ブラウザか確認
  • プライベートブラウジングでないか確認
  • ストレージ容量に余裕があるか確認
  • Service Worker エラー
  • HTTPS/localhost 環境で実行
  • ブラウザが Service Worker をサポートしているか確認
  • 開発者ツールでエラー詳細を確認

データのリセット(最終手段)

警告: この操作により、すべてのマイリストと動画データが削除される。必要なデータは事前にエクスポートしておくこと!

  1. ブラウザの開発者ツールを開く(F12)
  2. 「Application」または「ストレージ」タブを選択
  3. 「IndexedDB」セクションで Mylist2DB を削除
  4. ページを再読み込み

技術的詳細

アーキテクチャ

  • フロントエンド: TypeScript / Vanilla JS / CSS3 / HTML5
  • データベース: IndexedDB(トランザクション・インデックス最適化)
  • PWA: Service Worker によるオフライン対応(キャッシュ戦略)
  • API統合: ニコニコ動画 API(レート制限・エラーハンドリング・キューイング)

データ構造(概要)

// マイリスト (mylists)
{
  id: number;
  name: string;
  createdAt: number;
  sortOrder: number;
}

// 動画 (videos)
{
  id: string;
  originalId: string;
  mylistId: number;
  title: string;
  viewCount: number;
  commentCount: number;
  mylistCount: number;
  thumbnailUrl: string;
  uploadedAt: number;
  authorName: string;
  length: number;
  addedAt: number;
}

// キーワード (keywords)
{
  id: number;
  mylistId: number;
  keyword: string;
  addedAt: number;
}

セキュリティ

  • すべてのデータはローカルに保存(外部サーバーへのユーザーデータ送信なし)
  • HTTPS 環境での動作推奨

パフォーマンス

  • インデックス最適化
  • API リクエストのキューイング
  • レイジーローディング

よくある質問

Q: データはどこに保存されますか?

A: すべてのデータはブラウザの IndexedDB にローカル保存される。外部サーバーには送信されない。

Q: 他のブラウザでデータを共有できますか?

A: エクスポートした JSON を他のブラウザでインポートすることで共有可能。または、Google Driveにログインしてインポートできる。

Q: 動画が削除された場合はどうなりますか?

A: マイリスト内の動画情報は保持されるが、情報更新時にエラーが表示される場合がある。必要に応じて手動で削除すること。

Q: 何本まで動画を保存できますか?

A: ブラウザのストレージ容量とディスクの最大サイズに依存するが、一般的には数万本の動画情報を保存可能。Firefoxの場合、通常ドメイン当たり2GBまで。永続ストレージが許可済みなら最大8TiBまで(ディスクの50%まで)。つまり、ストレージが1TBなら500GBまで、8TBなら4TBまで、16TBなら8TBまで保存可能。ただし、その頃にはこのWebアプリケーションのパフォーマンスの問題が立ちはだかると思われる。

Q: オフラインでも使用できますか?

A: Service Worker により基本的な閲覧・管理は可能。ただし、動画情報の取得・更新にはインターネット接続が必要。