Grant Proposal: Lume Web

From a technical perspective, great, I’ll let other delve into the usability of this. What I want to know, is how you’re going to attract users to pay money?

Early on in the Sia project, Lightspeed essentially laid out a business model that at the time was Filebase. We were then and still are too busy to take creating something like Filebase, so we’re very excited they did. In the end though, the thing they did that others have not, is (a) have a way to pay that users already know and use (credit cards and paypal etc) and then (b) give them tools they’re use to using to interface with the medium of storage.

These two things we said from the beginning would be required for Sia to be successful and they failed to do those things, and still fail to do those things. Providers who have, have gained traction and customers.

Lastly, of that $80k, how do you intend to the market the end result?

1 Like

Thanks for asking what’s often seen as the elephant in the room.

I did touch on this in my original grant, and just to be clear in case you only skimmed this thread, my grant was approved and I’m several months into development.

First, know that I’m largely anti-VC based on my own experience and observations from the past few years. I think VCs are a good route to build tech fast, if they do not end up controlling it, the IP, or have direct power. They often blow up though, so the risk in some cases is more theoretical and principled. I might compare that with the AI wars we have now where everything is closed source in a few AI labs. The tech rapidly evolves, but it stays owned by the few.

Now. I know every VC crypto/web3/etc company does develop in the open thanks to the foundational ethos, but in exchange, they often find other means of control or keeping power or ROI’ing that’s not in the interests of the community.

This is not a hard rule that VCs are evil… But it is a guideline based on what I see as the crypto/web3 VC playbook, so there are going to be exceptions and good-faith VC-funded projects. But there are very few of them IMHO.

Due to this… and the fact I come from a Linux FOSS background in my views, I just rather avoid all that shit show altogether and stick to the community to ensure what we build is by and for the community.

So, I am doing things with the community giving me a chance to make their investment, if you want to call it that, give them something that can solve a LOT of issues with Sia and the wider ecosystem.

And yes, I am aware of a lot of Sia’s history, drama, etc. I was not involved in the early days but after a year of being initiated into the cult… I mean community (just kidding guys :P), I have found all of Sia’s skeletons and why Sia has had a rough decade.

That said, unlike what many seem to have made into a meme, sia being allergic to marketing, I am realistic and I straddle both the worlds of Web2 and Web3.

Sia to an extent, I see as always a background player, and marketed to bigger players, and power users, but not retail.

So as for the how? One large route is FOSS/grassroots marketing. By creating public good services that are also hosted on sia, or store data on sia… The project solves a number of wider issues that start with education. In the process, Lume Web as a brand creates awareness for our mission and starts the needed network effect.

This is why I have invested in many web3/blockchain and ICANN assets. Creating open, community-driven, and community-built resources that serve as onboarding for new users and those skeptical or frankly calling us all scammers, as well as advancing the education of those in the community by crowdsourcing those who can help, but that may not be devs.

I have already spent a good % of the foundation grant on a new project brand/logo, website, and 2 other marketing websites, one for users, and one for those who want to support/host the infra of the new web.

I have a lot more planned as well. I have long-term ideas too, but they can only happen once Lume is actually fully working.

As for the business model of Lume as a community-focused business, I will be starting at some point (no ETA) by simply offering web accounts (private data encrypted by your identity key, which I can never decrypt) on the portal for a small yearly fee, and scale the storage plans offered as the project grows. Eventually, it will be webapps (aka dapp) too.

So simply put, web3 hosting services.

This is one prong of sustaining the project long-term outside having grant funding.

The other is that I will be creating a web3 domain registry with assets that I have acquired on Handshake. This, of course, requires the tech to be stable for the domains to be useful, just like in the current web.

I may get other revenue streams from services, but that’s more of an unknown, unknown right now.

I have also disclosed all my plans on the longer-term business aspect to the foundation and gotten guidelines of what they are ok with. So I have been fully transparent with the community regarding my plans and actions.

