Code Monkey home page Code Monkey logo

fontana's Introduction


Fontana

fontana.boxfish.studio

A simple dashboard to manage Solana SPL tokens


Features

  • Create, mint, and transfer SPL tokens
  • Mainnet and devnet support
  • Configurable RPCs
  • Compatible with Phantom, Solflare, Torus, Sollet, Glow and Slope wallets
  • 2 different operation modes: wallet-based and server-based

Using the program

Wallet mode

Creation, minting and transfer of tokens will be performed by the connected wallet account.
The displayed SPL tokens will be the ones created by the wallet account, plus the ones available in server mode.
This mode is operational if a wallet is connected.

Server mode

Creation, minting and transfer of tokens are performed by an account configured in the server.
New created tokens will be stored in a dedicated db for persistence.
The displayed SPL tokens will be those in the application config file, plus the SPL tokens found in the db.
This mode is operational when there is no wallet connected.

Please note, when using Server mode in our Production deploy in Mainnet, the creation of new tokens is not enabled.

Run

Clone the repo, and run the development server:

yarn dev 

The app will open at http://localhost:3000.

Configuration

The app needs the following environment variables:

 NEXT_PUBLIC_RPC_API_DEVNET = Url of your preferred devnet RPC
 NEXT_PUBLIC_RPC_API_MAINNET = Url of your preferred mainnet RPC
 NEXT_PUBLIC_DATABASE_URL = Url of your mongodb cluster (for data persistance)

Then additionally, if you want to configure the app to manage certain tokens by default, you need to configure them in the config file and add the corresponding environment variables.

const config: Config[] = [
  {
    keypair: "WALLET_1",
    owner: "Token owner public account",
    token: "Token mint account",
    network: "Devnet" or "Mainnet",
  }
];

Which will require for a new environment variable NEXT_PUBLIC_WALLET_1 corresponding to the WALLET_1 keypair.

 NEXT_PUBLIC_WALLET_1 = [Private key for token owner account]

You will need to add as many new environment variables as wallet ids are used in your configuration file.

License

Apache 2.0 © Boxfish Studio

fontana's People

Contributors

agus-xyz avatar aspnxdd avatar evavirseda avatar marc2332 avatar omahs avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

omahs

fontana's Issues

feat: create token

if configured a mongo db cluster in the app settings, load availalbe stored tokens to the list, and show Create token button to allow for dynamic token creation. On create, a new item is added to the mongo db.

image

[Task]: Simplify settings

Simplify the configuration and usage of the app as much as possible.
Possibly only using the following parameters:

  • RPC url
  • Number of tokens
  • Keypair for each of the tokens token (making it only available within the server)

[Task]: Release new version 1.0.3

  • After all dependencies (including new verison of the sdk) have been upgraded
  • Compile changelog
  • Release v 1.0.3 adding the changelog to the releases page

feat: make wallet mode

when a wallet is connected, it enters the wallet mode.
In wallet mode, the table will show available tokens over which the wallet owner is authority.

[Filler Task]: Update dependencies to fix loadash

Task description.
We have a dependabot warnig saying we should upgrade our deps because of loadash

Upgrade lodash to version 4.17.21 or later. For example:
lodash@^4.17.21:
version "4.17.21"

Requirements.

  • Dependencies updated so loadash is now at min v4.17.21
  • Nothing breaks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.