NOOKLAB(ヌークラボ)は、
CGI・PM・CSS・JavaScript・JSON・LOG・TXT などを用いた一人用のコード実験室です。
コードの管理・検証・比較を目的としています。
なぜ作ったのか?
検証コードのファイル履歴管理が手間でした。
そのため、制作の工程を逐次残しておけるシステムが欲しかったのです。
機能概要
NOOKLAB は、
Perl CGI を中心とした軽量な管理・検証システム です。
データベースは使用せず、
すべての情報を JSON およびテキストファイルで管理します。
主な用途は以下の通りです。
- CGI / PM / JS / CSS / HTML / TXT 等の検証・管理
- 制作工程を含むファイル履歴の保存
- ファイル内容の閲覧および差分比較
- 管理用 UI によるファイル操作
- 管理者操作ログの記録
小規模開発や個人検証用途を前提としており、
CGI が動作する環境であればそのまま利用できます。
セキュリティ・管理機能
- 管理者認証・セッション管理
- CSRF トークンによる操作検証
- 操作ログの記録(投稿・削除・閲覧・DL 等)
- ファイル操作の排他制御(ロックによる書き込み防止)
- パス検証・入力値検証による不正操作防止
NOOKLAB は公開システムではなく、
管理者一人が安全に作業することを前提に制御と記録を重視した構成です。
構成ファイル
| ファイル/ディレクトリ | 役割 |
|---|---|
| index.cgi | 全機能を統合するメイン CGI |
| nooklab_common.pm | 共通処理 |
| nooklab_auth.pm | 認証・セッション管理 |
| nooklab_filesystem.pm | ファイル保存・管理・比較 |
| resource/data/ | 投稿・検証ファイル保存先 |
| resource/logs/ | 操作ログ保存先 |
| resource/css/ | 管理画面用 CSS |
| resource/js/ | 管理画面補助用 JavaScript |
※ 実際のファイル名・構成は環境により異なります。
提供形態
本システムは、
制作者本人の利用を主目的として作成しています。
特定の提供形態や配布方針は定めておらず、
必要に応じて試用してもらうことがあります。
対応環境
- Perl 5.10 以降
- UTF-8 対応
- CGI 実行可能環境
- データ保存形式:JSON(DB 不要)
ライセンス
- 著作権:© MOMOWORK
- 商用利用可
- 改変可
- 再配布禁止








編集後記
終わりました。
ここからが、はじまりです。
今まで作ってきたCGIの精度をあげていこうと思います!