I hope this answers your criticism, which based on Sia’s history, is warranted to ensure we don’t fall into the same traps with failed experiments and some community members who have left or are exiled due to their own actions.

Kudos!

1 Like

March Progress Report

Repos worked on

Progress:

Development

This month has been focused on getting IPFS completed, getting IPNS support, getting ETH support, as well as getting the supporting libraries updated. I have also been focused on marketing/branding and website design tasks.

IPFS is working and currently uses both delegated routing and DHT. It uses the relay as an outbound socks proxy, and since libp2p encrypts with noise as does hyper, it is a black box and you cannot see what is being requested.
IPFS has over 40 bootstrap peers to mitigate issues with finding content outside the delegated routing nodes by IPFS.

IPNS was much simpler to implement and uses DHT to operate. It has its quirks though that will get ironed out later.

IPFS also stores the data to indexeddb in the browser, so when you fetch something, it can become instant afterward.

Next, ENS. This turned out to be a very hard issue to deal with, especially since I wanted to use the helios client in rust and hit MANY roadblocks. rust and wasm still have a lot of maturity to do with interacting with JS.

So my concerns about ETH taking 1-2 weeks turned out to be a reality.

Even after going through all of that, I ended up forking the code into a new branch and using a TS (TypeScript) client called kevlar. I took a bunch of its components and ended up creating a custom light client implementation between the relay and the browser. I also ran into issues with slow RPC and had to hop providers a few times after realizing that it was not the code.

After this, I created a new ETH DNS resolver and client library, which should be able to function as an ethers.js provider in the future. The ETH module and the DNS resolver are separate kernel modules.

Design, Marketing, and Websites

This month has been spent on designing lumeweb.com, and web3extension.io. web3relay.io is being designed as well but will be getting re-prioritized based on the upcoming tasks.

The project has, however, gotten its new branding finished to go with the new sites. They have been designed together and I am excited to see the new image of Lume launched soon.

The files of all branding (SVG) will be published on the GIT server by the time the sites launch, including the site code too, of course (and figma files). The project discord server was involved in the whole process of the design work and gave feedback. A Twitter poll was created too, to pick the final logo. I also invited the Sia community to come and look.

Next:

April is going to be a busy month:

  • I have started working on the extension code again
  • UX design of the extension will start this month, and hopefully, finish, but work may drag on into May. The UX is a large unknown on where things will go, and what engineering will be required to support the UX.
  • Development of the sites will start this month and hopefully, most will get finished based on the designs.
  • Relay development work is needed as is some possible DevOps work, but this might get pushed to May as well.

This concludes my report

1 Like

The committee is overall pleased with your proposal and the amount of work being completed towards the Lume ecosystem, but is still excited to see Sia-specific (core software) work resume as you mentioned directly interacting with renterd soon. Thanks!

Regards,
Kino on behalf of the Sia Foundation and Grants Committee

As soon as I can get the initial software out I will, as that’s the next step big picture. It does not mean I won’t do work on the extension/relay while doing the portal, but it does mean the portal is the next required puzzle piece.

Additionally, I have ideas on how to use the lume network to build the sia portal. So that means all hypercore/relay work becomes sia development.

Kudos.

April Progress Report

Repos worked on

Progress:

Development

This month started with a painful roadblock on the P2P networking stack inside the web browser that took roughly a week to solve.

After that, I ended up doing refactoring changes to the libhyperproxy library to support two modes. One where it has a single socket to talk over, and another where the client can request an outbound socket to any allowed port. This was adapted from the IPFS work.

I then took that and rewrote the HNS support to use this and use the network as a DHT proxy like IPFS, rather than have the relay run a full node.

The result from this lower-level work means being able to proxy sockets in for any service, both as single communication and in a DHT or similar style.

Next, I was able to get the extension code back up to speed using the new systems. Though I did have a fair amount of issues getting things to stream over correctly. I also had to add in some basic caching for IPNS as it’s still fickle.

