New AntTP v0.18.1 released with some nice new features.
Here is the change log:
- Adds access list support to configure allow/deny lists. An address (immutable or pointer/register to immutable) can be provided via the CLI, which is then retrieved from the network. See access_list.json for an example. When a denied bookmark/mutable/immutable is requested, a 403 FORBIDDEN response is returned.
- Access list support has been added to addresses provided via URLs (REST API does not yet block though).
- Adds resolving a directory address to index.html if it is present. This is the same behaviour as setting an app-conf route from “” to index.html, but requires no configuration.
- Adds support for wildcard domains with address prefixes, so http://.somedomain.com/filename.jpg will resolve the address in the same way as http://somedomain.com//filename.jpg. This allows standardisation of URL formats using gateways or proxies, opening the way to easy linking of apps/pages.
- Adds HTTPS support with a self-signed, wildcard, certificate.
- Adds HTTPS proxy support, allowing any HTTPS URL on the WWW to be parsed and served with the local instance. This is implemented by handling CONNECT requests over HTTP, then routing them via a TCP connection to the HTTPS port.
The new allow/deny lists allow an address of an access list JSON file to be specified. I’ll update the README.md soon, but here is an example ( or “all” are valid): AntTP/access_list.json at master · traktion/AntTP · GitHub
For the auto index.html loading, this is something I thought could just be in the app-conf.json file, but the convention just makes life easier. Ofc, if the index.html exists, you won’t see a directory listing (for the associated archive directory). To use, just browse to the directory and the index.html will load automatically.
Finally, a big change to allow HTTPS and HTTPS proxy support. It is initially with self-signed certs only, so your browser will warn you, but it’s fine/safe to use. The HTTPS port defaults to 18889, but it can be changed.
When you setup your browser as a proxy (instructions), the benefit becomes clear - you can use the same URLs as any AntTP instance on the clear net!
How does this magic work? Well, as all AntTP instances don’t retain any local state (beyond caching/config), the hostname port of the URL is interchangeable. Using AntTP as a proxy allows the hostname to be parsed/discarded and then routed to the local instance.
Why is this important? It means that defining or sharing links gets much easier. We don’t need a localhost:18888 or a different path. If you like using I am IMMUTABLE in your regular browser, you can use the same in your AntTP browser!
This also works with subdomain routing, if the DNS hosts support it (I don’t think antsnest does yet). However, DNS only likes 63 chars for subdomains and immutable addresses are 64 chars… so it would only work with shorter (what4names?) names. Watch this space… ![]()
So, we can now safely link to other AntTP addresses, knowing that it will always be accessible via a local AntTP instance as a proxy. We can also share the URLs online and use the gateways too!
Github: Release v0.18.1 · traktion/AntTP · GitHub
Dockerhub: https://hub.docker.com/r/traktion/anttp
Cargo: cargo install anttp
Edit: You may still need to cargo install anttp --locked if it fails to build.

