SIMON Master Console Rebuild
True command center for SIMON + WEB360
This rebuild gives you a cleaner production spine: interactive tree, live viewer, guarded editor, dynamic graphics, architecture map, and note storage. It is designed to sit beside your existing
console.php
and become the stronger replacement path.
Dashboard
Tree
Viewer
System Map
File Registry
Notes
Files
15,275
Folders
405
Scanned Size
3.84 GB
PHP Files
870
Editable Text Files
12,538
File viewer
guarded to /htdocs
/admin/accounting.php
<?php declare(strict_types=1); require __DIR__ . '/admin_common.php'; simon_handle_auth(); simon_require_login(); $registry = simon_load_registry(); $totals = simon_totals($registry); $bills = $registry['financials']['bills'] ?? []; simon_render_header('Accounting', 'accounting.php'); ?> <section class="grid g-4"> <div class="stat"><div class="kpi-label">Monthly Bills</div><div class="n">$<?= number_format($totals['monthly_bills'], 2) ?></div></div> <div class="stat"><div class="kpi-label">Cash on Hand</div><div class="n">$<?= number_format((float)($registry['company']['cash_on_hand'] ?? 0), 2) ?></div></div> <div class="stat"><div class="kpi-label">Debt Total</div><div class="n">$<?= number_format((float)($registry['company']['debt_total'] ?? 0), 2) ?></div></div> <div class="stat"><div class="kpi-label">Runway</div><div class="n"><?= $totals['runway_months'] > 0 ? number_format($totals['runway_months'], 1) : '0.0' ?></div><div class="tiny muted">months</div></div> </section> <div style="height:18px"></div> <section class="grid g-2"> <div class="card"> <div class="section-title"><h2>Recurring Bills</h2><span class="badge cyan">OPEX</span></div> <table> <tr><th>Name</th><th>Amount</th><th>Frequency</th><th>Status</th><th>Due Day</th></tr> <?php foreach ($bills as $bill): ?> <tr> <td><?= simon_e((string)($bill['name'] ?? '')) ?></td> <td>$<?= number_format((float)($bill['amount'] ?? 0), 2) ?></td> <td><?= simon_e((string)($bill['frequency'] ?? 'monthly')) ?></td> <td><?= simon_e((string)($bill['status'] ?? 'active')) ?></td> <td><?= simon_e((string)($bill['due_day'] ?? '-')) ?></td> </tr> <?php endforeach; ?> </table> </div> <div class="card"> <div class="section-title"><h2>Accounting Guidance</h2><span class="badge amber">NEXT ACTIONS</span></div> <ul> <li>Split operating expenses by hosting, tools, marketing, AI, design, and legal.</li> <li>Track invoices, due dates, and payment status in a ledger table.</li> <li>Separate book/art revenue from software MRR and service income.</li> <li>Add month-by-month cashflow and variance tracking.</li> <li>Store receipts and bill source links in a private attachments directory.</li> </ul> </div> </section> <div style="height:18px"></div> <section class="card"> <div class="section-title"><h2>Module Cost vs Revenue</h2><span class="badge purple">UNIT ECONOMICS</span></div> <table> <tr><th>Module</th><th>Cost</th><th>Revenue</th><th>Value</th><th>Readiness</th></tr> <?php foreach (($registry['modules'] ?? []) as $path => $module): ?> <tr> <td><strong><?= simon_e((string)($module['title'] ?? $path)) ?></strong><br><span class="tiny muted mono"><?= simon_e($path) ?></span></td> <td>$<?= number_format((float)($module['cost'] ?? 0), 2) ?></td> <td>$<?= number_format((float)($module['revenue'] ?? 0), 2) ?></td> <td>$<?= number_format((float)($module['value'] ?? 0), 2) ?></td> <td><?= (int)($module['completion'] ?? 0) ?>%</td> </tr> <?php endforeach; ?> </table> </section> <?php simon_render_footer(); ?>
Save file
Quick jump
open a path
Open