However, on April 12, ETH hard forked which broke the ENS support. Upstream fixes have been made, but it is on the to-do to port them over to get ENS running again.

Other miscellaneous library changes have been made as well.

Next, I have also done work in DevOps and am outsourcing some services. CI is handled now by CircleCI as a FOSS project, and package management is handled by CloudSmith, also as a FOSS project. I decided that right now the priority was ensuring the code could not be subject to censorship, but could accept the other infra to be censored since the time/effort to get them fully operational does not make sense right now.

Next, I have also switched development practices to try and use https://semantic-release.gitbook.io.

Next, I have started the development of the portal and hope this will be quicker than expected due to the existence of an object API. This will be an all-in-one binary with a plugin system in Golang.

This has been started earlier than expected due to my team having to work on the other project priorities (design and websites) which is a blocking issue for me.

Lastly, I am also actively attempting to port or otherwise get running blake3 verified streaming in Golang. This may cause a large delay since I frankly have no idea what I’m doing and have to figure this one out slowly.

Design/Websites

Development work has been started on lumeweb.com. This is expected to be ready this month and will launch with the extension release. web3extension.io will get built after, and has equal priority with the extension work.

UX work on web3relay.io has been completed as well.

UX work on the extension started and has mostly been completed, subject to community feedback.

Next:

May will hopefully have the following:

  • lumeweb.com completed and ready to launch
  • web3extension.io completed and ready to launch
  • The extension ready to launch
  • More development work on the portal in between the above. Will hopefully have blake3 figured out in May, assuming I have the time.

This concludes my report

Thank you for the report, everything looks good so far!

May Progress Report

Repos worked on

Progress:

This month I have had to switch to only the portal development priority as all browser and website development were roadblocked by labor delays. I had to hire a new front-end developer and am now playing catch up to get the browser and marketing side of things up to speed.

The hardest issue with the portal so far has been blake3 and BAO support in Golang and I have had to jump through many experiments. @nemo has, however, got the core basics ported to Golang, and I am awaiting the rest to ensure compatibility with S5 and other ecosystems that may use it.

Some of the core API/db structure of the portal is in, including accounts, and auth, but not much has been heavily tested yet. Basic file uploads and downloads work. TUS (large file uploads is working as well), however, it needs a lot more stressing and finding bugs.

TUS is using a local cache/buffer approach rather than streaming direct to the network based on the community advice from Filebase. This is expected to evolve over time.

This month has been an odd one development-wise, so the amount of code work in git reflects that since a lot of other tasks had to be done instead.

Design/Websites

All website and extension designs are done minus any tweaks needed or community feedback. lumeweb.com is nearly done and will be having content and any needed improvements completed this month.

Next:

June will hopefully have the following:

  • lumeweb.com ready to launch.
  • web3extension.io ready to launch. web3extension.com will be a redirect.
  • Browser extension ready to launch as an MVP demo that uses a server I host as a relay and the Skynet v1 portal for browser code downloads. This might go into July depending on any complexities, but hoping it can get completed this month.

web3relay.io will get built after the extension as the marketing and relay release for the P2P net is currently a lower priority than the end user release.

This concludes my report

Thanks for the monthly report PCFreak!

June Progress Report

Repos worked on

Progress:

Core development

This month has been another mixed bag of unexpected priorities, but lots of progress has been made, even if it wasn’t the progress predicted.

Portal

The portal has had further development. First renterd has been split away and is no longer embedded into the software. This is for both simplicity and enables scaling possibilities in the future.

Large code refactors have been done, basic pinning support has been added, and many account, db, and TUS related bugs have been fixed. Additionally, a proof API endpoint has been added for trustless download verification.

Browser

I ran into a fair number of issues due to technical debt on Skynet v1, so I decided to not waste time on getting it to work and instead pivoted and focused on getting the browser code compatible with the new portal system/renterd. This actually turned out to go much faster than I thought as the largest change was just the uploads, downloads, CID’s and verification of data.

