open-index/open-npm huggingface dataset:
npm package: @floki-inu/contracts-solana
Description: We maintain the programs using the anchor framework for solana.
Latest version: 0.0.30

# Floki solana contracts

We maintain the programs using the anchor framework for solana.

To read more about, please check [anchor-lang](https://www.anchor-lang.com/).

### Dictionary

Before we start, it's a good idea to have a little of context for some words:

- **program(s):** Are our 'code' in solana environment, it's equivalent of smart contracts in other chains.
- **achor:** It's a framework to help us to develop secure programs over solana chain.
- **pda(s):** or _program derivated address_ are like a storage for our program. In solana programs don't keep data, they create accounts to store it's data.
- **accounts:** everything in solana are accounts and is stored in accounts, tokens, programs, wallets, etc.

## Project folder structure

- **programs:** This folder contains all of our programs.
- **src:** Where our types or any other utility helper will be deployed to an _NPM_ package.
- **tests:** Our test files for all programs.
- **migrations:** Are anchor folder to deal with the deploy functionalities.

## Requirements

To be able to run everything fine you must install:

- [Rust](https://www.rust-lang.org/tools/install): the language to code on solana
- [Solana CLI](https://docs.solanalabs.com/cli/install): With provide a lot of solana helpers to build, deploy, and code through your CLI.
- [Anchor](https://www.anchor-lang.com/docs/installation): A solana framework to help us create programs securely.

# How to

A quick how to, step by step do actions.

### Run a validator locally with a contract

The following commads will start a validator locally and deploy the contract to it:

```
solana-test-validator;
# in another terminal
yarn build;
yarn deploy localnet;
```

### Run the tests

Make sure that you don't have any local validator running. If you have, stop it, or skip the validator check with `--skip-local-validator`

```
yarn test:launchpad
```

### Deploy

```
yarn deploy <cluster>
```

example:

```
yarn deploy devnet
```

### Update program interfaces on solscan

```
yarn idl:upgrade -f <idl_path> <program_id>
```

and if you want to upgrade this in a different provider than your `solana-cli` default configuration:

```
yarn idl:upgrade -f <idl_path> <program_id> --provider.cluster <cluster>
```

### Update your solana default provider

```
solana config set --url <cluster>
```