This is the key bit. It depends what sort of web app is being served.
If the application has multiple pages, each with their own code (javascript/typescript etc), then it is simpler to serve them. However, an SPA fully manages the application at the client/browser side, maintaining state and handling routing.
I went full SPA with IMIM, as I wanted to see how far I could push AntTP, to allow support for the most complex web apps. This opens the door to folks writing other complex SPAs in angular, react, etc, which can deliver desktop like app experiences.
Ofc, you don’t have to do SPAs with AntTP. That is up to the app dev.
Thanks @Traktion, I am using the static adapter with ssr turned off as in the link you provided. I’m not sure if you are saying that won’t work in some situations, and if so what. I haven’t seen any caveats about this so I need to build more sites and see if I hit any limits.
Thanks @Traktion, I am using the static adapter with ssr turned off as in the link you provided. I’m not sure if you are saying that won’t work in some situations, and if so what. I haven’t seen any caveats about this so I need to build more sites and see if I hit any limits.
@safemedia I can see how for a plugin you probably can only fiddle with the page HTML and do all the fetching yourself but if you are going via dweb/AntTP for the data there’s not a lot to gain here is there? It seems to be Install this Plugin instead of opening the browser in a different way (either dweb open, or setting the proxy
Yeah so the benefit of the extension is to request files from autonomi via remote endpoint servers. This let’s end users on the internet to access files without installing anttp/dweb & setting up a proxy locally. They just have to install the extension.
Ideally they would eventually be fully on-boarded to the network whereby they might install a full autonomi browser (or install anttp/dweb and configure the proxy).
Even if I can’t get html browsing working before deadline, I can still get normal files working to enable webapps to stream videos, view images, play audio and view pdfs etc enabling a way for the clearnet to access autonomi content, all with just requiring a browser extension to be installed.
Setting up a proxy is something 99.9% of people just won’t do. Installing extensions is something that all the big browser companies have made consumers comfortable with. Even getting people to switch to browsers with clear benefits is a task companies with huge marketing budgets have issue with So onboarding people to the network will need to be incremental imo, basically show them the benefits via extension - and those curious will take the next step.
This is true to a degree, depending on how difficult the alternatives are, but for both dweb and AntTP there not much to do.
For dweb: get the app and run it.
For now dweb serve is separated out but it won’t always be. As described elsewhere it can create a streamlined onboarding process with funded wallet etc. Similar could be done with AntTP so I don’t see either as significantly more difficult for users.
Really I’m just trying to understand the differences. A browser plugin will have an appeal, so by all means do it and if I can help I’ll be happy to do so.
Browser address bar search: (Enter ‘ant’ hit tab, then paste the address you want)
Later this week I hope to start creating the UI wrapper for anttp so that users will have a nice UI for wallet management. All this is to ensure the local client is easy to install and easy to use.
After that I plan to do some work on getting caching working for the endpoint servers, so that already requested files are ready to go without the need to re-download from nodes.
The plans for site browsing are back on, so I plan to have a mini browser in the extension much like the video browser above that lets you browse sites if you are using the local client. Hopefully we can get it working for the remote endpoint server option too for users that don’t want to install a local client.
Today I’ve been catching up on some validation. Not very fun but has to be done!
Now if the address isn’t valid, or doesn’t exist it will show you this page and let you enter a good address to search, which will open up the browser for you assuming it’s valid.
Also if there are people out there that want to run an endpoint server on their VPS:
This will allow people with the extension to download autonomi content from you. (Let me know if you run one, as I need to update the extension code to re-allow support for endpoint servers!)
Does it work on windows, I don’t have a system with linux desktop running at the moment. if it only works on linux then I will try and look at it in the weekend.
So today was spent getting a loyal supporter up and running with an endpoint server.
Previously I had it running on a one-stop-deploy service online. This time we set it up on a barebone VPS with caddy to deal with domain certificates. Previously I used a Dockerfile, while this time we used docker-compose.yml to manage the multiple containers (one for the app and one for caddy).
Tomorrow I will be re-enabling endpoint servers on the extension so users can add their urls and get playing without the need for a local client.
Today has been spent getting the endpoint server support re-enabled on the extension. I’ve also removed most the localhost code that I put in as a placeholder while testing. Now even local uses websockets again so that data can flow from webpages → extension → local client and back, as well as endpoint servers.
The routing that can happen is:
`webpages ↔ extension ↔ local client
webpages ↔ extension ↔ endpoint server
extension ↔ local client
extension ↔ endpoint server`
I’ve also built a local web-socket wrapper for anttp much like the server version. More visual examples coming soon.
I’ve also compiled a macos version of the anttp binary
local client & endpoint servers seem to be working fine now for the extension.
So right now users can view images/videos/music/documents and more all via the browser extension either by using a local client, or by just entering a public url in the settings page
Feel free to try it out at:
You can run your own local client at:
If you don’t want to run a local client, and instead wish to provide a service to extension users:
You can run your own endpoint server!
(This is how you can set it up via docker on 1-stop-click services like railway, vercel etc)
(I will add instructions soon on how to deploy on a bare-bones vps like ubuntu with docker compose)
Next step is getting uploads enabled again for the local client. Then later to have it work for endpoint servers too (more complex).
Then I will put some more time into adding autonomi website browsing into the extension browser view.
After that I will be working on the npm package for devs that wish to include interacting with extension from webpages.
Any plans for a firefox version? Chromium browsers cant use ublock anymore (ggoogle killed it with manifest 3 extension) so I don’t (can’t) use those browsers.
Yes the plan is to make one for firefox once the chromium one is feature complete.
A large part of the development cycle is figuring out how to get the autonomi integration working, so creating the firefox version should be significantly faster.
I agree with you fully, but I had to target the bigger user-base first!
Some changes in preparation for file upload functionality - just confirming some things with framework devs. Directories within directories might be a little longer.
Tomorrow I will be starting initial work on creating a new tauri v2 local client. Currently I have a node.js local client, but to integrate dweb I will use a rust framework. I had planned this transition for a later stage, but no time like the present. I have a whole wallet UI built for tauri already, so when wallet functionality is enabled in anttp it should be an easy addition.
So yes, dweb web browsing from local client & server endpoints will be possible soon.
Today was spent getting the local client reconfigured to bring in dweb functionality.
Right now it can open the server & open dweb sites, but it’s not integrated into the web extension UI yet. Soon!
Also had another futures finalist reach out with some ideas on how we could collaborate. The idea of having a plugin system for the browser extension came up, so that has been added to the roadmap. This will allow for some cool middle-ware components to be possible.
I am having some trouble, there are some things that seems like they are missing in the install guide.
In win11 chatgpt said I should install nodejs to get npm, then when doing npm build I get no dist folder, chatgpt says the build script might be different depending on if using react or other.