Skip to content

Commit 4a1cd2e

Browse files
committed
Add core MkDocs configuration files
1 parent 02ad461 commit 4a1cd2e

File tree

4 files changed

+192
-24
lines changed

4 files changed

+192
-24
lines changed

.gitignore

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
site/
2+
.venv/
3+
venv/
4+
__pycache__/
5+
.DS_Store
6+
.cache/
7+
.venv/

README.md

Lines changed: 92 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,104 @@
1-
# ⭐️ Welcome to Account Abstraction with ERC-4337
1+
# ERC-4337 Documentation
22

3-
## What is ERC-4337?
3+
This repository contains the official documentation for ERC-4337 (Account Abstraction).
44

5-
ERC-4337 enables **Account Abstraction (AA)** on Ethereum without requiring any changes to the protocol. Instead of modifying Ethereum's base protocol, it introduces a new flow using `UserOperation` objects, a decentralized **alt-mempool**, and an on-chain **EntryPoint** contract.
5+
## 🚀 Quick Start
66

7-
This architecture unlocks powerful wallet features like:
8-
- ✅ Custom signature schemes (e.g. passkeys, multisig)
9-
- ✅ Gasless transactions via **Paymasters**
10-
- ✅ One-click flows through batched calls
11-
- ✅ Modular smart accounts with upgradability and recovery
12-
- ✅ Wallet creation without EOAs or upfront ETH
7+
### Local Development
138

14-
Unlike centralized relayer-based solutions, ERC-4337 achieves these benefits while preserving decentralization through a **permissionless mempool** and **bundler** ecosystem.
9+
1. **Clone the repository:**
10+
```bash
11+
git clone https://github.com/eth-infinitism/aa-mkdocs.git
12+
cd aa-mkdocs
13+
```
1514

16-
## 🌐 Why This GitBook?
15+
2. **Set up Python virtual environment:**
16+
```bash
17+
python3 -m venv .venv
18+
source .venv/bin/activate # On Windows: .venv\Scripts\activate
19+
```
1720

18-
This GitBook serves as your technical companion to everything ERC-4337 and beyond. It consolidates specs, summaries, and best practices to help you:
19-
- Build or integrate **smart contract wallets**
20-
- Understand the **UserOperation lifecycle**
21-
- Leverage **Paymasters** for better onboarding
22-
- Explore modularity and emerging standards
23-
- Stay aligned with Ethereum’s decentralization ethos
21+
3. **Install dependencies:**
22+
```bash
23+
pip install -r requirements.txt
24+
```
2425

25-
Let’s build the future of wallets — programmable, recoverable, and user-friendly — without compromising Ethereum's core values.
26+
4. **Serve locally:**
27+
```bash
28+
mkdocs serve
29+
```
30+
31+
Open http://127.0.0.1:8000 in your browser.
2632

27-
> 📖 Start here: [Smart Accounts ➡](./smart-accounts/README.md)
33+
### Building
2834

29-
---
35+
To build the static site:
36+
37+
```bash
38+
mkdocs build
39+
```
40+
41+
The built site will be in the `site/` directory.
42+
43+
## 🏗️ Build & Deploy
44+
45+
This documentation is automatically built and deployed using:
46+
47+
- **Cloudflare Pages** for hosting
48+
- **GitHub Actions** for CI/CD
49+
- **MkDocs Material** for the documentation framework
50+
51+
### Cloudflare Pages Settings
52+
53+
- **Build command:** `pip install -r requirements.txt && mkdocs build`
54+
- **Output directory:** `site`
55+
- **Python version:** 3.11
56+
- **PR Previews:** Enabled (automatic preview deployments for pull requests)
57+
58+
### CI/CD
59+
60+
The repository includes GitHub Actions workflow (`.github/workflows/mkdocs-ci.yml`) that:
61+
- Runs on every pull request to `main`
62+
- Installs dependencies
63+
- Builds the documentation with strict mode
64+
- Blocks PRs if build fails
65+
66+
## 🤝 Contributing
3067

31-
## 🔗 Resources
68+
### Development Workflow
69+
70+
1. **Fork the repository** and create a feature branch
71+
2. **Make your changes** to the documentation
72+
3. **Test locally** with `mkdocs serve`
73+
4. **Create a pull request** - this will trigger:
74+
- CI build validation
75+
- Cloudflare Pages preview deployment
76+
5. **Review and merge** - changes will be automatically deployed to production
77+
78+
### Guidelines
79+
80+
- **No web editor** - all changes must be made via pull requests
81+
- **Test locally** before submitting PRs
82+
- **Follow Markdown best practices**
83+
- **Update navigation** in `mkdocs.yml` if adding new sections
84+
- **Use descriptive commit messages**
85+
86+
## 🔗 Links
87+
88+
- **Production site:** https://docs.erc4337.io
89+
- **Repository:** https://github.com/eth-infinitism/aa-mkdocs
90+
- **Issues:** https://github.com/eth-infinitism/aa-mkdocs/issues
91+
92+
93+
## 🛠️ Technology Stack
94+
95+
- **MkDocs** - Static site generator
96+
- **Material for MkDocs** - Theme and features
97+
- **Python 3.11** - Runtime environment
98+
- **Cloudflare Pages** - Hosting and CDN
99+
- **GitHub Actions** - CI/CD pipeline
100+
101+
---
32102

