diff --git a/docs/src/.vuepress/theme/configs/default_sidebar_config.js b/docs/src/.vuepress/theme/configs/default_sidebar_config.js index 33ae8026..075f5bd4 100644 --- a/docs/src/.vuepress/theme/configs/default_sidebar_config.js +++ b/docs/src/.vuepress/theme/configs/default_sidebar_config.js @@ -74,7 +74,7 @@ module.exports = [ }, { title: "Delegated Staking", - path: "/gateways/ar-io-node/delegated-staking" + path: "/gateways/ar-io-node/delegated-staking", }, { title: "Environmental Variables", @@ -104,6 +104,15 @@ module.exports = [ title: "Release Notes", path: "/gateways/ar-io-node/release-notes", }, + { + title: "Experimental", + children: [ + { + title: "Farcaster Frames", + path: "/gateways/ar-io-node/experimental/frames", + }, + ], + }, ], }, // { @@ -171,20 +180,20 @@ module.exports = [ }, { title: "Delegated Staking", - path: "/guides/delegated-staking" + path: "/guides/delegated-staking", }, { title: "Experimental", children: [ { title: "AO ArNS Resolver", - path: "/experimental/ao-resolver" + path: "/experimental/ao-resolver", }, { title: "AO ANT", - path: "/experimental/ao-ant" + path: "/experimental/ao-ant", }, - ] + ], }, // { // title: "Contribute to Docs", diff --git a/docs/src/gateways/ar-io-node/experimental/frames.md b/docs/src/gateways/ar-io-node/experimental/frames.md new file mode 100644 index 00000000..c3914760 --- /dev/null +++ b/docs/src/gateways/ar-io-node/experimental/frames.md @@ -0,0 +1,17 @@ +--- +permalink: '/experimental/frames' +--- + +# Farcaster Frames + +## Overview + +[Frames by Farcaster](https://docs.farcaster.xyz/learn/what-is-farcaster/frames) is a standard for apps built with [OpenGraph](https://ogp.me/) that allows them to be interactive and easily authenticated. Because the standard relies on HTML Meta tags, they can easily be integrated into dApps hosted permanently on Arweave. Until recently, the full capabilities of Frames hosted on Arweave were not accessible through ar.io gateways. This is because a specific type of interaction between the frame and the hosting server, a `POST`, is needed to facilitate interactivity, and ar.io gateways did not support this interaction type. + +## Experimental Gateway Support + +With [Release 9](../release-notes.md#release-9---2024-04-10) of the ar.io gateways, a new experimental endpoint was added that supports the `POST` requests needed by frames. The `/local` endpoint on a gateway is used to facilitate experimental new features, as well as features which may be specific to an individual gateway. Operators and users should be fully aware that all endpoints stemming from `/local` are experimental, and may not always perform exactly as expected. + +### Frames + +The full path for accessing a frame hosted on Arweave is `/local/farcaster/frame/` where `` represents any ar.io gateway using release 9 or higher, and `` represents the txId of the frame on Arweave. \ No newline at end of file diff --git a/docs/src/gateways/ar-io-node/release-notes.md b/docs/src/gateways/ar-io-node/release-notes.md index fd5fde40..bc9f7b81 100644 --- a/docs/src/gateways/ar-io-node/release-notes.md +++ b/docs/src/gateways/ar-io-node/release-notes.md @@ -8,6 +8,14 @@ next: false Welcome to the documentation page for the ar.io gateway release notes. Here, you will find detailed information about each version of the ar.io gateway, including the enhancements, bug fixes, and any other changes introduced in every release. This page serves as a comprehensive resource to keep you informed about the latest developments and updates in the ar.io gateway. For those interested in exploring the source code, each release's code is readily accessible at our GitHub repository: ar.io gateway [change logs](https://github.com/ar-io/ar-io-node/blob/main/CHANGELOG.md). Stay updated with the continuous improvements and advancements in the ar.io gateway by referring to this page for all release-related information. +## [Release 9] - 2024-04-10 + +- **Added** + - Added experimental Farcaster Frames support, enabling simple Arweave based Frames with button navigation. Transaction and data item data is now served under `/local/farcaster/frame/`. `/local` is used as a prefix to indicate this functionality is both experimental and local to a particular gateway rather than part of the global gateway API. Both GET and POST requests are supported. + - Added an experimental local ArNS resolver. When enabled it removes dependence on arweave.net for ArNS resolution! Enable it by setting `RUN_RESOLVER=TRUE`, `TRUSTED_ARNS_RESOLVER_TYPE=resolver`, and `TRUSTED_ARNS_RESOLVER_URL=http://resolver:6000` in your `.env` file. + - Added an `X-Cached` header to data responses to indicate when data is served from the local cache rather than being retrieved from an external source. This is helpful for interfacing with external systems, debugging, and end-to-end testing. + - Save hashes for unbundled data items during indexing. This enables reduction in data storage via hash based deduplication as well as more efficient peer-to-peer data retrieval in the future. + ## [Release 8] - 2024-03-14 - **Added**