Skip to content

Commit

Permalink
Fix broken links in docusaurus docs (IntersectMBO#6232)
Browse files Browse the repository at this point in the history
  • Loading branch information
zeme-wana authored and v0d1ch committed Dec 6, 2024
1 parent 8058b1a commit d46aaca
Show file tree
Hide file tree
Showing 6 changed files with 52 additions and 38 deletions.
8 changes: 4 additions & 4 deletions .github/workflows/docusaurus-site.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
# This workflow builds and publishes the Docusaurus site to:
# https://intersectmbo.github.io/plutus/docs

name: "🦕 Docusaurus Site"
name: "🦕 Deploy Docusaurus Site"

on:
workflow_dispatch:

jobs:
publish:
name: Publish
deploy:
name: Deploy
runs-on: [self-hosted, plutus-shared]
permissions:
contents: write
Expand All @@ -20,7 +20,7 @@ jobs:

- name: Build Site
working-directory: doc/docusaurus
run: nix develop --command bash -c 'yarn && yarn build'
run: nix develop --accept-flake-config --command bash -c 'yarn && yarn build'

- name: Deploy Site
uses: JamesIves/github-pages-deploy-action@v4.6.1
Expand Down
33 changes: 20 additions & 13 deletions .github/workflows/haddock-site.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,31 +3,38 @@
# And optionally to:
# https://intersectmbo.github.io/plutus/haddock/latest

name: "📜 Haddock Site"
name: "📜 Deploy Haddock Site"

on:
workflow_dispatch:
inputs:
version:
ref:
description: |
The release version tag. For example if $version == "1.29.0.0" then the
current contents of the branch tagged "1.29.0.0" will be deployed to:
https://intersectmbo.github.io/plutus/haddock/$version
The $ref to build off of, e.g. "1.29.0.0", "master", or any other valid git ref.
When making a release, this is usually the version tag, e.g. "1.29.0.0", and will be
equal to the $destination input below. When back-porting this could be a commit sha instead.
required: true
type: string

destination:
description: |
The $destination folder, e.g. when "1.29.0.0" the haddock will be deploy to:
https://intersectmbo.github.io/plutus/haddock/1.29.0.0
required: true
type: string

latest:
description: |
If true, then the $version branch will also be deployed to:
If true, then the haddock site will also be deploy to:
https://intersectmbo.github.io/plutus/haddock/latest.
You want to leave this to true unless you are deploying old versions.
You want to leave this to true unless you are deploying old versions or back-porting.
type: boolean
required: true
default: true

jobs:
publish:
name: Publish
deploy:
name: Deploy
runs-on: [self-hosted, plutus-shared]
permissions:
contents: write
Expand All @@ -37,17 +44,17 @@ jobs:
- name: Checkout
uses: actions/checkout@main
with:
ref: ${{ inputs.version }}
ref: ${{ inputs.ref }}

- name: Build Site
run: |
nix develop --command ./scripts/combined-haddock.sh _haddock all
nix develop --accept-flake-config --command ./scripts/combined-haddock.sh _haddock all
- name: Deploy Site
uses: JamesIves/github-pages-deploy-action@v4.6.1
with:
folder: _haddock
target-folder: haddock/${{ inputs.version }}
target-folder: haddock/${{ inputs.destination }}
single-commit: true

- name: Deploy Site (latest)
Expand Down
29 changes: 18 additions & 11 deletions .github/workflows/metatheory-site.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,31 +4,38 @@
# Optionally the $version branch can also be deployed to:
# https://intersectmbo.github.io/plutus/metatheory/latest

name: "🔮 Metatheory Site"
name: "🔮 Deploy Metatheory Site"

on:
workflow_dispatch:
inputs:
version:
ref:
description: |
The release version tag. For example if $version == "1.29.0.0" then the
current contents of the branch tagged "1.29.0.0" will be deployed to:
https://intersectmbo.github.io/plutus/metatheory/$version
The $ref to build off of, e.g. "1.29.0.0", "master", or any other valid git ref.
When making a release, this is usually the version tag, e.g. "1.29.0.0", and will be
equal to the $destination input below. When back-porting this could be a commit sha instead.
required: true
type: string

destination:
description: |
The $destination folder, e.g. when "1.29.0.0" the metatheory will be deploy to:
https://intersectmbo.github.io/plutus/metatheory/1.29.0.0
required: true
type: string

latest:
description: |
If true, then the $version branch will also be deployed to:
If true, then the metatheory site will also be deploy to:
https://intersectmbo.github.io/plutus/metatheory/latest.
You want to leave this to true unless you are deploying old versions.
You want to leave this to true unless you are deploying old versions or back-porting.
type: boolean
required: true
default: true

jobs:
publish:
name: Publish
deploy:
name: Deploy
runs-on: [self-hosted, plutus-shared]
permissions:
contents: write
Expand All @@ -38,7 +45,7 @@ jobs:
- name: Checkout
uses: actions/checkout@main
with:
ref: ${{ inputs.version }}
ref: ${{ inputs.ref }}

- name: Build Site
run: |
Expand All @@ -50,7 +57,7 @@ jobs:
uses: JamesIves/github-pages-deploy-action@v4.6.1
with:
folder: _site
target-folder: metatheory/${{ inputs.version }}
target-folder: metatheory/${{ inputs.destination }}
single-commit: true

- name: Deploy Latest
Expand Down
4 changes: 2 additions & 2 deletions README.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -44,9 +44,9 @@ After setting it up you should just be able to depend on the `plutus` packages a

The main documentation is located https://intersectmbo.github.io/plutus/docs/[here].

The haddock documentation is located https://intersectmbo.github.io/plutus/haddock/[here].
The haddock documentation is located https://intersectmbo.github.io/plutus/haddock/latest[here].

The documentation for the metatheory can be found https://intersectmbo.github.io/plutus/metatheory/[here].
The documentation for the metatheory can be found https://intersectmbo.github.io/plutus/metatheory/latest[here].

=== Talks

Expand Down
6 changes: 3 additions & 3 deletions doc/docusaurus/docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ All of these elements are used in combination to write Plutus Core scripts that

To develop and deploy a smart contract, you also need off-chain code for building transactions, submitting transactions, deploying smart contracts, querying for available UTXOs on the chain, and so on. You may also want a front-end interface for your smart contract for a better user experience.

Plutus allows all programming to be done from a [single Haskell library](https://intersectmbo.github.io/plutus/master/). This lets developers build secure applications, forge new assets, and create smart contracts in a predictable, deterministic environment with the highest level of assurance. Furthemore, developers don’t have to run a full Cardano node to test their work.
Plutus allows all programming to be done from a [single Haskell library](https://intersectmbo.github.io/plutus/haddock/latest). This lets developers build secure applications, forge new assets, and create smart contracts in a predictable, deterministic environment with the highest level of assurance. Furthemore, developers don’t have to run a full Cardano node to test their work.

With Plutus you can:

Expand All @@ -38,15 +38,15 @@ See, for example:

- the [Cardano ledger specification](https://github.com/IntersectMBO/cardano-ledger#cardano-ledger)
- the [Plutus Core specification](https://github.com/IntersectMBO/plutus#specifications-and-design)
- the [public Plutus code libraries](https://intersectmbo.github.io/plutus/master/) generated using Haddock.
- the [public Plutus code libraries](https://intersectmbo.github.io/plutus/haddock/latest) generated using Haddock.

## The Plutus repository

The [Plutus repository](https://github.com/IntersectMBO/plutus) includes:

* the implementation, specification, and mechanized metatheory of Plutus Core
* the Plutus Tx compiler
* the combined documentation, generated using Haddock, for all the [public Plutus code libraries](https://intersectmbo.github.io/plutus/master/), such as `PlutusTx.List`, enabling developers to write Haskell code that can be compiled to Plutus Core.
* the combined documentation, generated using Haddock, for all the [public Plutus code libraries](https://intersectmbo.github.io/plutus/haddock/latest), such as `PlutusTx.List`, enabling developers to write Haskell code that can be compiled to Plutus Core.

## Educational resources

Expand Down
10 changes: 5 additions & 5 deletions doc/docusaurus/docs/reference/haddock-documentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,12 @@ sidebar_position: 3

## Public Plutus code libraries

The documentation generated by Haddock provides a comprehehsive reference for the [public Plutus code libraries](https://intersectmbo.github.io/plutus/master/), an essential resource for developers working with Haskell and Plutus Core.
The documentation generated by Haddock provides a comprehehsive reference for the [public Plutus code libraries](https://intersectmbo.github.io/plutus/haddock/latest), an essential resource for developers working with Haskell and Plutus Core.

### Highlighted modules

Highlighted modules in the documentation include the following:
- [PlutusTx](https://intersectmbo.github.io/plutus/master/plutus-tx/html/PlutusTx.html): compiling Haskell to PLC (Plutus Core; on-chain code)
- [PlutusTx.Prelude](https://intersectmbo.github.io/plutus/master/plutus-tx/html/PlutusTx-Prelude.html): Haskell prelude replacement compatible with PLC
- [PlutusCore](https://intersectmbo.github.io/plutus/master/plutus-core/html/PlutusCore.html): programming language in which scripts on the Cardano blockchain are written
- [UntypedPlutusCore](https://intersectmbo.github.io/plutus/master/plutus-core/html/UntypedPlutusCore.html): on-chain Plutus code.
- [PlutusTx](https://intersectmbo.github.io/plutus/haddock/latest/plutus-tx/html/PlutusTx.html): compiling Haskell to PLC (Plutus Core; on-chain code)
- [PlutusTx.Prelude](https://intersectmbo.github.io/plutus/haddock/latest/plutus-tx/html/PlutusTx-Prelude.html): Haskell prelude replacement compatible with PLC
- [PlutusCore](https://intersectmbo.github.io/plutus/haddock/latest/plutus-core/html/PlutusCore.html): programming language in which scripts on the Cardano blockchain are written
- [UntypedPlutusCore](https://intersectmbo.github.io/plutus/haddock/latest/plutus-core/html/UntypedPlutusCore.html): on-chain Plutus code.

0 comments on commit d46aaca

Please sign in to comment.