requests-and-offers
💡 摘要
一个供Holochain社区使用的点对点公告板,用于发布服务和资源的请求和报价。
🎯 适合人群
🤖 AI 吐槽: “看起来很能打,但别让配置把人劝退。”
风险:Medium。建议检查:是否执行 shell/命令行指令;是否发起外网请求(SSRF/数据外发);文件读写范围与路径穿越风险。以最小权限运行,并在生产环境启用前审计代码与依赖。
Requests and Offers
A simple peer-to-peer bulletin board for the Holochain community, enabling creators, developers, and organizations to post requests and offers for services, skills, and resources with direct contact facilitation.
🚀 Quick Start
# Clone and setup git clone https://github.com/Happening-Community/requests-and-offers.git cd requests-and-offers && nix develop bun install && bun start
📖 Documentation
Essential Reading
- 📋 Project Overview - Complete project introduction and features
- 🚀 Quick Reference - Essential commands, patterns, and workflows
- 🏗️ Architecture - System design and 7-layer Effect-TS architecture
- 🔧 Developer Guide - Setup and development workflow
- 🆘 Troubleshooting - Common issues and solutions
- 📚 Full Documentation Index - Comprehensive documentation catalog
Quick Reference
- Requirements: Overview | Features | Use Cases
- Technical: API Reference | Zomes | Testing
- Community: Contributing | Discord | Website
🛠️ Development Commands
Running the Application
# (from project root) # Development Mode - Full Holochain app with dev features bun start # Start complete Holochain app (2 agents by default) AGENTS=3 bun start # Custom number of agents
Testing
bun test # All tests bun test:ui # Frontend tests bun test:unit # Unit tests (requires Nix) bun test:integration # Integration tests
Building
bun build:zomes # Build zomes bun build:happ # Build complete hApp bun package # Package for distribution
Note: Unit tests require Nix environment due to hREA integration. Use
nix develop --command bun test:unitfor autonomous execution.
🔧 Development Features System
The project uses atomic environment-based feature control through the DevFeatures Service, providing fine-grained control over development features without a master switch.
🎯 Atomic Feature Control
Each development feature is independently controlled via environment variables:
# Mock/Testing Utilities - Shows mock data buttons in forms for testing VITE_MOCK_BUTTONS_ENABLED=false # Network Peers Display - Shows all network peers in test mode VITE_PEERS_DISPLAY_ENABLED=false
🧑💻 Development Mode
- Purpose: Full development experience with debugging tools
- Command:
bun start(from project root) - Features: Mock data buttons, network peers display, development utilities
- Environment: Uses
.envwith atomic feature control - Service: DevFeatures Service provides centralized feature management
🏗️ Build Mode
The application supports production builds through Vite:
- Production Build:
bun run build(from ui directory)
Development features are controlled at runtime via the atomic environment variables in .env, not through different build configurations.
🏗️ Architecture Integration
The DevFeatures Service follows the 7-layer Effect-TS architecture:
- Service Layer:
DevFeaturesServicewith Context.Tag dependency injection - Schema Validation: Type-safe Effect Schema definitions
- Component Integration: Used across all form components
- Production Safety: Automatic removal via Vite tree-shaking
Usage Example:
import { shouldShowMockButtons } from '$lib/services/devFeatures.service'; // In components without Effect context if (shouldShowMockButtons()) { // Show mock data buttons }
For detailed information, see Architecture Overview and Developer Guide.
📁 Project Structure
requests-and-offers/ ├── dnas/requests_and_offers/ # Holochain DNA with coordinator/integrity zomes ├── ui/ # SvelteKit frontend with 7-layer Effect-TS architecture ├── tests/ # Tryorama integration tests └── documentation/ # Comprehensive project documentation
See Architecture Overview for detailed system design.
🔄 MVP Transition
This project is currently transitioning to a simplified MVP approach:
Simplified MVP Features
- Bulletin Board: Simple request/offer listing system
- Direct Contact: Clear display of contact information for communication
- User Management: Archive/delete own listings
- Search & Browse: Find requests and offers by keywords and tags
Post-MVP Features (Coming Later)
- Exchange Process: Proposal, agreement, and review workflows
- In-App Messaging: Secure communication between users
- Reputation System: Review and rating mechanisms
- Advanced Matching: Algorithmic request/offer matching
See MVP Documentation for details on the simplified approach.
🤝 Community & Licensing
- Discord: Join our community
- Website: hAppenings.community
- Contributing: See Contributing Guide
- License: Cryptographic Autonomy License v1.0
优点
- 促进直接沟通。
- 支持多种请求和报价。
- 鼓励社区参与。
缺点
- MVP阶段功能有限。
- 依赖Holochain生态系统。
- 可能会出现垃圾信息或无关帖子。
相关技能
免责声明:本内容来源于 GitHub 开源项目,仅供展示和评分分析使用。
版权归原作者所有 happenings-community.
