muku-core
飲食店のレジのジャーナルを読んで、月の数字を分解し、Excelのワークブックにまとめます。
これは 「ムク」という商品の計算部分 です。単体では動きますが、単体では商品になりません。 ムクの本体は、数字をどう読んで何を問いかけるかを決めている憲章のほうで、そちらは 使用権をお持ちの方にお渡ししています。
できること
レジのジャーナルCSVを渡すと、正規化した3つの表(取引・明細・割引)に揃えて、 そこから18枚のタブを持つExcelのワークブックを作ります。
- 売上の分解(店内・テイクアウト・物販。レジが2台以上でも1冊にまとまります)
- 客数・客単価・組数・組単価・組人数
- 曜日別・時間帯別(チャネルで絞れます)
- 滞在時間・卓占有率
- カテゴリ別・商品ABC分析(原価を渡せば粗利率まで)
- 割引と返品
- 予算根拠(前年実績で埋めてあります)
- 検算(合計が合っているか、何が取れていないか)
取れないものは空欄にします。推定で埋めません。 レジによって取れるものが違うので、ワークブックの設定タブに 「このお店のレジから読めるもの」の一覧が出ます。
対応しているレジ
| ジャーナル | 客数 | 原価 | 割引 | |
|---|---|---|---|---|
| Airレジ | ○ | ×(Airメイトから) | ○ | ○ |
| Airメイト | — | ○(会計数) | △ | × |
| MDでん票くん | ○(画面のコピーから) | ○(人数) | ○ | × |
でん票くんは明細のCSV出力を持たないレジですが、日報のXLSXと伝票画面のコピーから 同じ精度で読めます。
使い方
ふだんはClaudeが呼び出すので、直接触る必要はありません。
from v1core import airregi
from v1core.storeconfig import load
from v1core.workbook import build_workbook
config = load("store_config.json")
t = airregi.convert(["ジャーナル履歴_20260601-20260831.csv"], config=config)
build_workbook(t["txn"], t["lines"], t["discounts"], config,
daily=daily, target_ym="2026-08", out_path="ワークブック_202608.xlsx")
レジが2台以上ある店は v1core.multi.load(config) を使います。
使用許諾
オープンソースではありません。
- **ご自身のお店の分析に使うのは自由です。**台数も回数も制限しません
- 第三者の店舗の分析を業として請け負う場合は、別途の使用権が要ります。 コンサルティング・分析代行・自社サービスへの組み込み・研修教材としての利用が該当します
- 複製の配布、改変版の公開は禁じています
コードが公開されていることと、自由に使えることは別です。
全文は同梱の LICENSE.txt をご覧ください。
人の店で商売に使いたい方は、一度ご連絡ください。断るためではなく、 一緒にやれることがあるかもしれないので。
連絡先
t.watabe@mssbworks.com 株式会社ムササビ(mssbworks)
Release files for muku-core 1.20260911.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| muku_core-1.20260911.2.tar.gz | 125.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| muku_core-1.20260911.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 265.2 kB
Release files / muku_core-1.20260911.2.tar.gz
| Download URL | muku_core-1.20260911.2.tar.gz |
|---|---|
| Size | 125.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
6c38f437cc9bc8b2c9d6178cfe27685df712754a375e0d204ce2fcd7e8916560
|
|
BLAKE2b-256 checksum How to use checksums |
a885362b3545e5ba92019d77ab53d46008c804b6c0e9e793dfec231fa2de9421
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.6
|
Release files / muku_core-1.20260911.2-py3-none-any.whl
| Download URL | muku_core-1.20260911.2-py3-none-any.whl |
|---|---|
| Size | 139.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
73b85178bdbcfd5ed7ea53cf8edc1f8dd2887ba67d9fb93a8d36964db546f6cd
|
|
BLAKE2b-256 checksum How to use checksums |
605f391541a25df4e666d2d15f9c02e28b001ae524b2b7dc7f70a8f6c980dc86
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.6
|