Files
natureinpots_community/README.md
2025-05-27 04:23:51 -05:00

5.8 KiB
Raw Blame History

🌿 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.