Files
obsidian/Test/EventKit/DiscoveryQuestions/01-DiscoveryQuestions.md

7.6 KiB

tags
tags
eventkit
discovery-questions

Discovery Questions — Round 2

Deeper questions building on your earlier answers. These target the remaining open items from 08-OpenQuestions and drill into implementation details.


🎯 Scope & MVP

1. Primary Equipment Sectors

Which sectors should the MVP support first? Pick the top 2-3 that you'd want to demo:

  • Audio (PA systems, microphones, mixing desks)
  • Lighting (moving heads, LED fixtures, dimmers)
  • Video (projectors, LED walls, cameras)
  • Staging (decks, legs, railings)
  • Rigging (truss, motors, chains, shackles)
  • Power distribution (distros, cables, generators)
  • Furniture (tables, chairs, bars, décor)
  • Other: ___

Answer:

2. MVP Build Order

The natural order seems to be: Inventory + Scanning → Planning → CRM → Federation. Do you agree, or would you re-order?

Answer: I agree with the order.

3. EventKit's Own Pricing Model

How will EventKit itself be offered to customers?

  • Fully open source (self-hosted only, community support)
  • Open core (free self-hosted, paid SaaS with premium features)
  • Paid licence (self-hosted with per-seat or per-instance licence)
  • SaaS only
  • Other: ___

Answer:


⚙️ Technical Architecture

For asset/product search across potentially large inventories — start with PostgreSQL full-text search and add a dedicated engine later, or use something like Meilisearch from the start?

Answer: Seems good to start with PostgreSQL full-text search and add a dedicated engine later.

5. File Storage

Where should uploaded files (photos, manuals, certificates) live?

  • Local filesystem (simplest for self-hosted)
  • S3-compatible object storage (MinIO for self-hosted, AWS S3 for SaaS)
  • Support both, configurable per deployment

Answer:

6. Real-time Updates

Should the UI update in real-time (e.g. when another user scans an asset, dashboards update live)? If yes, gRPC server-streaming via ConnectRPC is the natural fit. Do you want this from the start?

Answer: Not from the start, but it would be nice to have in the future.

7. Background Jobs

For tasks like sending emails, generating reports, processing federation messages — use Go's built-in concurrency (goroutines + internal queue), or an external broker like NATS or Redis?

Answer: I want to deploy this on a Kubernetes cluster, so I would prefer to use an external broker like NATS or Redis.


📧 Communication & Integration

8. Email Integration

How should the CRM handle email?

  • Just log emails manually (no integration)
  • SMTP sending only (send from within EventKit, no inbox)
  • Full IMAP/SMTP integration (send and receive within EventKit)
  • Gmail/Outlook API integration
  • Start simple, expand later

Answer: SMTP and IMAP integration would be nice to have utilizing features like sub-addressing to route emails to specific projects or clients.

9. Marketing Features

Should EventKit include any marketing tools (e.g. email campaigns, newsletters), or leave this to dedicated tools like Mailchimp?

Answer: Not for now.

10. Calendar Sync

Should crew schedules and events sync with external calendars?

  • Google Calendar
  • Outlook / Exchange
  • CalDAV (generic)
  • iCal export only (manual, no live sync)
  • Not needed for now

Answer: CalDAV and iCal export only would be nice to have. And Google Calendar and Outlook / Exchange integration would be nice to have in the future.


📱 Scanning & Hardware

11. Primary Scanning Device

What should the primary scanning experience be?

  • Phone camera only (lower cost of entry)
  • Bluetooth barcode scanner paired to phone/tablet (faster for bulk ops)
  • Support both — phone camera as default, Bluetooth scanner as optional power-user feature
  • Dedicated rugged scanner devices

Answer:

12. Label Printing

How should QR labels be produced?

  • Generate PDF sheets — users print on any label printer (Avery sheets, etc.)
  • Direct integration with label printers (Brother QL, DYMO, Zebra)
  • Both — PDF as default, direct printing as optional
  • Not needed — users can print QR codes however they want

Answer: Both — PDF as default, direct printing as optional. But not needed — users can print QR codes however they want.


🔗 Federation Details

13. Federation Versioning

When the federation protocol evolves (new fields, new RPCs) — should there be a formal version negotiation during handshake, or rely on Protobuf's built-in backward compat and just document breaking changes?

Answer: Rely on Protobuf's built-in backward compat and just document breaking changes.

14. Dispute Resolution

When Company A returns equipment to Company B and they disagree about condition — what should EventKit provide?

  • Photo evidence required at dispatch and return (comparison view)
  • Timestamped condition logs with before/after
  • A formal dispute workflow (raise dispute, evidence, resolution)
  • Just logging — disputes handled out-of-band
  • Some combination of above: ___

Answer: Timestamped condition logs with before/after and just logging — disputes handled out-of-band.


🚛 Planning Details

15. Transport Planning

How advanced should transport logistics be?

  • Basic: assign vehicles to events, simple load lists
  • Intermediate: weight/volume calculations, truck pack lists
  • Advanced: route optimisation, multi-stop planning, fuel tracking
  • Start basic, extend later

Answer: Intermediate: weight/volume calculations, truck pack lists and advanced: route optimisation, multi-stop planning, fuel tracking. But start basic, extend later.

16. Venue Database

Should venue data be:

  • Local only — each instance manages its own venue records
  • Federated — instances can share venue specs across the network
  • Start local, federate later

Answer: Federated — instances can share venue specs across the network. But start local, federate later.


🌍 Localisation & Compliance

17. Language Support

Should the UI be localised from the start? If so, which languages for MVP?

  • English only for MVP
  • English + German
  • Full i18n framework from the start, translations added incrementally
  • Other: ___

Answer: Full i18n framework from the start, translations added incrementally. But other: English + German to start of.

18. Currency & Tax

Which currency and tax regime should be supported first?

  • EUR only (Austrian VAT rules)
  • EUR + GBP (UK VAT / Austrian VAT)
  • Configurable from the start (currency, tax rates, tax ID formats)

Answer: Configurable from the start (currency, tax rates, tax ID formats).


💡 UX & Design

19. Design Language

Do you have any preferences for the overall look and feel?

  • Clean and minimal (e.g. Linear, Notion)
  • Dashboard-heavy with data density (e.g. Grafana, Datadog)
  • Modern and colourful (e.g. Figma, Notion)
  • Reference app/website for inspiration: ___

Answer: Designed using shadcn ui components.

20. Dark Mode

Should dark mode be supported?

  • Yes, as default
  • Yes, as toggle (light default)
  • Not needed for MVP

Answer: Yes, as default. Eventually, I would like to have a toggle to switch between other color schemes as well (e.g. high contrast mode).