Initial libraries libportal, libweb, and libkernel have been created for browser/frontend development. libportal Has a golang-wasm based streaming verification for BAO based on @nemo blake3. This is not yet compat with the rust, and requires that be worked on upstream by nemo to make use of either a golang or rust client implementation.

libweb is equiv to the former libskynet, with no dedicated node.js version. I decided to make it isomorphic since most use cases will always be using bundlers which can just polyfill or exclude NPM code. Much of the old code has been ported into the new library as well.

libkernel is equiv to both the former libkernel and libkmodule and is isomorphic too. It is combined for simplicity.

Other things to note are that work has been done to get ETH support fixed, but upgrading to the latest hard fork is untested.

CI/Tooling

More time than I would have liked has been spent on further CI and tooling related development. Due to the fact Circle CI has frankly stupid limitations that require manually managing some secrets/passwords/keys per repo vs at an org level, I deemed it was going to become a liability and migrated back to Github Actions. This was a security risk & admin mess waiting to happen if any secrets were compromised and needing to manually update 20-50 repos with no API to automate.

Most repos have been setup to use both the NPM presetter tooling and semantic-release, but this migration is still ongoing. Many packages have been forked and customized for my needs to re-use across the project. This will ideally also form a future foundation for scaffolding new plugins/modules/integrations.

One notable tool I will mention is publish-kernel-module which is a very crude CLI tool but is fully working to upload modules to sia using an ed25519 private key to login/register.

Most packages are being auto-published now to https://npmjs.com under the @lumeweb namespace.

New Portal

A new testing portal has been deployed at alpha.web3portal.com This portal is on a small server compared to web3portal.com and is subject to being reset at any time right now. As the portal software currently has no UI, only way to use it is via API.

There are currently no anti-abuse systems in place outside the fact everything is account-only. Any abuse of this will just force me to divert time in a cat-mouse game to stop it, wasting time away from development. So please play nice :).

Design/Websites

lumeweb.com is roughly 95% done, and web3extension.io is also completed subject to further content review. I have had further labor delays/logistics issues and may have to find a new frontend developer again soon’ish.

The UX of the extension has been coded/ported from Figma and is ready to be integrated. A decent amount of work though will be needed to merge all of it together.

Next:

July will hopefully have the following:

  • lumeweb.com ready to launch.
  • web3extension.io ready to launch.
  • Browser extension ready to launch. Given the new pivots… this would be on-top of the new portal software and all major technical debt would be completely gone.

This concludes my report

July Progress Report

Repos worked on

(Given the number I am not making them links)

https://git.lumeweb.com/LumeWeb/extension
https://git.lumeweb.com/LumeWeb/hosted-kernel
https://git.lumeweb.com/LumeWeb/hyperswarm-web
https://git.lumeweb.com/LumeWeb/interface-relay
https://git.lumeweb.com/LumeWeb/kernel-discovery-irc
https://git.lumeweb.com/LumeWeb/kernel-dns-client
https://git.lumeweb.com/LumeWeb/kernel-eth
https://git.lumeweb.com/LumeWeb/kernel-handshake-client
https://git.lumeweb.com/LumeWeb/kernel-handshake-node
https://git.lumeweb.com/LumeWeb/kernel-ipfs
https://git.lumeweb.com/LumeWeb/kernel-network-registry
https://git.lumeweb.com/LumeWeb/kernel-network-registry-client
https://git.lumeweb.com/LumeWeb/kernel-peer-discovery
https://git.lumeweb.com/LumeWeb/kernel-peer-discovery-client
https://git.lumeweb.com/LumeWeb/kernel-protomux-client
https://git.lumeweb.com/LumeWeb/kernel-rpc-client
https://git.lumeweb.com/LumeWeb/kernel-sandbox
https://git.lumeweb.com/LumeWeb/kernel-swarm
https://git.lumeweb.com/LumeWeb/kernel-swarm-client
https://git.lumeweb.com/LumeWeb/libethsync
https://git.lumeweb.com/LumeWeb/libhyperproxy
https://git.lumeweb.com/LumeWeb/libkernel
https://git.lumeweb.com/LumeWeb/libportal
https://git.lumeweb.com/LumeWeb/libweb
https://git.lumeweb.com/LumeWeb/peer-discovery-irc
https://git.lumeweb.com/LumeWeb/presetter-kernel-module-preset
https://git.lumeweb.com/LumeWeb/presetter-preset-rollup
https://git.lumeweb.com/LumeWeb/presetter-relay-plugin-preset
https://git.lumeweb.com/LumeWeb/protomux-rpc-web
https://git.lumeweb.com/LumeWeb/relay
https://git.lumeweb.com/LumeWeb/relay-cfg
https://git.lumeweb.com/LumeWeb/resolver-module-cid
https://git.lumeweb.com/LumeWeb/resolver-module-eth
https://git.lumeweb.com/LumeWeb/resolver-module-handshake
https://git.lumeweb.com/LumeWeb/rpc
https://git.lumeweb.com/LumeWeb/rpc-client

