diff --git a/docs/building-on-etherlink/endpoint-support.md b/docs/building-on-etherlink/endpoint-support.md
index adb94451..c5dbfe6f 100644
--- a/docs/building-on-etherlink/endpoint-support.md
+++ b/docs/building-on-etherlink/endpoint-support.md
@@ -3,6 +3,8 @@ title: Ethereum endpoint support
hide_table_of_contents: true
---
+import CollapsibleSection from '@site/src/components/CollapsibleSection';
+
Etherlink nodes use [Geth](https://geth.ethereum.org/) to provide access to both standard Ethereum RPC endpoints and Geth-specific RPC endpoints.
These tables list these endpoints and whether Etherlink supports them:
@@ -10,6 +12,8 @@ These tables list these endpoints and whether Etherlink supports them:
For information about these endpoints, see [JSON-RPC API](https://ethereum.org/en/developers/docs/apis/json-rpc) and the [Ethereum JSON-RPC Specification](https://ethereum.github.io/execution-apis/api-documentation/) in the Ethereum documentation.
+
+
@@ -382,12 +386,16 @@ For information about these endpoints, see [JSON-RPC API](https://ethereum.org/e
+
+
## Geth-specific endpoints
This table shows the Geth endpoints that Etherlink nodes support.
All other Geth endpoints are not supported.
For information about these endpoints, see the Geth documentation at https://geth.ethereum.org/docs.
+
+
@@ -456,8 +464,12 @@ The Etherlink EVM node supports these [ethers.js](https://docs.ethers.org/v6/) m
+
+
## Additional information
+
+
@@ -483,4 +495,6 @@ The Etherlink EVM node supports these [ethers.js](https://docs.ethers.org/v6/) m
| **Post London** (Fee market is not implemented yet, but the rollup supports EIP-1559 transaction types) |
-
\ No newline at end of file
+
+
+
diff --git a/src/components/CollapsibleSection/index.jsx b/src/components/CollapsibleSection/index.jsx
new file mode 100644
index 00000000..daccace7
--- /dev/null
+++ b/src/components/CollapsibleSection/index.jsx
@@ -0,0 +1,23 @@
+import React, { useState } from 'react';
+import clsx from 'clsx';
+
+import styles from './styles.module.css';
+
+export default function CollapsibleSection({ children, title }) {
+ const [isOpen, setIsOpen] = useState(false);
+
+ const toggleSection = () => {
+ setIsOpen((prev) => !prev);
+ };
+
+ const currentTitleStyles = clsx(styles.title) + " " + (isOpen ? clsx(styles.titleOpen) : "");
+
+ return (
+ <>
+
{title}
+ {isOpen &&
+ {children}
+ }
+ >
+ )
+}
\ No newline at end of file
diff --git a/src/components/CollapsibleSection/styles.module.css b/src/components/CollapsibleSection/styles.module.css
new file mode 100644
index 00000000..6b29b842
--- /dev/null
+++ b/src/components/CollapsibleSection/styles.module.css
@@ -0,0 +1,39 @@
+.title {
+ color: #28B56F;
+}
+
+.title::before {
+ background-image: url("/img/GreenFiChevronUp.svg");
+ background-repeat: no-repeat;
+ background-position-x: 5px;
+ background-position-y: -2px;
+ filter: none;
+ content: "";
+ display: inline-block;
+ transform: rotate(90deg);
+ width: 1.25rem;
+ height: 1.25rem;
+ transition: transform var(--ifm-transition-fast) linear;
+ margin-right: 5px;
+ margin-left: -25px;
+}
+
+.title.titleOpen::before {
+ background-image: url("/img/GreenFiChevronUp.svg");
+ background-repeat: no-repeat;
+ background-position-x: 6px;
+ background-position-y: -2px;
+ filter: none;
+ content: "";
+ display: inline-block;
+ transform: rotate(180deg);
+ width: 1.25rem;
+ height: 1.25rem;
+ transition: transform var(--ifm-transition-fast) linear;
+ margin-right: 5px;
+ margin-left: -25px;
+}
+
+.content {
+ transition: transform var(--ifm-transition-fast) ease;
+}