Skip to content

Commit

Permalink
Add basic documentation website for Frontier (#231)
Browse files Browse the repository at this point in the history
* Add basic docs

* Add docs CI build
  • Loading branch information
sorpaas authored Dec 3, 2020
1 parent b24cfa4 commit 64b22c2
Show file tree
Hide file tree
Showing 8 changed files with 8,023 additions and 1 deletion.
12 changes: 11 additions & 1 deletion .github/workflows/rustdoc.yml → .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,16 +23,26 @@ jobs:
env:
WASM_BUILD_TOOLCHAIN: nightly-2020-08-29

- name: Build Website
run: |
cd docs
yarn install
yarn run build
- name: Build Documentation
uses: actions-rs/cargo@v1
with:
command: doc
args: --all --no-deps

- name: Copy Documentation
run: |
cp -r ./target/doc docs/.vuepress/dist/rustdocs
- name: Deploy Documentation
uses: peaceiris/actions-gh-pages@v3
with:
deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }}
publish_branch: gh-pages
publish_dir: ./target/doc
publish_dir: ./docs/.vuepress/dist
keep_files: true
12 changes: 12 additions & 0 deletions docs/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
pids
logs
node_modules
npm-debug.log
coverage/
run
dist
.DS_Store
.nyc_output
.basement
config.local.js
basement_dist
25 changes: 25 additions & 0 deletions docs/.vuepress/config.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
module.exports = {
title: 'Frontier',
description: 'Ethereum compatibility layer for Substrate',

head: [
['meta', { name: 'theme-color', content: '#3eaf7c' }],
['meta', { name: 'apple-mobile-web-app-capable', content: 'yes' }],
['meta', { name: 'apple-mobile-web-app-status-bar-style', content: 'black' }]
],

themeConfig: {
repo: 'https://github.com/paritytech/frontier',
editLinks: false,
docsDir: 'docs',
editLinkText: '',
lastUpdated: false,
nav: [],
sidebar: {}
},

plugins: [
'@vuepress/plugin-back-to-top',
'@vuepress/plugin-medium-zoom',
]
}
2 changes: 2 additions & 0 deletions docs/.vuepress/styles/index.styl
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
.home .hero img
max-width 450px!important
4 changes: 4 additions & 0 deletions docs/.vuepress/styles/palette.styl
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
$accentColor = #3eaf7c
$textColor = #2c3e50
$borderColor = #eaecef
$codeBgColor = #282c34
45 changes: 45 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
home: true
heroImage: https://v1.vuepress.vuejs.org/hero.png
tagline: Ethereum compatibility layer for Substrate.
actionText: Code →
actionLink: https://github.com/paritytech/frontier
features:
- title: EVM Contract
details: Frontier allows you to run EVM contracts natively in Substrate, tightly integrated with the rest of the Substrate ecosystem.
- title: RPC Compatibility
details: All existing Ethereum RPC methods work, so none of your dapps will break.
- title: Substrate Module
details: Frontier can be easily integrated in your existing Substrate application as a runtime module.
footer: Made by Parity & Wei & PureStake with ❤️
---

Frontier is the suite that provides an Ethereum compatibility layer
for Substrate. It has two components that can be activated separately:

* **Pallet EVM**: This is the pallet that enables functionality of
running EVM contracts. Existing EVM code can be used from there,
using addresses and values mapped directly to Substrate.
* **Pallet Ethereum** with **Ethereum compatible RPC methods**: The
pallet, combined with the RPC module, enables Ethereum block
emulation, validates Ethereum-encoded transactions, and allows
existing dapps to be deployed on a Substrate blockchain with minimal
modifications.

Frontier is not a bridge. Frontier enables you to run Ethereum dapps
natively on Substrate, but does not deal with the issues of
communicating with other Ethereum-based networks. If you want a
standalone blockchain, you are looking for Frontier. If you want to
create a parachain that has Ethereum functionality, you need to
combine Frontier with Cumulus. If you do not want EVM functionality
natively but want to communicate with other networks, you need the
Parity Bridge project.

Frontier is still under heavy development. We consider Pallet EVM to
be relatively stable, while some parts of Pallet Ethereum's design
might still be changed. In the future, using the [wrapper
block](https://corepaper.org/substrate/wrapper/) strategy, Frontier
can also eventually function as an Ethereum client, allowing you to
migrate any eth1.x-based blockchains seamlessly over to Substrate,
allowing you to add Substrate-specific features like on-chain
governance and forkless upgrades!
18 changes: 18 additions & 0 deletions docs/package.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"name": "frontier-docs",
"version": "0.0.1",
"description": "Frontier documentation.",
"authors": {
"name": "admin@parity.io",
"email": "Parity Technologies"
},
"repository": "https://github.com/paritytech/frontier",
"scripts": {
"dev": "vuepress dev .",
"build": "vuepress build ."
},
"license": "Apache-2.0",
"dependencies": {
"vuepress": "^1.7.1"
}
}
Loading

0 comments on commit 64b22c2

Please sign in to comment.