Skip to content

Commit

Permalink
Move to bun for website and add 2 blog posts
Browse files Browse the repository at this point in the history
  • Loading branch information
tupui committed Sep 25, 2024
1 parent 72617b7 commit 8718f52
Show file tree
Hide file tree
Showing 18 changed files with 147 additions and 24,204 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
slug: activation_award
title: Activation Award
authors: pamphile
tags: [soroban, scf]
tags: [scf]
---

This is the beginning for Tansu! We are happy to have received a Stellar Community Fund Activation award. This grant is helping us build the foundation of Tansu.
Expand Down
4 changes: 3 additions & 1 deletion website/blog/2024-09-15-v1.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
slug: v1
title: v1 on testnet
authors: pamphile
tags: [soroban, scf]
tags: [soroban, dapp, scf]
---

We have a v1! 🎉
Expand All @@ -13,6 +13,8 @@ https://testnet.tansu.dev/

<!-- truncate -->

![V1 dApp landing page](/assets/blog/v1_landing.png)

This v1 mark the end of our [SCF28](https://dashboard.communityfund.stellar.org/scfawards/scf-28_43/activationawardreview/suggestion/1150) activation award. It has been a fantastic experience with its up and downs, but thanks to Stellar's awesome community, we are happy to say that we exceeded expectations by delivering more than we planned!

Let's recap what we set ourselves to:
Expand Down
103 changes: 103 additions & 0 deletions website/blog/2024-09-22-build_submission.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
---
slug: build_submission
title: Application submitted!
authors: pamphile
tags: [scf]
---

I am happy to let you know that I filled out our application for the SCF Build! I am sharing here what we have planned. I really hope we get the opportunity to build all that for the community 😻 Don't forget to vote 🤗

<!-- truncate -->

After a successful POC phase. Tansu is starting to show our vision and can be played with on Testnet. We have an ambitious proposal for the Build award. Besides the road to mainnet and real adoption, we have two objectives:

- Offer a decentralized platform for developers to maintain and interact with projects;
- Add an emphasis on people behind projects through the use of reputation badges.

## Decentralized organization

Projects will have access to their own Decentralized Autonomous Organization (DAO). The community of a project will be able to vote on new features or organizational changes. There are several SCF open source projects we might be able to leverage.

The project will have a wallet and the DAO will be used to control the funds allocation. There are going to be mainly two pools. The first pool is dedicated to developers. Funds will be automatically distributed to active maintainers based on specific criteria. The rest of the funds would be managed by the DAO for other purposes such as compensating non-developers, infrastructure costs, or even organizing events. The use of a complex system of redistributions typically used in web3 projects, such as Quadratic Funding (QF), will be evaluated.

The first building block is being built as of writing. We are adding a support button which would allow projects to collect funds. The funds will be routed to the domain address of the project, then projects can either use the DAO to manage it or do otherwise.

Release process on-chain. From triggering the release to registering it.

Add a level of trust per hash. Combining time based rules with additional factors such as voting from maintainers, to mark specific hashes as more trusted: this introduces a finality concept and enables consumers of the contract to use specific trust levels depending on their own risk profile. We will evaluate the possibility to combine this concept with an automatic update of the hash. This would allow a fully trustless mode of operation. Linked to that, we will add tools to reject a hash. As maintainers can get compromised, it is important to have means to indicate that a project and person is compromised.

## The people behind the code

Behind projects, we have people. We want to add profiles for people registered on-chain and recognise their contributions. We will leverage the solution from Trustful, and doing so, build yet another sustainable partnership between SCF projects.

Badges are not vanity tokens. They will play an essential role in defining permissions on the protocol. Linked to the DAO, badges will reflect the level of trust the community has in someone. This integration will require extensive work both on the contract and the dApp side.

Tools will be implemented to add/remove maintainers programmatically based on the on-chain status of the project and trust level.

Other personas will be added on-chain as to give other responsibilities. This will further increase projects' transparency and give all participants some visibility.

Finally, users will be able to subscribe to projects to get news about new trusted releases, security related issues and DAO events.

## Roadmap - Tranches

The planning outlined below, and in the other tranches, assumes an average level of effort of 15h per week per person for a total duration of 6 months making it sustainable in terms of development engagement for all parties.

For simplicity, the start of the tranche is represented as W1-for Week 1. While the developers have some affinity, backend/frontend/contract, all developers will be involved on all aspects of the proposal.

### MVP

1. Decentralized organization backend;
- Create a decentralized organization when a project register,
- Create a new project and see that a DAO is created on-chain.
- W1 to W5
2. Decentralized organization frontend;
- Frontend for the DAO with different flow for project's collaborators and users,
- We can create a DAO, make proposals and trigger flows from the dApp (team priviledges, release and flag commits).
- W3 to W8
3. Maintenance before Testnet tranche;
- Stabilize the project: code cleanup and maintainability efforts,
- Upon specific actions such as making commits, receive a badge on-chain.
- W1 to W2 and W6 to W8

### Testnet

1. Add reputation badges backend;
- Projects get a set of badges to define the level of contribution,
- Upon specific actions such as making commits, receive a badge on-chain.
- W1 to W5
2. Add reputation badges frontend;
- Projects get a set of badges to define the level of contribution,
- See the Tansu reputation of a user registered on Tansu.
- W3 to W8
3. Backend infrastructure;
- Deploy the backend on GCP and connect the frontend,
- The app will be more reactive and do far less contract calls.
- W1 to W8

### Mainnet

1. UI testing;
- Add a full suite of UI tests with Playwright,
- All scenarios are fully covered.
- W1 to W4
2. Contract testing;
- Harden the testing of the contract and prepare for the audit,
- Fuzzy testing can be done with confidence and the audit passes.
- W1 to W2
3. Event subscription;
- Add the possibility to subscribe to a project to get updates,
- Get informed about specifics on a project (new commit, incidents, DAO proposals, releases).
- W4 to W7
4. Documentation;
- Write guides and walk through,
- Guides are published on our main website and blog.
- W5 to W8
5. Community feedback;
- Based on community feedback, make changes,
- W1 to W8.

As a public good project, we don't yet have concrete monetization plans. At that point we are more interested in providing monetization tools to support the projects on our platform. The Support button will allow people to show their support in XLM to a project and if they wish, give a tip to the platform. Monthly options will also be made available and could generate a constant revenue stream both for the projects and our platform.

As we add new features, driven by community feedback, we might add more enterprise oriented features. At that point we are thinking about adding some fees to specific contract calls and features in the dApp itself.

Regardless of a hypothetical monetization, we have a strong commitment toward open-source and our code will remain public. We will ensure that there is great documentation so that anyone can freely Quickstart our infrastructure and build on top of it as they wish.
20 changes: 20 additions & 0 deletions website/blog/2024-09-25-donate.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
slug: donate_feature
title: What is this Support button?
authors: pamphile
tags: [dapp]
---

Tansu got a new button and it's a `Support` one! Funding open source software has always been a point of contention. Adding this simple support mechanism is just a glimpse into what Tansu will offer to project maintainers automagically.

<!-- truncate -->

![Support button modal in the dApp](/assets/blog/support_feature.png)

But wait, there is one major difference compared to the seemingly same "support button" from GitHub or other like buy-me-a-coffee services. It's on-chain and funds goe straight to projects.

When you register your project on Tansu, the first thing that happens is that it registers a "Soroban Domains" for you-if you don't already have one for this address. With a domain, projects get their own Stellar address which can be used for many things. In this case, it's receiving funds.

Funding becomes fully transparent, practically costless, borderless and smarter thanks to smart contracts.

There is more! Because the project and it's account are on-chain, this button is the opening letter towards having a real transparent and fairer fund management on the project level and this is what we set ourselves to build with the next SCF Build program. Yes, Decentralized Autonomous Organization is coming.
13 changes: 9 additions & 4 deletions website/blog/tags.yml
Original file line number Diff line number Diff line change
@@ -1,9 +1,14 @@
soroban:
label: soroban
permalink: /soroban
description: Stellar Smart Contract
dapp:
label: dapp
permalink: /dapp
description: Decentralized Application

scf:
label: scf
permalink: /scf
description: Stellar Community Fund

soroban:
label: soroban
permalink: /soroban
description: Stellar Smart Contract
Binary file added website/bun.lockb
Binary file not shown.
2 changes: 1 addition & 1 deletion website/docs/developers/architecture.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ sidebar_position: 1

# Architecture

![General diagram flow](/assets/architecture.png)
![General diagram flow](/assets/docs/architecture.png)

:::note[Maintainer]

Expand Down
8 changes: 4 additions & 4 deletions website/docs/developers/on_chain.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ stellar contract invoke \
--domain_contract_id C...
```

![Contract on-chain](/assets/contract.png)
![Contract on-chain](/assets/docs/contract.png)

Then maintainers can commit changes on-chain as they push new commits.

Expand All @@ -41,9 +41,9 @@ stellar contract invoke \
--hash ...
```

![Contract on-chain](/assets/storage.png)
![Contract on-chain](/assets/docs/storage.png)

![transactions](/assets/transactions.png)
![transactions](/assets/docs/transactions.png)

Later on, anyone can fetch on-chain data about a project and verify the last commit hash for themselves.

Expand All @@ -61,7 +61,7 @@ stellar contract invoke \

Registering a project or committing a new hash, sends a contract event off-chain.

![Contract events off-chain](/assets/events.png)
![Contract events off-chain](/assets/docs/events.png)

These events are ingested by a backend to make them easily consumable off-chain.

Expand Down
Loading

0 comments on commit 8718f52

Please sign in to comment.