Created detailed guide explaining all environmental tracking features
and updated README with environmental tracking section.
Documentation (ENVIRONMENTAL_TRACKING.md):
- Complete overview of all trackable environmental factors
- Detailed explanations of soil, nutrients, climate, lighting
- API endpoint documentation with examples
- How recommendations system works
- Environmental health scoring explained
- Best practices for accurate tracking
- Use cases for different types of growers
- Privacy considerations for environmental data
- Troubleshooting guide
- Future enhancement roadmap
Features Documented:
- Soil composition (pH, texture, drainage, amendments)
- Nutrient profiles (NPK, micronutrients, EC/TDS)
- Lighting conditions (natural/artificial with metrics)
- Climate tracking (temp, humidity, airflow, zones)
- Growing locations (indoor/outdoor/greenhouse)
- Container information (type, size, drainage)
- Watering schedules and water quality
- Surrounding environment (companions, pests, ecosystem)
- Growth metrics and health scores
API Documentation:
- /api/environment/recommendations - Personalized advice
- /api/environment/similar - Find similar conditions
- /api/environment/compare - Compare two plants
- /api/environment/analysis - Network-wide insights
Updated README.md:
- Added environmental tracking features section
- Link to comprehensive ENVIRONMENTAL_TRACKING.md guide
- Listed all major tracking capabilities
This documentation helps users:
- Understand what environmental data to collect
- Learn how to use the tracking features
- Interpret recommendations and scores
- Optimize their growing conditions
- Contribute to collective knowledge
Implements comprehensive privacy and anonymity features including Tor
hidden service support, location obfuscation, and anonymous registration.
Privacy Features:
- Anonymous plant registration with zero personal information
- Location privacy levels: exact, fuzzy, city, country, hidden
- Pseudonymous identities and wallet addresses
- Privacy settings component with real-time Tor status
- Encrypted anonymous contact generation
Tor Integration:
- SOCKS proxy support for Tor connections
- Hidden service (.onion) configuration
- Tor connection detection and status API
- Docker Compose setup for easy Tor deployment
- Automatic privacy warnings when not using Tor
Location Obfuscation:
- Fuzzy location: ±1-5km random offset
- City level: ~10km grid
- Country level: ~100km grid
- Hidden: complete location privacy
- Haversine-based distance calculations preserved
Anonymous Registration:
- /plants/register-anonymous endpoint
- Privacy-first UI with Tor status banner
- Anonymous IDs and wallet addresses
- Optional pseudonym support
- Encryption key support for enhanced security
Infrastructure:
- Tor service integration (lib/services/tor.ts)
- Privacy utilities (lib/privacy/anonymity.ts)
- PrivacySettings React component
- Tor status API endpoint
- Docker and docker-compose configurations
- Example Tor configuration (torrc.example)
Documentation:
- Comprehensive TOR_SETUP.md guide
- Installation instructions for Linux/macOS/Windows
- Privacy best practices
- Troubleshooting guide
- Security considerations
- Updated README with Tor features
Dependencies:
- Added socks-proxy-agent for Tor proxy support
This enables:
- Privacy-conscious growers to share anonymously
- Protection of exact home locations
- Censorship-resistant plant sharing
- Community building without identity disclosure
- Compliance with privacy regulations
All privacy features are optional and configurable.
Users can choose their desired privacy level.
Updated the entire project to use Bun instead of npm/yarn for:
- Faster package installation (3x faster than npm)
- Native TypeScript support
- Better runtime performance
- Built-in bundler
Changes:
- Updated package.json to use bun in all scripts
- Renamed project from example-marketing to localgreenchain
- Added bunfig.toml for bun configuration
- Updated README with Bun installation instructions
- Added "Why Bun?" section explaining benefits
- Updated .gitignore for bun-specific debug logs
- Changed all npm/yarn references to bun commands
All commands now use:
- bun install (instead of npm install)
- bun run dev (instead of npm run dev)
- bun test (instead of npm test)
This commit implements a complete blockchain-based plant tracking system
that preserves lineage across clones, seeds, and all plant offspring while
connecting growers through geographic proximity.
Features implemented:
- Custom blockchain with proof-of-work consensus
- Plant registration and cloning with lineage tracking
- Geographic discovery to find nearby plants and growers
- Integration with plants.net API for plant identification
- Comprehensive web UI for plant management
- RESTful API endpoints for all operations
- Network statistics and visualization
Core Components:
- lib/blockchain/: PlantBlock, PlantChain, and blockchain manager
- lib/services/: plants.net API and geolocation services
- pages/api/plants/: REST API endpoints for all operations
- pages/: Frontend UI pages for registration, exploration, and lineage
Technical Details:
- TypeScript for type safety
- Next.js for server-side rendering
- Tailwind CSS for responsive design
- JSON file-based blockchain storage
- Haversine distance calculations for geolocation
- OpenStreetMap integration for geocoding
This system enables large-scale adoption by:
- Making plant lineage tracking accessible to everyone
- Connecting local communities through plant sharing
- Providing immutable proof of plant provenance
- Supporting unlimited generations of plant propagation
- Scaling from individual growers to global networks
Documentation includes comprehensive README with:
- Quick start guide
- API reference
- Architecture details
- Scaling recommendations
- Use cases for various audiences
- Roadmap for future enhancements