案件管理システム「PIMS」をGitHubで公開しました

個人制作の案件管理システム PIMS をGitHubで公開しました。

公開URLはこちらです。

https://github.com/ishuji/pims

PIMSは、問い合わせ受付から見積、受注、制作進行、納品、入金確認までをまとめて管理するための、軽量なWebベースの案件管理ツールです。

もともとは自分の制作業務を整理するために作ったものですが、同じように個人事業や小規模な制作業務を行っている方にも参考になる部分があるかもしれないと思い、ソースコードを公開しました。

PIMSでできること

PIMSでは、主に以下のような情報を管理できます。

  • 問い合わせ受付
  • 対応状況
  • 次回確認日
  • 見積・受注・制作中・確認中・納品済み・入金待ち
  • 完了案件
  • ボツ案件
  • 本日確認すべき案件
  • 案件スケジュール
  • クライアント情報
  • 担当者情報
  • 申し送りや注意メモ
  • 契約・約束事の記録

制作業務では、問い合わせ、見積、受注、納品、入金確認が別々のメモや表に分かれがちです。PIMSは、それらをひとつの流れとして扱えるようにすることを目的にしています。

技術構成

PIMSは、Python製のWebアプリです。

主な構成は以下です。

  • Python
  • FastAPI
  • Jinja2
  • SQLite
  • pandas / openpyxl
  • HTML / CSS / JavaScript

データ保存は、基本的にSQLiteを想定しています。従来のExcel管理に近い運用もできるように、XLSX形式にも一部対応しています。

使い方

GitHubからソースコードを取得します。

git clone https://github.com/ishuji/pims.git
cd pims

Pythonの仮想環境を作成します。

python -m venv .venv

仮想環境を有効化します。

macOS / Linuxの場合:

source .venv/bin/activate

Windowsの場合:

.venv\Scripts\activate

必要なパッケージをインストールします。

pip install -r requirements.txt

設定ファイルを作成します。

cp config.example.json config.json

Windowsの場合は、config.example.json をコピーして config.json という名前に変更しても構いません。

アプリを起動します。

uvicorn main:app --host 0.0.0.0 --port 8001

ブラウザで以下にアクセスします。

http://127.0.0.1:8001

初回起動後は、設定画面からデータベースを作成して使用します。

注意点

PIMSは、現時点では個人利用・ローカル利用を前提にしたツールです。

ユーザー認証や権限管理は内蔵していません。そのため、インターネット上にそのまま公開して運用することは想定していません。

外部からアクセスできるサーバーで使う場合は、VPN、リバースプロキシ認証、HTTPS、アクセス制限などを別途設定する必要があります。

また、実際の案件データ、顧客情報、設定ファイル、データベースファイルなどはGitHubには含めていません。公開しているのは、アプリケーション本体のソースコードです。

公開した理由

案件管理は、専用サービスを使えば便利ですが、小規模な制作業務では「そこまで大げさなものはいらない」と感じることもあります。

一方で、Excelやメモだけで管理していると、問い合わせの追跡、見積後の確認、納期、入金確認などが散らばりやすくなります。

PIMSは、その中間にあるようなツールです。

自分にとって必要な機能を、自分の業務に合わせて作っていく。そういう個人制作ツールとして公開しています。

ソースコードはこちらです。

https://github.com/ishuji/pims

必要に応じて、改造・参考・学習用途などに使ってください。

タイトルとURLをコピーしました