Progress:

Core development

This month has been extension/browser, relay, and infrastructure stack development.

Extension

The UX has been mostly been integrated with the extension. There are still some issues to fix, and things are still buggy/quirky. The UX is currently coded in React to ensure development is fast due to the mature ecosystem, but could change in the future.

The extension also notably uses X25519 (ECDH) key exchange such that when you sign in/create an account it encrypts the key data over postMessage to the backend part of the extension where it is put in localStorage. This makes the exact ed25519 key used agnostic in the long term, since the backend does not compute the master key.

ETH

ETH has been fixed and is fully working again from upstream changes. This has been mostly a rewrite in the process and now uses the libethsync library.

HNS

HNS DNS has been rewritten such it take advantage of HSD’s internal DNS code and uses the libhyperproxy to pipe DNS (port 53) requests over the relay net, when no other request type (such as HIP5 or content) can be met.

CID Loading

A new simple resolver resolver-module-cid has been made which enables [CID].ipfs.lume and [CID].ipns.lume special subdomains. These require URL friendly CID’s such as base32. This will enable generic IPFS access without a domain, while staying trustless/p2p.

Dev Ops and Tooling

Further development has been made on developer experience (DX)/CI tooling by creating a presetter config for relay plugins and working on the kernel preset as well as other presets.

A new tool has been created as well kernel-sandbox which is a refactored version of a tool I have had for a while, and enables you to run kernel API/RPC commands in chrome to test and debug modules with a new pubkey + portal account.

To mach this hosted-kernel is also released that enables a hosted version of the kernel outside the extension, mostly for development for now.

Kernel

Development has been done on the kernel framework as well mostly to remove the need for using eval and ensuring libkernel supports the multiple environments it needs to be in. It has been extended as needed for the extension code.

Design/Website

No work has been done this month on the websites.

Next:

August will hopefully have the following:

  • lumeweb.com ready to launch.
  • web3extension.io ready to launch.
  • Browser extension ready to launch.

This concludes my report

Hello @pcfreak30,

Thank you for your July progress report! It looks great.

The Committee has voted to create a progress report template which should make it easier for both you, the Grantee, to provide monthly updates as well as to enable the Committee to quickly review progress without spending too much time on minute details.

For August’s progress report (which should be provided in September), please follow the template outlined in this post: About the Grants category - #8

Thank you for your help and cooperation.

Regards,
Kino on behalf of the Sia Foundation and Grants Committee

Progress Report: August

What progress was made on your grant this month?

Please summarize your progress in 3-5 sentences or bullet points:

  • Launched new project branding, and main website.
  • Launched new web3extension.com/.io
  • Launched extension tech demo.
  • Did bug hunting on portal.
  • Added PoC DNSLink support to portal.
  • Created publish-webapp developer tool.
  • Added PoC lavanet.xyz network integration.
  • Added basic S5 integration, including the protocol and registry, plus resolver link support ala Skynet. This was accomplished via porting core parts of S5 to @lumeweb/libs5 in TypeScript.

