Glossary | Cine Power Planner

Glossary

Domain-specific terms used across the Cine Power Planner documentation and codebase.


A

  • Activity Log: A chronological record of changes made to shared projects, visible in the collaboration panel.
  • AfA (Absetzung für Abnutzung): German tax depreciation — writing an asset's cost off over its useful life. The AfA / Depreciation panel (Accounting → Reports) turns owned-gear purchase data into yearly EÜR expenses: GWG (≤ €800 net) write off in full in the acquisition year (EÜR Zeile 31); higher-value items depreciate straight-line over their useful life (Zeile 29).
  • Anlage EÜR: Annex to the German income tax declaration for sole proprietors and freelancers under § 4 Abs. 3 EStG. Lists business income on one side and business expenses (Betriebsausgaben) on the other, organized by Zeile (line number). Each Accounting expense category in Cine Power Planner carries an euerLine field that pre-maps it to the correct line (e.g. Z44 Reisek. Unternehmer, Z43 Bewirtung 70 %).
  • Archive: Moving a completed project out of the active dashboard so it no longer appears in the default view but remains recoverable.
  • Auto Gear: A rules engine that automatically adds equipment to gear lists based on configurable IF → THEN triggers (e.g., adding a camera triggers adding batteries and media).

B

  • Baseline: A locked snapshot of a project at a specific point in time, used as a stable reference for comparison (see Versioning).
  • Bewirtungsbeleg: German "hospitality receipt" — a restaurant / catering bill plus the special record-keeping required by § 4 Abs. 7 EStG (place, date, attendees, concrete business reason, amount, host signature). Without these fields the Finanzamt can disallow the deduction. Cine Power Planner surfaces a dedicated fieldset and a soft-warning banner when a receipt is categorized as 6822 Bewirtungskosten geschäftlich (70 % deductible) or 6820 Aufmerksamkeiten / Arbeitnehmerbewirtung (100 % deductible).
  • BMF-Schreiben (30.06.2021): Formal letter from the Bundesministerium der Finanzen interpreting the Bewirtungsbeleg requirements — clarifies that generic "Geschäftsessen" is rejected, that bills > €250 gross require itemized line items + restaurant Steuernummer + host name printed by the restaurant (not handwritten), and that the host's signature is non-negotiable.
  • Bulk Operation: Applying an action (e.g., provider assignment, category move) to multiple selected items simultaneously.

C

  • Camera Cage: A protective frame (e.g., SmallRig, Tilta) that mounts around a camera body, providing mounting points for accessories. Tracked in the device library with weight, material, and mount type.
  • Camera Package: A dedicated workspace tab for configuring a camera build — select camera body, monitor, wireless video, battery, and lens control system (FIZ). Drives the Connection Diagram.
  • camt.053: An ISO 20022 bank-statement XML format. Banking imports camt.053 files (alongside CSV) and auto-matches the transactions to invoices and expenses.
  • Category: A logical grouping within a gear list (e.g., Camera, Lenses, Lighting, Audio, Support). Items are organized into categories for clarity.
  • Cloud Sync: Optional Supabase-backed synchronization that keeps local IndexedDB data in sync across devices. Requires authentication.
  • Comment Thread: A contextual discussion attached to a project. Team members can reply, @mention collaborators, and resolve threads when discussion is complete.
  • Conflict Resolution: The process of reconciling divergent changes when local and remote copies of a project differ. Strategies include local wins, remote wins, and field-level merge.
  • Connection Diagram: An interactive visual diagram auto-generated from the Camera Package showing power, video, and data connections between devices. Nodes can be dragged and positions are saved per project.
  • Contact: A crew member, vendor, or rental house record stored in the contact book.
  • Crew Member: A provider type indicating equipment brought by a crew member rather than owned or rented.
  • Cursor Tracking: Real-time broadcast of cursor positions between collaborators via Supabase Realtime channels. Each cursor is labeled with the collaborator's name.

D

  • Delta Sync: An optimization where only changed fields are uploaded during cloud sync, reducing bandwidth.
  • Device Library: The built-in catalog of equipment that users can browse and add items from. The sidebar lists 26 stock categories; Cages and Chargers are not among them, because both are folded in as subcategories of Accessories.
  • DoF Simulator: An interactive depth-of-field calculator that visualizes focus range based on sensor size, focal length, aperture, and subject distance.
  • Double-Booking Detection: Calendar feature that warns when two projects overlap on the same dates.

