Intro
Ara is a platform that materializes ideas. It includes all the tools combined for all cycles of software development remotely.
Ara’s development follows the same concept it aims to provide for other software developments.
Since there is no platform for gathering and developing Ara, we will temporarily use the forum hosted at On This forum.
After the release, Ara will be built within its platform.
Motivation
This document describes the guidelines for developing Ara online.
Motivations behind this way of organizing Ara's development are:
- Don’t create a system that makes the rich richer and the poor poorer.
- Incentivize the people responsible for the success rather than the largest shareholders or project owners.
- Improve the Ara collectively instead of forking the project for profit for just a tiny tweak.
For the deep historical background behind this motivation, check out the particular post in your free time: No more Rich Gets Richer, Poor Gets Poorer.
Development Stages
Ara uses the domain-driven approach, dividing the large project into smaller, independent projects.
Then, the project is composed of smaller tasks one person can complete.
Ara comprises web clients, websites, forums, blockchains, and SDKs. From here on, the Ara Project means collecting all the projects that Ara compromises.
Ara defines four stages, from idea to project release:
- 1/4 Aurora State: Post, discover, and discuss ideas.
- 2/4 Maydone State: Initiating a project that realizes the idea and setting up the budget.
- 3/4 ACT State: Collaborative development of the project. The project is split into smaller tasks. Any person online may complete the tasks and get the rewards.
- 4/4 Sangha State: Project management by project owners. People edit the project settings through the Sangha. Conflicts between stakeholders are resolved here. Project reports from developers to the owners are reported here.
Stakeholders
- Maintainer: The maintainers oversee the project development and are allowed to spend the project budget to develop the idea. This group may include project architects, managers, tech leads, etc.
- Leader: The leader of the maintainers makes the final decision for the project. Only one person can be a leader.
- Contributor: The contributors are those who develop the project and complete the project tasks defined by the maintainers.
- Funder: The funders are the people who own and sponsor the project. They fund its development by contributing money to the project treasury.
Maintainers, Contributors and Leaders of the projects must provide their real names or known aliases.
Stakeholder and Development Stage
1/4 Aurora
- People post the ideas under the 1 Aurora tag.
- Only maintainers and funders may post the idea.
- The ideas are public and shall remain public for anyone online.
2/4 Maydone
- It starts as a forum post under the 2 Maydone tag.
- Anyone can post the post.
- The title of the project is the name of the project.
- The content must contain the following data in the order listed here:
- link to the idea that it realizes
- specifies the leader,
- revenue model,
- approximate budget,
- technology stack, and
- estimated human hours to complete.
- The project’s leader specified by the poster must reply, "I approve," and the comment must be pinned.
- To move to the next stage, the Ara's leader must reply, "I approve." The "I approve" must be pinned.
- After two "approvals," funders will have ten days to vote on the project's budget.
- Voting goes in the form of "yes" or "no".
- If the post gets "no", then the project is archived and canceled.
3/4 ACT
- Within the three days after voting end in the 2/4 Maydone stage, the forum maintainer must create a Sangha for the project. It’s a new post under the “4 Sangha” tag. And creating a secondary tag with the project's slug.
- The title and content of the Sangha post must be the same as those in the Maydone post, with additional links to the idea and the Maydone post.
- The forum maintainer must create a project management board and grant the project leader the administrative role of the project management board.
- The leader shall create a budget spreadsheet and list of maintainers and link them to the Project’s Sangha post.
- The Project maintainers shall create an empty repository in the Ara Foundation’s organization within three days of the Sangha post.
- The GitHub repository shall include a code guideline.
- The GitHun repository shall include “MPL 2.0” or an Ara license if the Ara project releases it.
- The GitHub repository shall include a reference to the project’s Sangha post.
- The Sangha post must include the link to the project's GitHub repository.
- After creating the GitHub link, the maintainers only fill the tasks in the project’s kanban.
- The title of the project must remain the same in the Sangha post.
- Only project maintainers may change the post's content after posting it in the comments about what was changed.
- Only project maintainers may edit the project management board: add tasks, remove tasks, etc.
- The first task in Kanban must be project initiation, such as setting up the framework and programming language the project uses.
- Ara forum maintainers must include the link to the project in the particular forum post “Ara projects.”
- Anyone can complete the task but must register in the forum and link his GitHub and wallet addresses.
- Contributors fork the repository’s “main/master” branch. Completes the task in the fork and makes a pull request to the project.
- One pull request must complete the one task on the kanban board.
- The maintainer shall accept/reject within three days after the pull request.
- The maintainer shall not accept/reject his pull request.
- The accepted pull request shall grant the contributor the rewards.
- The accepted pull request shall not remove the task from the board.
- The project's maintainer must update the project budget.
- If the project has a demo, Sangha must include it, along with easy instructions on how to use it as a video and documentation.
- The maintainers must include biweekly reports about the number of completed tasks, the percentage of the work it’s been done, and the challenges it faces, as the comment under the Sangha post.
4/4 SANGHA
- Any post about issues and conflicts shall be tagged with the project tag and the tag of the involved stakeholders: “Maintainer”, “Leader”, “Funder”, or “Contributor.”
- Any post about changing the leadership must include voting that requires funders only.
- Any funder may initiate a post that asks for the replacement of the leadership.
- Any maintainer may issue a post for adjusting the project parameters during the development.
- Any feature to add to the project shall be issued as a new post with the project tag name.
Tokens
Tokens play the most important role in identifying stakeholders, their communication, and transparency of communication.
Tokens are implemented as fungible cryptocurrencies.
Each group of stakeholders (Maintainers, Contributors, Funders) has its own token.
ARA Token
The ARA Token represents the project's ownership. The Ara funder is the only ARA token holder, and maintainers are the people hired by the funders.
After the Ara launch, the ARA holders get dividends from the project profit equivalent to the tokens they hold.
Token Parameters
Total Supply: 75,000,000 (75 million)
Hardcapped: yes
Initial price: 0.24$ per token on exchanges
Name: ARA
Ticket: ARA
Initial Valuation: $14,501,050
Rules of the token
- ARA tokens are not pre-minted. Minting is possible by providing a collateral token to the project treasury. For example, to mint 1 ARA token, a stakeholder must provide $0.24 worth of collateral into the project treasury.
- Anyone can mint the tokens.
- Ara organization must provide a special web link for minting.
- Ara token must be deployed in one of the popular blockchain platforms supported by the Chainlink Oracles.
- At a time of minting, the minting smartcontract must check the price of the collateral using Chainlink Oracles and give Ara tokens equal to the price.
Rules of ARA minting
- 1 - 12,500 is sold at 0.024$ per token, which is 300$ in total. It’s for the testing the project itself with the first contributor. Aim: This tokens are used to pay for the project’s landing page. Immediately Tradeable.
- 12,501 - 100,000 is sold at 0.1$ per token, which is 10,000$. This pool aims to set up the project: gather the community of core maintainers and early contributors and start marketing. The expected minters are the founders, from the grants, and family members of the founders. The tokens are immediately tradeable.
- 100,001 - 2,000,000 is sold at 0.18$ per token. 342,000$ in total. Aim: Seed Round. Starting to build the blockchain itself with the first team and experiments of the client prototype. The tokens are vested. The vesting section of this document describes the vesting rules. Expected source: launchpad, grants, angel investors.
- 2,000,001 - 20,000,000 is sold at 0.2$ per token. 3,600,000$ in total. Aim: Round A. Finale version of the blockchain, starting client development. The tokens are vested. The vesting section describes the rules.
- 20,000,001 - 32,500,000 is sold at 0.22$ per token. 2,750,000$ in total. Aim: Round B. The mainnet release and the first web operating systems test versions, spending on marketing, and adjusting the product for the target audience. The tokens are vested. The vesting section of this document describes the rules.
- 32,500,001 - 42,500,000 ARA tokens are not mintable for the first two years after the token launch. After that, the funders govern these tokens, which are used to pay bonuses or cover unexpected spending.
- 42,500,001 - 75,000,000 is sold at 0.24$ per token. 7,800,000$ in total. It’s for expanding and building additional features. At the end of this cycle, the project must have it’s hub of collaborators who work on additional features. Tokens are immediately tradeable.
Maintainer Token
Maintainer tokens represent the maintainer status of the holder.
The maintainer tokens are pre-minted to the leader’s address. Then leader redistributes the tokens to other maintainers.
Token Parameters
Total Supply: 75,000,000 (75 million)
Hardcapped: yes
Initial price: non-tradeable, no price.
Name: Ara Maintainer
Ticket: MAIN
Initial Valuation: non-tradeable, no price.
Rules of the token
- MAIN tokens are pre-minted.
- Transferring tokens by account itself is prohibited at the code level.
- Trading tokens is prohibited.
- Maintainer must have only one account only that holds it.
- Transfer of the tokens are done through voting, where 51% is priority.
- To prevent mistransferring, or if the maintainer lost access to the account, the smartcontract has revoke functionality that takes back the tokens to another account.
- Anyone can initiate a transfer/revoke, and it is open for three days. Voting must accept yes or no. * The function will be executed automatically if 51% voted yes or no before three days. After 3 days, the function's most significant voted side will perform the functions. The project's leader is the largest holder. No one can hold more MAIN tokens than the
Receivership
The funders may change the leader by initiating a receivership. Receivership transfers the tokens of any maintainer tokens to another token. The receivership is priority than maintainer voting.
This situation is used, if the leader lost his account, or if funders want to replace the leader as well.
Check Token
Check tokens are similar to paychecks. Owners of check tokens have a right to redeem tokens from the project treasury or mint ARA tokens without collateral. Minting ARA tokens for the investment rounds requires a minimum amount of tokens to be put in the treasury. Minting tokens with check tokens bypasses this limitation.
For example in all vesting rounds, the investor is required to put 10,000$ dollars in collateral. With the check tokens, users may vest less than that amount.
Contributors receive check tokens for each task after completion, and maintainers get monthly check tokens as their salaries.
Token Parameters
Total Supply: unlimited, based on task completion.
Hardcapped: no
Initial price: 0.24$.
Name: Ara Check
Ticket: CHECK
Initial Valuation: no valuation as it depends on progress.
Minting
- Estimated budget and human hours to complete the project formulate the amount of check tokens to mint.
- Check tokens must not be given in advance but by quota per month.
For example project requires 200,000$ and requires 4 months to complete it.
Total amount of mintable check tokens will be 200,000$ / 0.24$ = 833,333.34 CHECK.
Every 30 days project may mint 208333.335 CHECK.*
- The leader of the project has the right to issue the check tokens.
- The project leader grants/revokes mint permission check tokens for another account. However, only one account must have the right to mint check tokens.
- To mint the check tokens, the leader must get approval from the funders.
- The approval goes as a forum post in the Ara Sangha in the Ara forum.
- After discussing and correlating the budget and time, the maintainer initiates voting.
- The funders may vote yes or no for the approval.
- The voting lasts for 10 days since the post launch.
- If 51% of the total supply owners voted, then the voting ends before the 10 days.
- The 30-day quota for release is hardcoded and must not be changed.
- Every project has only one channel to issue check tokens.
- Funders or maintainers may issue a post that can cancel the project's check permission; after approval, the project can’t issue any checks.
- Adjustment of the minting check tokens with more time or different check token amount must be occurred by cancelling previous channel and then creating a new channel initiated by the leader.
Usage
- Ara organization has one check token for all its projects.
- Check tokens are open tradeable tokens.
- Check tokens are transferable.
- Contributors get the Check token when they complete the task.
- The task The maintainers issue the tasks along with check tokens for the taskiners, who get the * Check tokens on a monthly basis as a salary.
Burning
- Check tokens have a
redeem()
function, which provides the token address that user wants to get from the treasury.
- Check tokens have a
mint_ara()
function with the option to choose which minting pool to use from 1 to 7. If the pool does not have tokens, then mint_ara()
is unavailable.
- The Ara platform must provide a dedicated page for the usage of check tokens.
- Both
redeem()
and mint_ara()
functions will burn and remove the tokens from the circulation.
Treasury
- Treasury is an asset of the ARA project. The treasury is controlled by the funders. The users of the treasury are the project maintainers.
- Before project release, the treasury funds the project development. After project release, the treasury funds the further grow, and pays the dividends to all ARA holders.
- Initially treasury is supplied by providing collateral when minting ARA token.
- After release, treasury is funded from the project revenue.
- After the release, the Ara one will receive 1.5% of all investments for all injects and deposit them in the treasury.
- After the release, the Ara Blockchain will get 0.3% of all in-app payments and put in the treasury.
- After the release, the Ara project must use the Open Source Hyperpayment specification. It means 20% of the collected fees goes to the partners of Ara not to treasury. It’s part of the open-source economy support.
- Before project launch, assets from treasury are deducted only through check tokens.
- After project launch, the ARA blockchain will have a second treasury called dividends. 50% of fees goes to treasury, 50% of fees goes to the dividends treasury.
- Initially, the Treasury accepts native token of the blockchain and the stable coin with the highest volume.
- Adding new coins occur through a post in Ara Sangha. It can be initiated by the maintainers or funders only.
- Adding new coins automatically starts a voting that lasts for 10 days.
- Voting must be yes or no.
- The treasury and all the Ara project tokens must be deployed on a blockchain platform supported by Chainlink Oracles Price Feeds.
- Before the Ara blockchain's launch, the treasury is controlled through special smartcontract that also acts as a minter of ARA tokens. This smartcontract for minting checks the price of the token and puts them in the treasury.
- The tokens that are added must be popular with a price feed support from Chainlink.
- Depending on the ARA mint round, the controlling smartcontract sends the tokens to the vesting smartcontract (3,4,5 minting steps of ARA) or directly to the minter’s address.
- The withdraw of the treasury occur through CHECK tokens.
Vesting
The ARA token has 7 predefined minting rounds. The tokens minted at the rounds 3, 4, 5 are vested.
What is vesting?
The process of locking down cryptocurrency tokens or coins for a predetermined amount of time before allowing the tokenholder to fully access or transfer them is known as crypto vesting.
from Vesting in crypto, explained on Cointelegraph.com.
Round 3: Seed Round
For round 3, we allocated 1,900,000 ARA. Minting them requires $342,000 worth of treasury collateral or check tokens equivalent to that. The price per token is $0.18.
Vesting is per second. Every second unlocks $0.00289352 worth ARA or 0.0160751 ARA tokens.
Every ARA token mint creates a vesting session. Any user may mint various tokens and redeem the allocated tokens using the session ID.
Anyone can participate in the Seed Round. Every account may invest minimum $10,000 worth tokens and $45,500 worth tokens maximum. Exemption is the CHECK Tokens.
Example:
- User A puts $45,500 collateral. Which means he gets 252,777.8 ARA in 182 days.
- User B puts $10,000 collateral. Which means he gets 55555.5 ARA in 40 days.
- Developer C received a $300 check token. This means he will receive 1666.67 ARA in 103,679 seconds or 1.2 days.
Round 4: Round A
For round 4, we allocated 18,000,000 ARA Tokens. Minting them require $3,6000,000 worth treasury collateral or check tokens equivalent to that. Price per token is $0.2.
Vesting is per second. Every day unlocks $200 worth ARA or 1,000 ARA tokens per day.
Every ARA token mint creates a vesting session. Users may mint multiple times and and redeem the allocated tokens using the session ID.
Anyone can participate in the Round. Every account may invest a minimum $10,000 and a maximum of $60,000 in tokens. The only exemption is the Check Tokens. The maximum vesting period is 300 days.
Round 5: Round B
For round 5, we allocated 12,500,000 ARA Tokens. Minting them requires $2,750,000 worth of treasury collateral or check tokens equivalent to that. The price per token is $0.22.
Vesting is per second. Every day unlocks $150 worth ARA with maximum tokens to vest up to 400 days.
Every ARA token mint creates a vesting session. Any user may mint tokens and redeem the allocated tokens using the session ID.
Anyone can participate in the Round. Each investing transaction may invest from $10,000 to $60,000. The only exemption is Check Tokens. The maximum vesting period is 400 days.
Migration
The ARA token is issued on a blockchain platform first. The Ara project requires its own chain on which the ARA token is a native coin.
ARA token must be bridged to the Ara blockchain after mainnet launch.
The ARA token must have mint/burn tokens right for the bridge.
The bridge must still locked for the first 365 days after the token release.
After that, the funders will approve collective voting through the bridge account for ten days.
To prevent minting the tokens that are vested, ARA token must track the allocated tokens.
After release, the maintainer tokens will be moved to the ARA blockchain.
The CHECK tokens are bridged along with the ARA tokens.
Guideline for Forum
- All the ARA development goes in the Ara forum.
- The vesting must be done on a special landing page in the same domain name as the forum at https://vesting. ara.foundation/.
- The contributors and maintainers must link their github accounts.
- All forum users must link their wallets to the blockchain platform before posting any token.
- The project tasks are based on the forum using integrated Kanban tools.
- Every task must include the special ID, and Check token amount.
- Every contributor must fork the project. One pull request one task.
- The forum must have Devops automation that mints the tokens for the users using github.
Project
- Anyone can participate in the project development.
- Projects may be profit-oriented.
- Every project is allocated to a fund through Check token.
- All project management and funder-maintainer interaction must be done through the Ara Forum at https://forum.ara.foundation/.
- A table listing maintainers' names, wallet addresses, responsibilities, job titles, and management token amounts.
- A rule of project dividend sharing. Like how much each user gets.
- Every project must include a link to a spreadsheet of the maintainers. The spreadsheet is a table with the Maintainer’s name, the amount of the MAIN token it holds, the GitHub account, the forum ID, the wallet address, the maintainer title, a description of the title, and the salary.
Author: Medet Ahmetson.