33-
- 🤖 Powered by [ChAAtGPT](https://chatgpt.com/g/g-6817474bd880819192d1bbda07958d09-chaatgpt) — a custom GPT focused on Account Abstraction
34-
- 🛠️ This GitBook on GitHub: [github.com/eth-infinitism/gitbook](https://github.com/eth-infinitism/gitbook)
35-
- 📄 License: [MIT](./LICENSE)
103+
[![Build Status](https://github.com/eth-infinitism/aa-mkdocs/workflows/Build%20Docs/badge.svg)](https://github.com/eth-infinitism/aa-mkdocs/actions)
36104

mkdocs.yml

Lines changed: 89 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,89 @@
1+
site_name: ERC-4337 Documentation
2+
site_description: "Complete guide to ERC-4337 Account Abstraction - smart accounts, bundlers, paymasters, and more"
3+
site_url: https://docs.erc4337.io
4+
5+
use_directory_urls: false
6+
7+
nav:
8+
- "⭐️ Introduction": index.md
9+
- "🧠 Smart Accounts":
10+
- smart-accounts/README.md
11+
- smart-accounts/entrypoint-explainer.md
12+
- smart-accounts/session-keys-and-delegation.md
13+
- smart-accounts/the-application-layer-wallets-and-sdks.md
14+
- smart-accounts/modular-accounts.md
15+
- "📦 Bundlers":
16+
- bundlers/README.md
17+
- bundlers/compatibility-test-suite.md
18+
- bundlers/userop-mempool-overview.md
19+
- bundlers/censorship-resistance.md
20+
- bundlers/simulation-requirements.md
21+
- bundlers/monitoring-and-metrics.md
22+
- "💰 Paymasters":
23+
- paymasters/README.md
24+
- paymasters/types.md
25+
- paymasters/security-and-griefing.md
26+
- paymasters/design-patterns.md
27+
- paymasters/examples-and-sdks.md
28+
- "⛓️ L2s":
29+
- l2s/README.md
30+
- l2s/rip-7560.md
31+
- l2s/superchain-4337-dataset-explained.md
32+
- l2s/how-to-create-your-own-4337-metrics.md
33+
- "🌿 Core Standards":
34+
- core-standards/README.md
35+
- core-standards/erc-4337.md
36+
- core-standards/erc-7562.md
37+
- core-standards/eip-7701.md
38+
- core-standards/rip-7560.md
39+
- core-standards/rip-7711.md
40+
- core-standards/rip-7712.md
41+
- "🤝 Community":
42+
- community/README.md
43+
- community/ef-grants.md
44+
- community/aa-hub-devcon7.md
45+
- community/bug-bounty.md
46+
- "📚 Resources":
47+
- resources/README.md
48+
- resources/reading-material.md
49+
- resources/videos.md
50+
- resources/faqs.md
51+
52+
theme:
53+
name: material
54+
features:
55+
- navigation.instant
56+
- navigation.top
57+
- search.suggest
58+
- content.code.copy
59+
- content.action.edit
60+
61+
extra_css:
62+
- stylesheets/extra.css
63+
64+
plugins:
65+
- search
66+
- social:
67+
cards_layout_options:
68+
background_color: "#1e1e1e"
69+
background_image: assets/images/social-background.jpeg
70+
logo: assets/images/ERC-4337-team-logo-color.png
71+
title_color: "#ffffff"
72+
text_color: "#e0e0e0"
73+
- section-index
74+
75+
markdown_extensions:
76+
- admonition
77+
- toc:
78+
permalink: true
79+
- codehilite
80+
- tables
81+
- footnotes
82+
- pymdownx.superfences
83+
- pymdownx.tabbed
84+
- pymdownx.emoji
85+
86+
extra:
87+
social:
88+
- icon: fontawesome/brands/github
89+
link: https://github.com/eth-infinitism/aa-mkdocs

requirements.txt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
mkdocs==1.6.1
2+
mkdocs-material[imaging]==9.5.26
3+
mkdocs-literate-nav==0.6.1
4+
mkdocs-section-index==0.3.10

0 commit comments

Comments
 (0)