E

  • Edit History: A field-level revision timeline that shows exactly which fields were changed, by whom, and when. Accessible from the workspace collaboration panel.
  • EÜR (Einnahmen-Überschuss-Rechnung): Cash-basis profit determination per § 4 Abs. 3 EStG used by sole proprietors and freelancers below the bookkeeping threshold (€800,000 turnover / €80,000 profit). The actual filing form is the Anlage EÜR — see that entry for the line mapping.
  • Expense: A single capture in the Accounting domain — a receipt scan, file upload, or manual entry. Has a kind (receipt / manual / travel), optional links to one project and one invoice, a status running through draft → final → paid (self-mode) or draft → submitted → approved → reimbursed (collab-mode when the linked project is owned by someone else), a category mapped to an SKR04 code + EÜR line + UStVA Kennziffer, and optionally a Bewirtungsbeleg sub-object.

F

  • Feature Module: A self-contained folder under app/src/features/ that contains all components, hooks, and styles for a single feature.
  • Field Lock: The lock collaborators actually experience. Focusing an input claims that one field for you; everyone else sees it read-only with a "Locked by [Name]" badge, and it releases the moment you tab away (10 s idle release, 15 s expiry without a heartbeat). Neighbouring fields on the same form stay editable — nothing blocks the project as a whole. Not to be confused with Project Locking.
  • Field-Level Merge: A conflict resolution strategy that merges changes at the individual field level (e.g., keeping the local title but the remote description).
  • Folder: A user-created group for organizing projects on the dashboard.
  • Frame Line Composer: A tool for designing custom frame line overlays and frame leaders for on-set monitoring (supports standard and custom aspect ratios, anamorphic lens squeeze, and PNG/XML export).

G

  • Gear List: The primary document: a structured list of equipment items organized by categories for a specific production.
  • GoBD: The German principles for proper, tamper-evident bookkeeping and record retention. The Kassenbuch enforces them: gapless Belegnummern, append-only (locked) entries, no negative till balance, and 10-year retention (§ 147 AO).
  • Guided Tour: An interactive step-by-step overlay that highlights UI elements and explains how to use a specific feature. Triggered from the Help panel.

I

  • IndexedDB: The browser-native database used as the primary local storage for all application data.
  • Item: A single piece of equipment in a gear list, with properties like name, category, quantity, notes, provider, and checked status.

K

  • Kassenbuch: A GoBD-compliant cash book for recording cash income (Bareinnahmen) and expenses (Barausgaben) per named register. Entries get a gapless Belegnummer, lock via Festschreibung, and feed the EÜR / UStVA. Includes a Zählprotokoll (denomination count) for till reconciliation.

L

  • Local-First: The architectural principle that data lives on the user's device first and cloud sync is optional. The app works fully offline.

M

  • Mahnwesen: The German dunning process for overdue invoices — reminder stages with statutory default interest (Verzugszinsen, § 288 BGB) and the €40 Pauschale (§ 288 Abs. 5 BGB). Invoices generate Mahnung PDFs and track the current dunning stage.

N

  • Native-text PDF: A PDF whose pages contain extractable Unicode text (typewriter-style invoices from Lexware / sevDesk / e-invoice systems). The receipt-scanner pulls text from these in under 500 ms without running OCR. Contrast with scanned PDF, which contains only rasterized page images and falls back to OCR.
  • Notification Center: A centralized panel for viewing collaboration alerts, sync updates, and system messages. Accessed via the bell icon in the sidebar.

O

  • OCR (Optical Character Recognition): The process of reading text out of a raster image. The receipt-scanner uses Tesseract.js (DE + EN language packs) running fully in-browser. Results are cached for 30 days by SHA-256 of the input blob — re-scanning the same receipt is instant and marked with a "from cache" badge.
  • OCR Cache: A dedicated IndexedDB database (cine-power-planner-ocr-cache) that stores OCR results keyed by [userUid, sha256(blob)]. 30-day sliding TTL on lastAccessedAt, 50 MB LRU eviction ceiling. Cleared on full logout via factoryReset. Cache hits bypass the Tesseract worker entirely.
  • OPFS (Origin Private File System): A browser API used for automatic crash-recovery backups of the IndexedDB data.
  • Outbox Pattern: A reliability pattern where operations destined for the cloud are queued locally and retried until successfully delivered.
  • Owned Gear: Equipment that the user or production company owns, tracked separately from rentals.

P

  • Power Summary: A dedicated workspace tab analyzing power consumption for a gear list — track watts, battery runtime, and power distribution across devices.
  • Presence: Real-time indicators showing which collaborators are currently viewing or editing a shared project.
  • Project: A production (film shoot, photo session, etc.) that contains a gear list, metadata, calendar events, and a version history.
  • Project Chat: Real-time messaging within a collaborative project workspace for quick coordination between team members.
  • Project Locking: A one-editing-session-at-a-time guard on your own account. Opening a project that is already open in another of your tabs — or on another of your devices — blocks the second session instead of letting the two write over each other. It is not a collaborator lock: another user editing the same project never locks it against you, because collaborator locking is per field (see Field Lock). Implemented by useProjectLock, which stores the lock under your own user id.
  • Project Locked Overlay: The full-screen dialog that guard puts up instead of the workspace, titled Project Open in Another Tab (or …on Another Device). It offers three choices — Force Open Here, View in Read-Only Mode, Back to Dashboard — and it also clears itself once the other tab or device releases the lock. It never names another user, because the session it is protecting you from is your own. See Collaboration → Project Locking.
  • Provider: The source of an equipment item: owned, rental, or crew member. Used for filtering and separate PDF exports.
  • Provider Filter: An export option that generates separate PDF pages grouped by provider type.
  • PDF Tools: A suite of 86 offline, browser-based tools for manipulating PDFs (merge, split, compress, encrypt, sign, convert, edit metadata, etc.). Files never leave the device.
  • PWA (Progressive Web App): The delivery mechanism — Cine Power Planner can be installed on desktop and mobile like a native app while remaining a web application.

