Standard Grant: Lume Web 2024

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

  1. Dashboard Plugin

    • User authentication system
    • API key management
    • Two-factor authentication
    • OAuth2 social login
  2. S5 Plugin

    • Basic implementation
    • Planned rewrite to match current specs
  3. IPFS Plugin

    • Upload and pinning support
    • UnixFS metadata tracking
  4. Billing Plugin

    • Free tier with usage limits
    • Paid plan framework
    • Usage tracking
  5. Admin Plugin

    • Cron job monitoring
    • System settings interface
    • Partial settings editor
  6. 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

  1. S5 plugin needs rewrite for current specifications
  2. Billing system deployment delayed due to database clustering issues
  3. Frontend needs stability improvements
  4. 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

Infrastructure