# Welcome

This project was started in May 2021 by 3 cryptocurrency obsessed software and security engineers. The goal of the project is to enable communities to own their own currency and foster a greater sense of community. We've come up with some amazing ideas for community token experiences and will announce updates in our [Discord](https://discord.com/invite/cRUWB474Jb) and [Twitter](https://twitter.com/solstarfinance).&#x20;

We released our Tip Bot on October 5th, 2021 with custodial wallet and tipping features which implements the foundation of our vision outlined in our [White paper](https://solstar.medium.com/introduction-to-solstar-7d8b023be074). We plan on releasing community created markets backed by STAR, our utility token, Q4 2022.<br>

You can find more information on our website: <https://solstar.finance/>

{% embed url="<https://solstar.finance>" %}

You can find community markets beta features in testing on our dev network: <https://dev.solstar.finance/markets>&#x20;

To get started, check out our Tip Bot Guide below!


# White Paper

Technical overview of our platform for creating Web3 community tokens

This page is a recreation of our white paper in its original form on Medium, available [here](https://solstar.medium.com/introduction-to-solstar-7d8b023be074).

## Overview <a href="#id-86fe" id="id-86fe"></a>

SolStar communities are built on top of the STAR protocol, a set of programs running on the Solana blockchain that negotiates in the **$STAR** token to create the incentive layer of these communities. The STAR protocol forms a “meta-community” that sits at the center of the communities running on top of it. As the SolStar meta-community grows, all communities within benefit as well.

Community tokens have several functions:

* **Investment in a community:** As a community grows in value/size, stakeholders in that community can expect their investment to go up. This incentivizes an interest in curating and maintaining a quality community through early buy-in.
* **Intra-community transfer:** Communities can transact within their community using their community coin. This can take the form of **tips** (send a tip to someone who answered a question for you, posted a funny meme, or an interesting discussion), **bets** (make a wager against another member of the community), **airdrops** (reward the whole community in one fell swoop), and more.
* **Limited Access/Perks:** Limiting access to a community can help ensure the quality of that community by forcing “skin in the game”. Discords could require that a user owns a certain amount of the community token before being granted access. This incentivizes community buy-in and high-quality participation. It is a proven model by communities such as [Friends with Benefits](https://fwb.help/). More permissively, a community may just give certain perks to token holders or tier those benefits based on the quantity of tokens held.

This paper will be primarily focused on the mechanisms of the **$STAR** token, especially in relation to minting and creating markets for community tokens. SolStar is building a suite of tools for implementing the functionality discussed above that will be expounded upon further in future articles.

## Minting Community Coins <a href="#id-692f" id="id-692f"></a>

There are two options for minting community coins: backed and non-backed. Backed tokens are supported by **$STAR** tokens as an underlying asset, while non-backed tokens have no underlying value from the STAR protocol.

Non-backed tokens can essentially be thought of as “fun coins”, that is, coins that are transacted with with no expectation of monetary gain. They do not require a market to be traded on, and will likely be minted with a fixed supply to a single recipient who can then distribute them as they see fit. If they so choose, a community owner will be able to transition their non-backed token into a backed token.

Backed tokens bring with them the interesting incentive mechanisms described above. Backed tokens are minted according to bonding curves encoded in the community token Solana program. Bonding curves offer an on-chain mechanism to determine the price of some asset based on the current supply of that asset, thereby automating the market and allowing tokens to be traded to and from a contract as opposed to swapped in between individuals or through an exchange. Generally, as the number of tokens in circulation increases, the price of minting a new token increases as well. The parameters of these curves can be tweaked in order to obtain different results. Overviews of different curve parameters can be found at the end of this document.

The price can be calculated directly from the current circulating supply of the token. This price is delineated in **$STAR**. Thus, a user must stake **$STAR** in order to receive some amount of the community token, and will burn that token in the same contract to receive **$STAR** back.

Curation markets supported by bonding curves are a proven model. [BitClout](https://bitclout.com/) is an example of curation markets applied to creators. Users can invest in some creator and expect their investment to increase as that creator gains greater buy-in. These “creator coins” can be thought of as *one dimension* of the “community coins” that SolStar is creating.

## Rewards & Fees <a href="#b4f8" id="b4f8"></a>

### Staking Rewards <a href="#e093" id="e093"></a>

Communities are rewarded in **$STAR** proportional to the amount of **$STAR** currently staked into their community coin contract. Thus, a community’s value goes up over time by the simple virtue of existing with value vested into the system, relative to that current value. The rate of return for staking **$STAR** is determined by the emissions schedule, the amount of **$STAR** currently staked in the system, and the amount of **$STAR** accumulated in fees.

### Market Fees <a href="#id-285b" id="id-285b"></a>

A small fee is exacted on transactions that make use of the market contract (swapping from **$STAR** to a community coin or vice-versa). This fee is currently set at 0.3%, modeled after decentralized exchanges (DEXs) such as UniSwap. Half of the fee (0.15%) is returned to the market contract, thereby distributing it to to current holders of the community token managed by that contract. This is similar to a DEX rewarding Liquidity Providers through a fee. The other half (0.15%) is distributed to owners of **$STAR** tokens, proportional to their stake. This incentivizes involvement with the broader SolStar ecosystem and allows staking rewards to continue even after the emissions schedule is completed.

Transferring a community token to another user (without going through the market contract) does not incur a fee.

## Governance <a href="#id-29e6" id="id-29e6"></a>

Starting out, the STAR protocol is governed by a core team of 3 founders. This is important early in the project’s lifecycle when many things are still in flux and the protocol is under rapid development. SolStar intends to distribute governance of the STAR protocol to a DAO once it reaches maturity. When this happens decisions will be made by holders of the the **$STAR** token.

## Tokenomics by the Numbers

*Note: These numbers are subject to change*

**Hard cap:** 1,000,000,000 $STAR

### Distribution <a href="#d3bf" id="d3bf"></a>

* **$STAR Rewards:** 40%
* **Treasury & Community Fund:** 20%\
  Fund to help grow the SolStar ecosystem and unlock partnerships
* **Team/Advisors:** 15%
* **Investor Presale:** 10%
* **Yield farming:** 10%
* **Liquidity:** 5%

![](/files/jWf856dae6XrNeudSAO2)

### Don’t get scammed <a href="#id-32af" id="id-32af"></a>

Note, there is no SolStar token yet! Do not buy any tokens that claim to be SolStar. When we launch our token, it will be announced on our [Official Twitter](https://twitter.com/SolStarFinance).<br>

## Community Curve Parameters <a href="#id-7503" id="id-7503"></a>

As mentioned above, different community growth outcomes can result by tweaking curve parameters. Different types of curves can influence community growth in different manners. Community leaders can customize their curves how they see fit. SolStar will offer default curves based on a user’s preference for factors such as exclusivity, growth rate, and more.

### Polynomial Curves <a href="#id-2c8c" id="id-2c8c"></a>

The most recognizable bonding curve. But likely not the curve optimized for most communities.\
**Goal**: exclusivity and larger returns for early adopters\
**Formula**: *y*=*a\*x*ⁿ\
*x* is the current supply of the token\
*y* is the current price of the token\
*a* can be increased to make a curve *linearly* more aggressive\
*n* can be increased to make a curve *exponentially* more aggressive

![Polynomial curve for exclusivity and larger returns for early adopters](/files/iJeYleQmMOZe25f7IvJm)

### Linear curves <a href="#id-0f7a" id="id-0f7a"></a>

The simplest and easiest curve. Can map 1:1 to **$STAR** if horizontal.\
**Goal:** Constant price tiers and steady growth\
**Formula:** *y*=*m*\**x+b*\
*x* is the current supply of the token\
*y* is the current price of the token\
*m* can be increased to make a curve *linearly* more aggressive\
*b* can be increased to adjust the starting price of the token

![Linear equation for steady growth and price](/files/v1gRoB4Pnb0NTwtDt4gd)

### Sub-linear curves <a href="#id-8cb5" id="id-8cb5"></a>

Curves that grow quickly, but asymptotically level out at a price ceiling\
**Goal:** Reward early adopters, and allow a community to grow indefinitely at an expected price level\
Formula: *y*=logₙ(*x*)\
*x* is the current supply of the token\
*y* is the current price of the token\
*n* can be decreased to more aggressively taper off to the price ceiling\
*a* can be increased to raise the price ceiling

![Sub-linear reward early adopters with an expected price level](/files/cETKeS1UWYOr1oPnILFm)

### S-Curves <a href="#id-6b1e" id="id-6b1e"></a>

S-Curves start slow, grow aggressively, and taper off to an asymptote similar to sub-linear curves\
**Goal:** Mimic the natural growth of communities\
**Formula:** *y*=1/(1+*e*^(-*a*(*x*-*b*)))\
*x* is the current supply of the token\
*y* is the current price of the token\
*a* can be decreased to give a gentler slope to the curve\
*b* is the inflection point of the graph

![S-curve mimicking natural growth of communities](/files/kJOPGPe8oGRK422gBEdY)


# Getting Started

October 25, 2021

We're excited to announce the launch of SolStar Tip Bot on Solana's mainnet-beta network, making managing and sending cryptocurrency to Discord's 140 million users free and easy! This page outlines the features and usage guide for SolStar Tip Bot. It also outlines the release of community tokens coming November 2021!&#x20;

{% embed url="<https://solstar.finance>" %}
<https://solstar.finance/>
{% endembed %}

## Getting Started

There are two ways to use SolStar Tip Bot

* [Join our amazing Discord community](https://discord.gg/gMyX7wRRUA) and start using SolStar Tip Bot by typing `/star` in the &#x20;

  `#🎉-tip-party🎉` channel.
* [Invite SolStar Tip Bot](https://discord.com/oauth2/authorize?client_id=957020698776322119\&permissions=414733224000\&scope=bot%20applications.commands) to your server.&#x20;
  * Permissions
    * Tip Bot requires basic permissions that other users already have, like being able to send a messages with an attachment&#x20;
    * Tip Bot also requires role management that enables features like giving users access to particular channels. You can edit what roles Tip Bot manages by re-ordering Tip Bot role  above any roles you enable. There is more info about permissions in the security model section.

Once you're able to DM the Tip Bot, **set up is complete!**

{% hint style="info" %}
Don't forget to [follow us on Twitter](https://twitter.com/solstarfinance)!
{% endhint %}


# User Guide

After being able to direct message SolStar Tip Bot, let's go over commands!

To get started

* You can type `/star` in any Discord channel where you see SolStar Tip Bot.
* **or** you can direct message SolStar Tip Bot.

![](/files/s4Oyt19TiprEdHnUXfIc)

When SolStar Tip Bot is available, type `/star` as a message and a Discord slash command will appear.

![Typing /star](/files/kx5lw44H0Ix5fe4klLYr)

## Help command

`/star help` is there for users when they need it. It has useful links, more information, and an outline of commands.&#x20;

![](/files/uaifgLKCKdWVYkSagCtz)

## Check your balance

To start, you can request your balance by typing `/star balance` into any Discord channel where you see the Sol Star Tip Bot **or** direct message.

## **Funding command**

You can send transactions with funds from two sources below.

* SolStar custodial wallet
  * With the [fund page](https://solstar.finance/fund)
  * By sending tokens to your address found with `/star balance` or [account page](https://solstar.finance/manage)
* With your wallet provider by tipping with `external: True`
  * Wallets supported [Phantom](https://phantom.app/), [Solflare](https://solflare.com/), [Slope](https://slope.finance/), [Ledger](https://www.ledger.com/), and [Sollet](https://www.sollet.io/).

By default, Tip Bot sends tips with custodial wallets associated with your Discord account managed by SolStar.

You can send fully fledged tips with custom gif and message sent by SolStar Tip Bot by enabling the `external` flag during the `/star tip` command. This will return a link to sign transactions with your wallet provider and after confirmation Tip Bot will send a tip to the recipient Discord user.&#x20;

Example below

![Send trustless tip by enabling external](/files/9XaQVyZ43GEMq3a5k4iF)

## Sending tokens

`/star tip` is a core feature of the Tip Bot. A typical tip command is shown below consisting of:

1. a user to tip
2. what token to tip&#x20;
3. an amount of token
4. an optional `reason` that can be used as a personal message
5. lastly an optionally gif override to use— an easter egg if you will 🤪

Tipping will publish to the current channel. You can set up private channels with another user and Tip Bot to privately tip.

The `reason` argument has a limit of 140 characters.

If the `amount` argument includes a `$` we tip an equivalent amount of tokens based on [current market price](https://coinmarketcap.com/currencies/solana/).

We have a list a pre-populated tokens you can chose from globally. If your server has guild tokens enabled, the `/tip` command will show up and you can tip custom SPL tokens with that command.<br>

![sending a tip command](/files/PvL9l8rdXBHRI1DkJaW4)

## Feedback

`/star feedback` is there for you to let us know what you think; good or bad! 😇

![](/files/Uu8xMaHHeJQkI3UDgp9B)

## Adding the Tip Bot to your Discord

Server owners can use this [link](https://discord.com/oauth2/authorize?client_id=858879011924738059\&permissions=414733224000\&scope=bot%20applications.commands) to add Tip Bot to their Discord.&#x20;

[Join our Discord](https://discord.com/invite/cRUWB474Jb) and DM one of the mods or admins so we can add you to the #server-owners channel and role. We can talk about how your community interacts with Tip Bot, help troubleshoot any problems, or any questions you may have.

## Security Model

#### SolStar Wallet Overview

When the user first interacts with the Sol Star Tip Bot, we generate a secure wallet for that user in the SolStar backend. The wallet is tied to the user's Discord account, and they are the only one with access to it.

#### **Loading Funds**

In order to tip other users, they'll need to load funds into their wallet via a Solana transaction to their generated SolStar wallet. In order to load funds, use the `/star balance` command described above to view your Solana address. Then send funds. **Always double check your Solana address**. It's best to test with a small amount first, so you can be certain you got the address correct.

#### Encryption

Our wallets are salted and encrypted with AES-256 and all sensitive requests live on a private service not accessible from the internet.<br>

## Meet the Founders

Ryan Endacott - [@RyanEndacott](https://twitter.com/RyanEndacott)

* Senior Software Engineer - Loon Mission Control (Google X)
* Full Stack Software Engineer with focus on user experience, distributed systems. Ex-Google, Facebook, Clever.

Drew Wetherington - [@DrewWeth](https://twitter.com/DrewWeth)

* Senior Full Stack Software Engineer at a Y Combinator startup that builds AI Software for marketing and supply chain optimization.
* Cat lover and engineering wizard

Daniel Holmgren - [dholms.github.io](https://dholms.github.io/)

* Fullstack/P2P/Cryptography Engineer at Fission (<https://fission.codes/>), building a framework for end-to-end encrypted, distributed, user-controlled filesystems.
* Previously, co-founded Axon (<http://axon.science/>), building a p2p collaboration protocol for scientific data.
* Ex-ConsenSys Engineer & Inaugural ConsenSys Academy grad

## Fees

The only fees associated with transacting come from the underlying Solana network. The standard  transaction fee is 0.000005 SOL.

In other words, $10 per every 10,000 tips at $200/SOL.

You can find more information about [Solana transaction fees here](#fees).

## FAQ

* What is SolStar tip bot used for?
  * We built Tip Bot to make communities more fun. We plan on making the following
    * The ability for users to make their own currency for their server.
    * Leaderboards between servers and leaderboards for users within servers.
    * When a user owns 10 tokens they get a special role
    * Auto tip, if you appreciate someone's feedback in a Discord channel responding with a certain reaction will auto-tip them.
* How do I get SolStar Tip Bot in my Discord?
  * You can invite Tip Bot to your server, [here](https://discord.com/oauth2/authorize?client_id=957020698776322119\&permissions=414733224000\&scope=bot%20applications.commands). Or you can join our Discord, [here](https://discord.gg/cRUWB474Jb).
* I have SPL tokens (USDC, STAR, PAI) but I can't send a tip.
  * All transactions require you have a small amount of SOL to cover the Solana network fees. It is advisable to keep a small amount of SOL in your balance to facilitate.<br>

**Please let us know in our Discord what FAQs are important to you.**


# Fees

SolStar uses Solana as its blockchain network provider. Solana is a network designed for high throughput with low fees. Below is a short description of how fees work with native SOL and native Solana tokens.

The base fee for sending SOL or any Solana token is 0.000005 SOL. This fee is applied to any transaction recorded to the blockchain ledger. These events include transfers, account creation, and sub-account creations.

To send another user a token, an associated token sub-account has to exist or be initialized. Associated token accounts cost 165 bytes of 2-year rent exemption up front as a deposit. You can recover associated token account deposits by transferring tokens and closing the sub-account.

<table><thead><tr><th width="192.43681349162324">Amount</th><th>Description</th><th>Cost at $150 USD/SOL</th></tr></thead><tbody><tr><td>Base transaction</td><td>0.000005 SOL</td><td>$0.00075</td></tr><tr><td>Send a novel SPL token to user</td><td>0.00203928 SOL</td><td>$0.305892</td></tr></tbody></table>


# Token Swap

Sick of joining a community, wanting to get involved and not knowing where to start? We've created a button to make buying tokens a one-click step, all right from within Discord.

#### **You can now buy any SPL token with your custodial balance!**

![](/files/pnOyTRqNNvmtnRxMxLJ0)

![](/files/ITNzp4TnzsdfcZCGNOAh)

![](/files/wN5l5o2BjLZotluczmnT)

The transaction to do the swap takes about 30 seconds and will sometimes fail because of [slippage](https://help.coinbase.com/en/coinbase/trading-and-funding/advanced-trade/slippage).&#x20;

## How it works?

When we receive a request for a token swap, our services request all available liquid markets between SOL and the requested token (USDC, SRM, etc) through [Jupiter Aggregator](https://jup.ag/). Jupiter ranks the market conditions, optimizing for output token exchange rates between decentralized exchanges. We then perform the Swap on behalf of the user and take a 1% fee.

## For server owners

Anyone can add a token to their server with the `/star token-button` command. The command takes a token ticker or mint address. As a warning, token tickers are not unique. If the wrong token shows up for the ticker, then use the token mint address for 100% token certainty.

![](/files/PezTgFvfqo9E3Y36rG1R)

##


# Feature Release: Tip Custom Tokens!

Today we're happy to release a new feature! As a Discord server admin, you can now add any of the **7,369** official Solana tokens to your `/tip` command! Example below.

![Have your token auto populate in the /tip command.](/files/WjLaTbtaF8C1hsCfyWaS)

For added flexibility, you can also add any token not yet registered to the official token list as long as the address or token ticker do not conflict with an already registered token.

## Getting Started

Below are the requirements and steps to add an official or unofficial main-net token to your server's `/tip` command.

### Requirements / Prerequisites

1. You must have admin level access to the Discord server you wish to add a token to. \
   \
   *NOTE:* Anyone can make a Discord server to gain admin level access to try out this feature.
2. You must have invited SolStar Tip Bot in your Discord server. You can invite the Tip Bot with [this link](https://discord.com/oauth2/authorize?client_id=957020698776322119\&permissions=414733224000\&scope=bot%20applications.commands)

### Set Up Steps

1. Go to <https://solstar.finance/manage/guild-tokens>
2. Login with your Discord account
3. Click "Add Guild Token"
4. The form below will open
   1. **Select Guild**: Select which server the token should be added to.
   2. **Token Mint Address**: This is the full token address. This can be found on <https://solscan.io/> or <https://explorer.solana.com/> by searching for your token and finding the token address.
   3. **Token Name**: You can give your token a fun name.
   4. **Token Ticker**: If you are adding an official token, the ticker MUST match the official token ticker, this is to prevent abuse. If the token is not an officially registered token, you can add a custom ticker but it must not match an existing token or it will be rejected.
   5. Hit "Add Guild Token"
   6. If it's successful the token will show up under your guild and can be removed from there.

![Form to add token to /tip pre-populated list.](/files/2VvqPCXu3eFmikQMPHN9)

Now go to Discord and in your server, start typing `/tip` and the SolStar Tip Bot server command should appear now. It will have `SOL` pre-populated since all transactions require a small amount of SOL (<$1.00).

![Example custom token added to /tip server command.](/files/CRSjeWt5CLIHC9AjyS2d)

If you run into any issues, please ask for help in our [#support channel in the Discord](https://discord.gg/6JGDMMnjdY).

Good luck and have fun!

\- SolStar Development Team


# Hiring SolStar Software Engineer

We've filled out current positions, but are always looking for exceptional people.

Send us an email at **<hiring@solstar.finance>** with your resume and say hi if you’re interested.


# Media Assets

Here you can find SolStar's branding assets for use in promotional materials and epic memes.

#### SVGs

![](/files/dvlb6HXmEpp279s50CKy) ![](/files/4xNVa5HOqvSOno9RmFYa) ![](/files/LhcEVXnuQBdB7EdE4War)

#### PNGs (512x512)

![](/files/EHKm0JQDtpX2gZC83oP6) ![](/files/FVp05lO0q1As9bKzRdRx) ![](/files/jYKHxK47JspVzhUtc9Jc)