Links to repos worked on this month (access the develop branch on all repos):

What will you be working on this month?

Please summarize your development goals into a few sentences or bullet points:

  • Due to the fact the extension got very little interest, will be pivoting the rest of Q3 to focus on creating a web2 (ICANN) demo of Lumes technology. This will include a Login with Lume ability that will use the kernel in a hosted setup.
    • The focus will shift to getting developer adoption by making it easy to learn the tech in the current web system and stomp out bugs in the process.
    • There will be no relay software release or marketing this year, and it is likely the relay will get a major rewrite next year.
    • Work due to this will focus on the browser, relay, and portal components for this purpose.
  • The rest of the year (Q4), community-wise, will be focusing on building web3.news only, which will be a Sia-powered news and community hub (news and forums) and all education will be punted to next year. A community is needed for us to organize and create education.

I am having issues with the extension. Initially after installation the plugin would not login to the account, the login button seem broken. I created a new Firefox install and was finally able to login to the account but presented with a “loading” screen with no other information that took nearly 5 minutes to load a dashboard, this was a poor user experience. Once loaded it was not clear how to use the extension; I saw handshake and etherum were stuck syncing but IPFS sync was green so it seemed like IPFS was working.

Unsure how to access IPFS sites or any web3 sites, I consulted the discord server and noticed that http://bafybeiguremy5hkphmhzqibnj4ftbursom5lhc52fxn3qaycj3kecy4ifi.ipfs.lume was provided as an example of lume working, but the site was unable to load the IPFS content after waiting more than 5 minutes.

Ultimately the use-case of lumeweb was not obvious to me, nor did it seem functional. The above IPFS was easily accessed via a web2 proxy (ipfs.io). Finally, the extension loaded increased my RAM to 3GB and was consistently growing while taking 50% CPU.

I am sad to hear that the extension is being discontinued in favor of web3 news sites for the remainder of the grant. I had hopes that a working decentralized resolver would be the outcome of this grant with the possibility of other proposed deliverables;

Browser Extension - No documentation, non-functional, and now not actively being developed
Portal Optimization - Portal was discontinued
Education Sites - Postponed to next year
Web Browser Fork - Not being worked on?
Storage Drive & Filesystem - Not being worked on?

Here are some clarifications:

(Note: I did use AI to clean this up, given my personality).

  • Firefox Extension:

    • Only Firefox version being discontinued, unless there is demand to use it.
    • Pivoting efforts due to challenges with Firefox.
    • Development in Firefox is harder compared to Chrome.
    • Current version is an early, buggy prototype.
    • No one is really interested in Firefox
    • Plans next year to pivot to a Chrome extension and a desktop proxy/helper combo for DANE support.
  • Lume’s Core Technology:

    • Flexible and can be adapted into various forms.
    • Invented a way to browse IPFS in web2 P2P without extensions or downloads (will be in next report).
    • Will be focusing on web2 to get more adoption and awareness, and guide developers and end users to web3.
  • Feedback and Approach:

    • Recognized personal communication errors.
    • Pivoting based on feedback and lack of interest/testers.
    • Working on documentation and web2 UX for “login with lume”.
  • Community and Education:

    • Building community and education was always a foundational goal.
    • Necessary to organize and unite for goals like censorship resistance.
    • web3.news is apart of that and will benefit Sia as well.
    • Education Sites:
      • Postponed until an active and willing community is established. Could be next year, could be even later.
      • Goal is to achieve Lume brand awareness before initiating, otherwise theres going to be no one signing up to pitch in.
  • Portal:

    • Skynet has been fully ditched.
    • Already developed a new portal as a Minimum Viable Product (MVP), but has a long ways to go.
    • Will be refactoring it more to support S5 API’s and work with Vup.
  • Web Browser Fork:

    • Long-term project, years down the line.
    • Focusing on getting Lume mature before starting.
    • This is potentially a huge effort that would take half a year unless I see more complexity than exists.
  • Storage Drive & Filesystem:

    • VUP meets many requirements.
    • Landscape has changed significantly over the past year.
    • If it happens, will be in the far future
    • Filesystem support will be supported in browser likely before any other form.

