[#277] Add good example contracts to the Indigo website

Problem: People want to see examples of Indigo smart contracts,
but our website does not have anything beside toy examples. We have
some examples that demonstrate how Indigo can be used to write non-toy
contracts, we should make it easy to find them. If you consider using
Indigo for your non-toy project, you want to see examples of successful
non-toy smart contracts.

Solutions: Add examples of Indigo smart contracts in the Indigo doc such as:
- AbstractLedger and ManagedLedger
- Globacap
parent 8bb28cdb
Pipeline #184291817 passed with stages
in 3 minutes and 50 seconds
<!-- Append new entries here -->
* [!538](https://gitlab.com/morley-framework/morley/-/merge_requests/538)
Add the `showcase` section presenting a list of public smart contracts written
in Indigo.
* [!533](https://gitlab.com/morley-framework/morley/-/merge_requests/533)
Add a tutorial on how to add documentation to a contract.
+ Create helper functions: `saveDocumentation` and `printDocumentation`
......@@ -22,6 +22,8 @@ Even with a very small example the difference in ease of use is quite visible:
{!bash 19-38 src/Indigo/Tutorial/GettingStarted/Example.hs!}
You can find larger examples [here](showcase.md).
## Overall idea
Michelson contracts are stack-based and often follow the repetitive pattern of
SPDX-FileCopyrightText: 2020 Tocqueville Group
SPDX-License-Identifier: LicenseRef-MIT-TQ
# Showcase
The following is a list of some of the public smart contracts using Indigo.
- [Morley Ledgers](https://gitlab.com/morley-framework/morley/-/tree/master/code/morley-ledgers): This package contains Indigo contracts implementing common Ledger interfaces:
- `AbstractLedger` contract provides a trivial implementation of the AbstractLedger interface.
- `ManagedLedger` contract provides a sample implementation of the ApprovableLedger interface.
- [Globacap](https://github.com/serokell/tezos-globacap/): Tezos Globacap project provides two entities:
- `Safelist` contract which is used to restrict and regulate share transfers.
- `Holdings` contract which is used to distribute the token and optionally regulated by the safelist contract.
!!! tip "Contribution"
You can submit your smart contract to be a part of this list by using the `Edit on GitLab` on the top
of this page or by creating a [new merge request](https://gitlab.com/morley-framework/morley/-/merge_requests/new).
......@@ -45,3 +45,5 @@ nav:
- References:
- Types: types.md
- Expressions: operators.md
- Showcase:
- Showcase: showcase.md
......@@ -22,22 +22,14 @@ This documentation describes an example on how to functions and procedures of In
- [My Contract](#my-contract)
- [Table of contents](#table-of-contents)
- [Storage](#storage)
- [`Storage`](#storage-1)
- [Entrypoints](#entrypoints)
- [`isZero`](#iszero)
- [`hasDigitOne`](#hasdigitone)
- [Definitions](#definitions)
- [Types](#types)
- [`()`](#)
- [`Integer`](#integer)
- [`Natural`](#natural)
- [`Text`](#text)
- [Errors](#errors)
- [`InternalError`](#internalerror)
- [`IsNotZeroError`](#isnotzeroerror)
- [Types](#types)
- [()](#types-lparenrparen)
- [Integer](#types-Integer)
- [Natural](#types-Natural)
- [Text](#types-Text)
- [Errors](#errors)
- [InternalError](#errors-InternalError)
- [IsNotZeroError](#errors-IsNotZeroError)
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment