{"id":13652174,"url":"https://github.com/solana-developers/workshop-dapps","last_synced_at":"2025-04-23T03:30:41.775Z","repository":{"id":59807746,"uuid":"525820451","full_name":"solana-developers/workshop-dapps","owner":"solana-developers","description":"A Collection of Solana dApps for workshops!","archived":true,"fork":false,"pushed_at":"2022-12-08T12:15:21.000Z","size":30244,"stargazers_count":44,"open_issues_count":0,"forks_count":20,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-11-10T03:33:06.179Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/solana-developers.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-08-17T14:08:16.000Z","updated_at":"2024-10-09T07:46:54.000Z","dependencies_parsed_at":"2023-01-25T13:01:10.208Z","dependency_job_id":null,"html_url":"https://github.com/solana-developers/workshop-dapps","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fworkshop-dapps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fworkshop-dapps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fworkshop-dapps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fworkshop-dapps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/solana-developers","download_url":"https://codeload.github.com/solana-developers/workshop-dapps/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250365224,"owners_count":21418650,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T02:00:56.481Z","updated_at":"2025-04-23T03:30:36.760Z","avatar_url":"https://github.com/solana-developers.png","language":"TypeScript","funding_links":[],"categories":["Books, Tutorials, and Courses"],"sub_categories":[],"readme":"# Solana Workshop dApps\n\nYour instructor may use one of the applications stored in this repository to conduct a Building on Solana workshop.\n**There are a few key elements of this repository to understand:**\n* :blue_book: Resources to learn about Solana development - whether you're beginner or intermediate level, can be found in the [Resources](#resources-for-learning-solana-development) section below.\n* :wrench: Setup steps are detailed in the [How to Code Along](#how-to-code-along-in-workshops) section.\n    * You can use a [web-based IDE](#setting-up-solana-playground-ide), which allows you to build \u0026 deploy programs without installation of any toolkits (ie. `solana`, `rust`, `cargo`).\n    * You can also code along with your [local setup](#local-setup), if you've got everything installed.\n* :key: You'll get the best experience from these workshops by cloning down the [redacted code](#using-the-redacted-code-to-code-along) and filling in the blank sections as you follow your instructor through the session.\n    * You can choose to simply clone down the complete application \u0026 deploy that, but this may not be as insightful!\n* :warning: If at any point you get stuck or have a question, you can share your workspace with your instructor - both for the [web-based IDE](#sharing-your-workspace-on-solana-playground-ide) \u0026 [your local setup](#sharing-your-workspace-from-your-local-setup).\n---\n\n## How to Code Along in Workshops\n\n### Setting up Solana Playground IDE\n* Go to https://beta.solpg.io/ and when you open the page for the first time, you'll see a template Solana program repository.\n    * You can choose to delete this template Solana repository.\n* Click the \"Wallet Not Connected\" button in the bottom left \u0026 follow the prompts to either upload your existing wallet or generate a new one.\n* To create a new repository (called a workspace), click the \"New\" button in the upper left-hand side.\n    * Choose your toolkit: Solana Native, Anchor, or Seahorse.\n    * Name it, and click \"Create\".\n* :key: If you want to instead import an existing project, SolPG supports importing GitHub repositories as well. \n    * Choose \"Import from GitHub\" \u0026 select the framework your repository is built using (Native, Anchor, Seahorse).\n    * Follow the instructions detailed in the pop-up window about the specific path to provide.\n    * Name it, and click \"Import\". You should see your program code in SolPG!\n### Local Setup\n* Install the Solana CLI \n    * Note: Requires Rust \u0026 Cargo full installation.\n* Configure the Solana CLI's Cluster\n    * `solana config set -ul`    : Sets cluster to `http://localhost:8899`\n    * `solana config set -ud`    : Sets cluster to `https://api.devnet.solana.com`\n    * `solana config set -ut`    : Sets cluster to `https://api.testnet.solana.com`\n    * `solana config set -um`    : Sets cluster to `https://api.mainnet-beta.solana.com`\n* Configure the Solana CLI's Wallet\n    * `solana-keygen new`        : This will generate a new keypair to `~/.config/solana/id.json`\n    * Use the `-o` flag to change that output location.\n    * Use the `--help` flag to get more information about the CLI commands.\n* Building programs with Cargo\n    * `cargo new --lib program-name`\n    * Ensure you add the following config to Cargo.toml under `[lib]`: `crate-type = [\"cdylib\", \"lib\"]`\n    * `cargo build-sbf --manifest-path=path/to/Cargo.toml`\n### Using the Redacted Code to Code Along\n* Simply clone this repo but use only the `redacted-code` branch\n    * `git clone git@github.com:solana-developers/workshop-dapps.git`\n    * `git checkout redacted-code`\n### Sharing Your Workspace on Solana Playground IDE\n* Click the little arrow symbol underneath your project's name/path. If you hover over it, it should say \"Share\" (Not \"Export\").\n    * This will generate a unique URL that will allow anyone to route to your specific SolPG workspace.\n    * Share this link with the instructor!\n### Sharing Your Workspace from Your Local Setup\n* Currently the best way to do this is by using GitHub.\n    * You can push your most recent changes up to GitHub\n    * Share the link with the instructor\n    * Instructor can import the project into his/her SolPG instance\n\n## Resources for Learning Solana Development\n\n### Web-based IDE\n* [Solana Playground IDE](https://beta.solpg.io/)\n### Wallets\n* [Phantom Wallet](https://phantom.app/download)\n* [Solflare Wallet](https://solflare.com/)\n### Local Toolkit Installation\n* [NodeJS](https://nodejs.org/en/download/)\n* [Rust](https://rustup.rs/)\n* [Solana CLI](https://docs.solana.com/cli/install-solana-cli-tools)\n* [Anchor](https://www.anchor-lang.com/)\n* [Seahorse](https://seahorse-lang.org/)\n### dApp \u0026 Program Development\n* [Spawn a Template Project Repo automatically!](https://www.npmjs.com/package/create-solana-dapp)\n* [Solana Cookbook](https://solanacookbook.com)\n* [Program Examples](https://github.com/solana-developers/program-examples)\n* [Client Examples](https://github.com/solana-developers/web3-examples)\n* [Solana Bytes YouTube Tutorials](https://www.youtube.com/playlist?list=PLilwLeBwGuK51Ji870apdb88dnBr1Xqhm)\n* [Rust Solana YouTube Tutorials](https://www.youtube.com/playlist?list=PLUBKxx7QjtVnU3hkPc8GF1Jh4DE7cf4n1)\n* [Full Solana Course](https://github.com/Unboxed-Software/solana-course)\n* [Solana Core Docs](https://docs.solana.com/)\n### Additional Tools\n* [Solana Wallet Adapter](https://github.com/solana-labs/wallet-adapter)\n* [Solana Pay](https://github.com/solana-labs/solana-pay)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolana-developers%2Fworkshop-dapps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsolana-developers%2Fworkshop-dapps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolana-developers%2Fworkshop-dapps/lists"}