# 🌿 Nature In Pots β€” Ultra Plant Tracker Platform > Modular, collaborative, end-to-end plant tracking and pricing platform with QR+barcode IDs, propagation logs, resale tools, and role-based management. --- ## 🧩 Overview This is a full-feature, plugin-driven Flask 2+ web application for managing and tracking plant ownership, propagation, pricing, and growth. It supports dynamic plant attributes, collaboration groups, trade logs, QR/barcode labeling, resale workflows, offline sync, moderator tools, and future AI/ML modules. Built for hobbyists, businesses, breeders, and community gardens. --- ## πŸš€ Core Features ### 🌱 Plant Profiles - Add, edit, and log plants with full propagation and ownership history - Each plant is assigned a permanent, scannable **QR code** and **barcode** - Plants can be marked as `Public`, `Unlisted`, or `Folder-only` - All pricing, logs, and lineage are tied to a plant ID and user ### 🧾 Grow Logs - Add logs with images, notes, and growth metrics - Track success/failure events, mutation events, pest/disease sightings - Link logs to substrate recipes and fertilizers ### πŸ”— Verified Lineage Tracking - Lineage links are created by the new owner - Parent plant's owner must **approve** the linkage - Verified lineage is marked with a badge and shown in plant lineage tree - Pending links are visible only to the creator ### πŸ’° Pricing Logic - Only the current owner and admins can see pricing - On transfer, original price is retained but hidden from the buyer - Buyer must submit their own price for tracking resale data - Admins see full price history; mods and others do not ### πŸ§ͺ Substrate + Fertilizer Tracking - Track custom mixes by ingredient (e.g., β€œFine Pumice”, β€œLarge Bark”) - Store cost per ingredient and auto-calculate total mix cost - Recipes can be reused across plants - Fertilizer schedules can be attached to logs and outcomes tracked ### πŸ“¦ Shipping Tracker - When a plant is sold, sellers can add: - Carrier, tracking number, est. delivery date - Ownership updates post buyer confirmation - Shipping logs are attached to the plant transfer log ### πŸ“ Plant Folders - Organize plants into folders (e.g., β€œFor Sale”, β€œ2025 Spring Batch”) - Each folder gets its own QR code: `https://domain.com/{username}/folder/{id}|{slug}` - Folders can be public, private, or unlisted --- ## πŸ§β€β™‚οΈ Users, Roles, and Groups ### πŸ‘€ User Roles - **User** – default - **Moderator** – can manage flags, notes - **Admin** – full backend, plugin, pricing, banning control - Roles are extensible via admin UI ### πŸ›‘ Moderator Panel - View and resolve reports - Add private notes to users or plants (e.g., warnings, suspicion) - Ban users - Banned users' plants become read-only - Cannot add new plants - Buyers can request transfer via email approval from banned seller ### πŸ‘₯ Collaboration Groups - Users can form groups to share: - Logs - Images - Pricing (opt-in) - Groups have role-based permissions (manager, editor, viewer) - Useful for stores, teams, or shared collections --- ## 🏷️ Labeling System: QR + Barcode ### QR Code - Generated on server after initial sync - Unique to plant, never changes - SVG and PNG available ### Barcode Fallback - CODE-128 format - If data too long, split into stacked barcodes - Same encoded info: plant ID, owner ID, visibility, timestamp - Printable as label from dashboard --- ## πŸ” Permissions Matrix | Feature | Owner | Group Member | Moderator | Admin | |--------------------------|-------|---------------|-----------|--------| | View Logs | βœ… | βœ… (if shared) | βœ… | βœ… | | Edit Logs | βœ… | πŸ”* | 🚫 | βœ… | | View Pricing | βœ… | βœ… (opt-in) | 🚫 | βœ… | | Ban User / Flag Review | 🚫 | 🚫 | βœ… | βœ… | | Approve Lineage | 🚫 | 🚫 | 🚫 | βœ… | | Confirm Lineage | βœ… | 🚫 | 🚫 | βœ… | πŸ”* if granted by group manager --- ## 🌍 Offline Sync (PWA) - Full add/log/edit possible offline - Sync queue uploads on connection - QR/barcodes generated **after** server confirms sync - Client-side validation before queue --- ## 🧠 Smart Tools ### ⭐️ User Reputation System - Users rated after trades (accuracy, responsiveness, helpfulness) - β€œTrusted Grower” tag auto-assigned above threshold - Can be revoked via vote or admin action ### 🌿 Inter-Plant Comparison - Timeline comparison for growth, size, or log outcomes - Side-by-side charts and event overlays --- ## πŸ”§ Admin & Dev Tools ### πŸ“€ Seed Data Generator - Seeds with common aroids, herbs, and test users - Covers full range of roles, plant types, and edge cases ### πŸ—‚ Plugin System - CLI & plugin discovery system - Admin can toggle plugins - Plugin types: CLI, UI Panel, API extension, webhook, scheduler ### πŸ—ƒ Data Export / Disaster Recovery - Export: SQL dump, file archive, JSON profile - Restore: Admin-initiated rollback or full upload restore --- ## πŸ›£ API System ### REST & GraphQL APIs - REST: OpenAPI-documented endpoints - GraphQL: Advanced multi-entity queries - JWT-secured - Follows role-based access rules --- ## 🌐 Internationalization - Flask-Babel integration - Language switcher in UI - Community-managed translation interface (admin toggled) --- ## πŸ“… Future Enhancements - 🧠 AI Journal Assistant (log suggestions, summarization) - πŸ“† Calendar View for logs/reminders - 🧰 Visual ERD Generator Tool - πŸ›’ Live Auctions Plugin (for curated resale events) --- ## 🧾 License & Contribution This project is part of **Nature In Pots** under **High Thyme Ventures**. Please contact the repository owner for collaboration, plugin submission, or access requests.