Skip to content

Commit

Permalink
Merge branch 'staging' into feat/add-PSP-docs
Browse files Browse the repository at this point in the history
  • Loading branch information
clauBv23 committed Jun 6, 2024
2 parents 01d1124 + 20dfc62 commit 46a0c3b
Show file tree
Hide file tree
Showing 31 changed files with 265 additions and 806 deletions.
2 changes: 0 additions & 2 deletions docs/advanced/technical-reference/_category_.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,3 @@
collapsible: true
collapsed: true
label: Technical Reference
link: null
position: 6
4 changes: 2 additions & 2 deletions docs/advanced/technical-reference/index.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: Technical - Reference
sidebar_label: Technical - Reference
title: Technical Reference
sidebar_label: Technical Reference
---

## Reference Guide
Expand Down
1 change: 1 addition & 0 deletions docs/overview/overview/index.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
---
slug: /
title: What is Aragon OSx?
sidebar_label: Introduction
sidebar_position: 0
Expand Down
21 changes: 21 additions & 0 deletions docs/support/FAQ.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
title: FAQ
sidebar_label: FAQ
sidebar_position: 3
---

##

Aragon FAQ

### DAO ???

This section will contain docs.

### Plugin ???

This section will contain docs.

### Proposal ???

This section will contain docs.
4 changes: 0 additions & 4 deletions docs/support/_category_.yml

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
collapsible: false
collapsed: false
label: DO's vs DONT'S
label: Best Practices
position: 1
32 changes: 32 additions & 0 deletions docs/support/best-practices/developing-plugin.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
title: Developing a Plugin
sidebar_label: Developing a Plugin
sidebar_position: 0
---

## Advice for Developing a Plugin

### DOs 👌

- Document your contracts using [NatSpec](https://docs.soliditylang.org/en/v0.8.17/natspec-format.html).
- Test your contracts, e.g., using toolkits such as [hardhat (JS)](https://hardhat.org/hardhat-runner/docs/guides/test-contracts) or [Foundry (Rust)](https://book.getfoundry.sh/forge/tests).
- Use the `auth` modifier to control the access to functions in your plugin instead of `onlyOwner` or similar.
- Write plugins implementations that need minimal permissions on the DAO.
- Write `PluginSetup` contracts that remove all permissions on uninstallation that they requested during installation or updates.
- Plan the lifecycle of your plugin (need for upgrades).
- Follow our [versioning guidelines](../02-plugin-development/07-publication/01-versioning.md).

### DON'Ts ✋

- Leave any contract uninitialized.
- Grant the `ROOT_PERMISSION_ID` permission to anything or anyone.
- Grant with `who: ANY_ADDR` unless you know what you are doing.
- Expect people to grant or revoke any permissions manually during the lifecycle of a plugin. The `PluginSetup` should take this complexity away from the user and after uninstallation, all permissions should be removed.
- Write upgradeable contracts that:
- Repurpose existing storage (in upgradeable plugins).
- Inherit from previous versions as this can mess up the inheritance chain. Instead, write self-contained contracts.

<!-- - A plugin requesting the exact same permission to another one + uninstalling it -->
<!-- - Publishing plugin versions that provide no guarantees (setup contracts upgradeable behind the scenes by the dev)-->

In the following sections, you will learn about the details about plugin development.
24 changes: 24 additions & 0 deletions docs/support/best-practices/operating-dao.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
---
title: Operating a DAO
sidebar_label: Operating a DAO
sidebar_position: 0
---

## Some Advice When Operating your DAO

### DOs 👌

- Make sure that at least one address (typically a governance plugin) has `EXECUTE_PERMISSION_ID` permission so that something can be executed on behalf of the DAO.
- Check every proposal asking to install, update, or uninstall a plugin with utmost care and review. Installation means granting an external contract permissions to do things on behalf of your DAO, so you want to be extra careful about:
- the implementation contract
- the setup contract
- the helper contracts
- the permissions being granted/revoked

### DON'Ts ✋

- Incapacitate your DAO by revoking all `EXECUTE_PERMISSION`. This means your DAO will be blocked and any assets you hold may be locked in forever. This can happen through:
- uninstalling your last governance plugin.
- applying an update to your last governance plugin.
- Don't give permissions to directly call functions from the DAO. Better and safer to use a plugin instead.
- If you're using the Token Voting plugin in your DAO, make sure you don't mint additional tokens without careful consideration. If you mint too many at once, this may lock your DAO, since you will not be able to reach the minimum participation threshold. This happens if there are not enough tokens already on the market to meet the minimum participation percentage and the DAO owns most of the governance tokens.
8 changes: 0 additions & 8 deletions docs/support/dos-donts/index.md

This file was deleted.

4 changes: 0 additions & 4 deletions docs/support/faq/_category_.yml

This file was deleted.

8 changes: 0 additions & 8 deletions docs/support/faq/index.md

This file was deleted.

21 changes: 21 additions & 0 deletions docs/support/glossary.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
title: Glossary
sidebar_label: Glossary
sidebar_position: 2
---

##

Aragon Glossary

### DAO

This section will contain docs.

### Plugin

This section will contain docs.

### Proposal

This section will contain docs.
5 changes: 0 additions & 5 deletions docs/support/glossary/_category_.yml

This file was deleted.

9 changes: 0 additions & 9 deletions docs/support/glossary/dao.md

This file was deleted.

9 changes: 0 additions & 9 deletions docs/support/glossary/plugin.md

This file was deleted.

2 changes: 1 addition & 1 deletion docs/support/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,6 @@ sidebar_label: Support
sidebar_position: 0
---

## Support
## Overview

This section will contain docs.
10 changes: 5 additions & 5 deletions docusaurus.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,10 +13,9 @@ const config = {
tagline: "Let's build amazing things together",
url: 'https://devs.aragon.org',
baseUrl: '/',

onBrokenLinks: 'throw',
onBrokenMarkdownLinks: 'throw',
onBrokenAnchors: 'throw',
onBrokenLinks: 'warn',
onBrokenMarkdownLinks: 'warn',
onBrokenAnchors: 'warn',

favicon: 'img/Aragon-logo-circle.png',

Expand All @@ -25,6 +24,7 @@ const config = {
'@docusaurus/preset-classic',
{
docs: {
routeBasePath: '/',
sidebarPath: require.resolve('./sidebars.js'),
remarkPlugins: [math],
rehypePlugins: [katex],
Expand Down Expand Up @@ -194,7 +194,7 @@ const config = {
rootPath: './versioned_docs/version-1.3.0',
baseURL: 'osx/subgraph/reference-guide',
homepage: './static/subgraph/index.md',
linkRoot: '/docs/1.3.0',
linkRoot: '/1.3.0',
loaders: {
JsonFileLoader: {
module: '@graphql-tools/json-file-loader',
Expand Down
97 changes: 0 additions & 97 deletions src/components/ComponentCard/index.tsx

This file was deleted.

1 change: 0 additions & 1 deletion src/components/index.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
export * from './ComponentCard';
export * from './Footer';
export * from './HeroHeader';
export * from './WelcomeCard';
Expand Down
23 changes: 0 additions & 23 deletions src/data/ComponentCards.tsx

This file was deleted.

16 changes: 0 additions & 16 deletions src/data/WelcomeCards.tsx

This file was deleted.

Loading

0 comments on commit 46a0c3b

Please sign in to comment.