Lume Web 2024 Grant Final Report
Overall Summary
For the 2024 grant period, we focused on building core Sia integration following community feedback. We transformed the initial MVP with basic S5 integration into a working portal system with plugin support.
Work Completed
Core System
- Implemented a plugin-based architecture similar to Caddy
- Built in Go, aligning with Sia ecosystem tools
- Added cluster coordination using etcd
- Created a unified request model for operations
- Set up database support for MySQL/SQLite using gorm
Plugins Developed
-
Dashboard Plugin
- User authentication system
- API key management
- Two-factor authentication
- OAuth2 social login
-
S5 Plugin
- Basic implementation
- Planned rewrite to match current specs
-
IPFS Plugin
- Upload and pinning support
- UnixFS metadata tracking
-
Billing Plugin
- Free tier with usage limits
- Paid plan framework
- Usage tracking
-
Admin Plugin
- Cron job monitoring
- System settings interface
- Partial settings editor
-
Support Plugin
- Freescout integration
- OAuth2 SSO support
Technical Implementation
- Used TUS protocol for large file uploads
- Set up monitoring for system resources and MySQL
- Implemented Grafana dashboards
- Created docker images for deployment
- Developed terraform code for Akash deployment
Note: Renterd monitoring implementation is pending until renterd v2 adds proper Prometheus support (currently marked for v2 milestone).
Current Status
We’ve deployed to pinner.xyz and launched documentation at docs.lumeweb.com. The system includes basic resource monitoring and MySQL tracking.
Incomplete Work
- S5 plugin needs rewrite for current specifications
- Billing system deployment delayed due to database clustering issues
- Frontend needs stability improvements
- Admin tools require additional development
Strategic Decisions
- Built working MVP of sync plugin with JavaScript P2P implementation
- Current hybrid JavaScript approach proved too complex to maintain
- Future development will revisit this with a Golang implementation when appropriate
- Will reassess timing for P2P features based on project priorities
Next Steps
See our approved 2025 grant proposal for continuation of this work.
Repository Links
Core Components
- Portal Core: GitHub - LumeWeb/portal: The Web3 Hosting Platform · GitHub
- Dashboard Plugin: GitHub - LumeWeb/portal-plugin-dashboard: Portal dashboard plugin · GitHub
- IPFS Plugin: GitHub - LumeWeb/portal-plugin-ipfs · GitHub
- Frontend Plugin: GitHub - LumeWeb/portal-plugin-frontend · GitHub
- Admin Plugin: GitHub - LumeWeb/portal-plugin-admin · GitHub
Infrastructure
- Terraform Modules: GitHub - LumeWeb/terraform-modules · GitHub
- Devops Config: GitHub - LumeWeb/pinner.xyz-devops · GitHub
- Grafana Dashboards: GitHub - LumeWeb/grafana-dashboards · GitHub