Skip to content

Commit

Permalink
Setup documentation structure
Browse files Browse the repository at this point in the history
  • Loading branch information
ThatAlexPalmer committed Jan 10, 2024
1 parent c0e704a commit 2636df5
Show file tree
Hide file tree
Showing 9 changed files with 81 additions and 0 deletions.
3 changes: 3 additions & 0 deletions src/_app.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
export default function App({ Component, pageProps }) {
return <Component {...pageProps} />
}
12 changes: 12 additions & 0 deletions src/pages/_meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
{
"index": "Introduction",
"development": "Development",
"protocol": "Protocol Specification",
"features": "Features",
"deployment": "Deployment",
"website": {
"title": "Website ↗",
"href": "https://transferagentprotocol.xyz",
"newWindow": true
}
}
1 change: 1 addition & 0 deletions src/pages/deployment.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Deploying this protocol to your chain
7 changes: 7 additions & 0 deletions src/pages/development.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
# Start Building

After you have all dependencies, clone the repository with [OCF](/protocol/tap-ocf) and Forge included as submodules:

```sh
git clone --recurse-submodules https://github.com/transfer-agent-protocol/tap-cap-table.git
```
1 change: 1 addition & 0 deletions src/pages/features.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Protocol Features
43 changes: 43 additions & 0 deletions src/pages/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
import { Cards, Card, Callout } from 'nextra/components';

# Transfer Agent Protocol

Transfer Agent Protocol is based on the [Open Cap Table Format](/protocol/ocf) and extends it with smart contracts to enable onchain cap table management.

<Callout emoji="">This documentation is currently in public preview</Callout>

## Protocol Specification

The protocol has three major components.

- [Smart contracts](/protocol/tap-cap-table) that enable onchain cap table management. These create transactions onchain, creating a system that allows for primary ownership records to be stored onchain first, then synced to an offchain database.

- [Offchain database](/protocol/tap-ocf) that stores the cap table data. We're currently using a MongoDB that stores cap table data in the [Open Cap Table Format](/protocol/tap-ocf).

- [Server](https://github.com/transfer-agent-protocol/tap-cap-table/tree/main/src/routes) that interacts with both the smart contracts and the offchain database. This server is responsible for syncing the data between the two.

<Cards>
<Card title="Open Cap Table Format" href="/protocol/tap-ocf"/>
<Card title="Onchain Cap Table" href="/protocol/tap-cap-table" />
</Cards>


## Dependencies

To start developing on the Transfer Agent Protocol, you'll need the following dependencies installed on your machine:

- [Docker](https://docs.docker.com/get-docker/)

- [Foundry](https://getfoundry.sh/)

```sh
curl -L https://foundry.paradigm.xyz | bash
```

- [Mongo Compass](https://www.mongodb.com/try/download/compass)

- [Node.js v18.16.0](https://nodejs.org/en/download/)

- [Postman App](https://www.postman.com/downloads/)

- [Yarn v1.22.19](https://classic.yarnpkg.com/en/docs/install/#mac-stable)
4 changes: 4 additions & 0 deletions src/pages/protocol/_meta.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"tap-ocf": "Open Cap Table Format",
"tap-cap-table": "Onchain Cap Table"
}
1 change: 1 addition & 0 deletions src/pages/protocol/tap-cap-table.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# Onchain Cap Table
9 changes: 9 additions & 0 deletions src/pages/protocol/tap-ocf.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Open Cap Table Format

The Open Cap Table Format ([OCF](https://github.com/transfer-agent-protocol/tap-ocf)) is a standard for storing and sharing cap table data. It is a JSON-based format that is easy to read and write, and is designed to be easily extensible. The OCF is used by the Transfer Agent Protocol to store and share cap table data off chain.

The format was created by the Long Term Stock Exchange ([LTSE](https://ltse.com/)) and is maintained by the [Open Cap Table Coalition](https://www.opencaptablecoalition.com/).

## Our Database

Using the OCF, we've created a [database](https://github.com/transfer-agent-protocol/tap-cap-table/tree/main/src/db) schema with a Mongo implementation. This schema is used by the Transfer Agent Protocol to store and share cap table data off chain.

0 comments on commit 2636df5

Please sign in to comment.