Feel free to ask any questions. A lot has been learned this year so far and mistakes have been made, which are guiding the project in the direction needed to get adoption and meet its goals.

Also regarding IPFS, there are some broad issues with it and IPNS that appear to be out of my control on the new Helia client.

I have also talked with a fellow web3 project, eth.limo and they have said, in their opinion, that IPNS is close to needing a complete refactor, and I found a related GitHub issue on IPNS. So it is starting to feel IPFS/IPNS just has more issues itself since literally everything uses a web2 (centralized) CDN so its cached and never uses the network. With that, it might as well be on S3 and Cloudflare. Thats why its fast to 99% of users.

I will be keeping an eye on it and doing more testing if needed but it feels like something outside my control.

Progress Report: September

What progress was made on your grant this month?

  • Added support for the kernel to run modules on separate iframes, which gives them their own cpu thread, and removes any possible limitations of number of web workers in a single page. See LumeWeb/hosted-kernel-worker - hosted-kernel-worker - Lume Web Git Service.
  • Development work on libs5
  • Bug fixing on handshake
  • Added consensus caching on ETH
  • Misc library updates
  • Created a PoC webapp that allows browsing ETH and IPFS using a service worker approach, with no IPFS HTTP servers or hosting content involved. Effectively the start of a web3 browser/gateway inside web2. See LumeWeb/browser-webapp - browser-webapp - Lume Web Git Service.
  • Got initial Lume login and dashboard UX created for use in web2 apps.
  • Launched initial basic documentation of Lume, but removed all references of the Firefox extension from the main website given the new focus.
  • Started outreach for web3.news to find what founders want.

Links to repos worked on this month (access the develop branch on all repos):

What will you be working on this month?

  • Evolve web3 browser app into something more polished and host at web3browser.io as a demo.
  • Create a NFT Gallery demo to demonstrate Lumes technology. This will involve ETH/ENS, and IPFS.
  • Continue outreach to try and get more feedback.

Progress Report: October

What progress was made on your grant this month?

  • Bug fixes in kernel stack
  • Lavanet support needed an update and rewrite
  • Bug fixes with ETH support and ENS. Hopefully fixed an ETH relay plugin bug too.
  • IPFS updates/bug fixes and setup temporary Kubo node for IPNS.
  • Built NFT gallery demo
  • Built web browser app demo

Links to repos worked on this month (access the develop branch on all repos):

What will you be working on this month?

  • Bug fixing both NFT and web browser demos as needed and publish them for community testing
  • Building web3.news MVP

Progress Report: November

What progress was made on your grant this month?

  • Published and promoted web3browser.io demo
  • Published web3toybox.com demo
  • Various fixes with the demos based on feedback
  • Updated & restructured docs.lumeweb.com
  • Got web3.news design made
  • Frontend development of web3.news started
  • Backend development of web3.news started
  • Published all design & branding files except web3.news, which will be published next month

Links to repos worked on this month (access the develop branch on all repos):

What will you be working on this month?

  • Build and publish web3.news MVP

Progress Report: December

What progress was made on your grant this month?

  • Built and released MVP of web3.news.
  • Created first post on web3.news via S5, Web3.news Released | Lume Web News.
  • Created GitHub action for web3.news
  • Started development of S5 JS client (HTTP) library, based on the work of parajbs-dev · GitHub and the projects’ libs5
  • Published design file for web3.news

Links to repos worked on this month (access the develop branch on all repos):

What will you be working on this month?

  • N/A

Final Report