Q

  • Quick Switcher: A command palette (Cmd/Ctrl + K) for instant navigation to any project, feature, or setting.

R

  • Rental: A provider type for equipment rented from a rental house.
  • Restbuchwert: The remaining book value of a fixed asset — acquisition cost minus accumulated depreciation (AfA). Tracked per asset in the (in-development) Anlageverzeichnis.

S

  • Scanned PDF: A PDF whose pages contain only rasterized images of paper documents — no extractable text. The receipt-scanner falls back to OCR for these pages, capped at the first 10 pages with a yellow page-cap warning banner when the document is longer. Contrast with native-text PDF.
  • Searchable PDF: A PDF assembled by the Scan-to-PDF tool with an invisible OCR text layer behind the page images, so the resulting file is full-text searchable in any PDF viewer.
  • Service Layer: The app/src/data/ directory containing all business logic, storage operations, sync, PDF generation, and authentication code.
  • Skonto: An early-payment discount. The Banking allocator is Skonto-aware — a slightly short payment can still settle an invoice in full when the shortfall matches an agreed Skonto.
  • SKR04: Standardkontenrahmen 04 — DATEV's chart-of-accounts numbering used by German freelancers and small businesses for cash-basis accounting. Cine Power Planner ships a 37-row expense-category seed drawn from SKR04 and tailored for film production. Most rows are 6xxx (Betriebliche Aufwendungen) — e.g. 6663 Reisek. Verpflegung Pauschale, 6822 Bewirtungskosten geschäftlich, 6310 Equipment-Miete kurzfristig — but eight are not: 5400, 5900, 5923 and 5925 (Wareneingang / Fremdleistungen), 0440, 0670 and 0675 (Anlagevermögen, incl. GWG), and 1370. Each row also carries an EÜR line and a UStVA Kennziffer.
  • Slug: A human-readable URL identifier for a project (e.g., acme-commercial), used in place of opaque IDs for cleaner URLs.
  • Smart Duplication: Creating a copy of an existing project with options (e.g., include items, reset dates, copy metadata).
  • Storno (Stornorechnung): A cancellation invoice that reverses a finalized invoice (Factur-X TypeCode 381), restating the § 14 UStG mandatory fields. Finalized invoices are never deleted — they are cancelled via a Storno.
  • Sync Status: Visual indicator showing the current synchronization state: offline, synced, syncing, or error.

T

  • Template: A reusable project blueprint. Users can save a project as a template and create new projects from it.
  • Travel Day: A calendar event type for travel days that surround shoot days.

U

  • UStVA (Umsatzsteuervoranmeldung): German monthly or quarterly VAT pre-declaration. Reports turnover-VAT collected from customers and Vorsteuer (input-VAT) paid to suppliers; the difference is paid to or refunded by the Finanzamt. Each Accounting expense category in Cine Power Planner carries a ustvaKey (Vorsteuer-Kennziffer) that pre-maps the input-VAT to the correct UStVA line — typically KZ 66 for standard inland Vorsteuer, KZ 84+67 for § 13b reverse-charge (e.g. Adobe / Google / AWS invoices), or null for VAT-exempt categories (insurance, bank fees, Spesen-Pauschale).

V

  • Versioning: The system for creating labeled snapshots of projects over time. Includes baselines and change history comparison.
  • View Model: An orchestration-layer hook (in app/src/app/) that bridges feature components with data services.
  • Vorsteuer-Kennziffer: A two-or-three-digit code on the UStVA form identifying which line a particular kind of input-VAT lands on. Stored as ExpenseCategory.ustvaKey (string, or null for VAT-exempt categories). See UStVA.

W

  • Walkthrough: An interactive guided tour that highlights UI elements and explains features step-by-step.
  • Workspace: An organizational container for grouping related projects and settings.

Z

  • ZUGFeRD / Factur-X: A hybrid e-invoice standard that embeds structured EN 16931 XML inside a PDF/A-3. Invoices, quotes, and sub-rental documents export with this XML so the recipient's accounting software can read them automatically.

Last Updated: 2026-09-10 Version: 0.790.2