Infrastructure Deliverables

Relay

The relay is a Node.js P2P application that functions as a P2P node. It features a plugin system and some configuration management. The latest version is available at https://git.lumeweb.com/LumeWeb/relay/src/commit/e2a71f68517ed1efdbb48a4a9553fdc64ebdb06f. Marketing for the relay ceased due to a strategic pivot.

Plugin Name Description Link
ETH Provides consensus data to the ETH client https://git.lumeweb.com/LumeWeb/relay-plugin-eth/src/branch/develop
S5 Acts as a partial S5 node for registry services https://git.lumeweb.com/LumeWeb/relay-plugin-s5/src/branch/develop
Handshake Acts as a proxy for serving HNS peer connections https://git.lumeweb.com/LumeWeb/relay-plugin-handshake/src/branch/develop
IPFS Acts as a proxy for serving IPFS peer connections https://git.lumeweb.com/LumeWeb/relay-plugin-ipfs/src/branch/develop
IRC Discovery Acts as a means of allowing peers to discover the relay by pubkey https://git.lumeweb.com/LumeWeb/relay-plugin-discovery-irc/src/branch/develop
Lavanet Enables the relay to sponsor badge services, which are effectively a sub-billing account so the end user can query paid RPC while still being trustless https://git.lumeweb.com/LumeWeb/relay-plugin-lavanet/src/branch/develop

Every plugin has a matching client-side codebase.

Portal

https://git.lumeweb.com/LumeWeb/portal/src/commit/540457fb2fb66dc7a1fd527a1b11b5029dc5add8

The portal consists of a Golang daemon and API server. It features:

Feature Description
TUS Support We might have a broken feature, as we last tested it a while ago.
Basic File Uploading Support Primarily used for kernel module code.
Accounts with Email and Pubkey Login Allows users to log in using either their email address or public key.
Basic File Tracking Used for keeping track of files.

Kernel & Browser

The Kernel (libkernel and libmodule) was forked and combined into a single library. The following are the components:

Component Description Link
libkernel with libmodule This component represents the merging of libkernel and libmodule into a single library. Link
Kernel Refers to the core Kernel itself. Link
A re-implementation of skt.us This is a hosted part of the Kernel in web2, trading off trust for accessibility. Link
Hosted kernel worker Enables Kernel modules to run in their own hosted iframes, providing them with dedicated CPU threads and overcoming the original Skynet Kernel module limitations. Link

Community

This year’s primary focus was on web3.news. An MVP has been launched and is powered by S5, and the community will guide the direction in which web3.news takes off.

Source code: LumeWeb/web3.news - web3.news - Lume Web Git Service.

Design files

As this project is entirely free and open-source, all design files based on the community funding are available here: https://git.lumeweb.com/LumeWeb/design.git.

End User Deliverables

Demo Description Link(s) Video
Firefox Browser Extension An early prototype extension for Firefox. It was a successful Proof of Concept from a technical and R&D perspective but needed more adoption. The extension doesn’t include much of the R&D from this year, like the S5 registry. A video is available showcasing its experience. Git Repository Link
Web2 -> Web3 Browser App The first fully decentralized Web3 Browser/Gateway using service workers, similar to archive.org. It supports IPFS, Sia websites (via S5), and HNS and ENS domains. It uses the Lume Network, Portal, Kernel, and S5 network to load content trustlessly. PR release gained exposure. Web App, Git Repository Link
NFT Gallery Part of a series of toy demos. It uses ETH and IPFS to find ERC721 NFTs for a given ENS address. The demo represents an early stage that will evolve in the future. Toybox, Git Repository Link

Future

These demos will either be frozen or get minimal maintenance, depending on the demand of the wider community. It has been proven this year what is possible, so we will evolve & iterate on these legos in the future so that Lume Web can achieve its long-term mission.

Lume Web’s work will continue into 2024 via Standard Grant Proposal: Lume Web 2024 - #35 by pcfreak30