{"id":21870087,"url":"https://github.com/solana-developers/workshop-solana-basics","last_synced_at":"2025-04-14T23:42:35.403Z","repository":{"id":218767198,"uuid":"747306073","full_name":"solana-developers/workshop-solana-basics","owner":"solana-developers","description":"Source code and workshop to get educated on the Solana basics, including the basics of interacting with the blockchain using JavaScript/TypeScript using web3.js (v1)","archived":false,"fork":false,"pushed_at":"2025-03-20T15:02:07.000Z","size":125,"stargazers_count":18,"open_issues_count":0,"forks_count":4,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-14T23:42:30.351Z","etag":null,"topics":["blockchain","solana","web3js","workshop"],"latest_commit_sha":null,"homepage":"https://docs.google.com/presentation/d/1bQ8abAX3Y07ijY1zmkl5gocb_9ZE3_gsGyOx51-u33A/edit#slide=id.g1fd997e3698_0_472","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"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":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-01-23T17:10:27.000Z","updated_at":"2025-04-05T10:21:35.000Z","dependencies_parsed_at":null,"dependency_job_id":"d7cc164c-62dc-4cfa-b5e1-4ec636caffaf","html_url":"https://github.com/solana-developers/workshop-solana-basics","commit_stats":null,"previous_names":["solana-workshops/solana-basics-crash-course","solana-developers/workshop-solana-basics"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fworkshop-solana-basics","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fworkshop-solana-basics/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fworkshop-solana-basics/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fworkshop-solana-basics/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/solana-developers","download_url":"https://codeload.github.com/solana-developers/workshop-solana-basics/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248981259,"owners_count":21193143,"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":["blockchain","solana","web3js","workshop"],"created_at":"2024-11-28T06:10:03.891Z","updated_at":"2025-04-14T23:42:35.373Z","avatar_url":"https://github.com/solana-developers.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Solana Workshop: Solana Basics\n\n## Quick links to learn more\n\n- https://solana.com/developers\n- https://solana.com/developers/guides\n- Slides from the workshop:\n  [Google Slides](https://docs.google.com/presentation/d/1BpObg9lOMllUxdcHJQ5EpJGVGGiNmwcS1QUysbs91y0/edit?usp=sharing)\n\n## Tech stack used\n\n- uses TypeScript and NodeJS\n- `npm` (as the package manager)\n\n## Setup locally\n\n1. Clone this repo to your local system\n2. Install the packages via `npm install`\n\n## Recommended flow to explore this repo\n\nAfter getting setup locally, we recommend exploring the code of the following files (in order):\n\n- [`0.basics.ts`](./scripts/0.basics.ts)\n- [`1.simpleTransaction.ts`](./scripts/1.simpleTransaction.ts)\n- [`2.complexTransaction.ts`](./scripts/2.complexTransaction.ts)\n\n### Running the included Scripts\n\nOnce setup locally, you will be able to run the scripts included within this repo:\n\n```shell\nnpx esrun ./scripts/\u003cscript\u003e\n```\n\n#### `0.basics.ts`\n\nA brief introduction to the Solana web3.js package. Demonstrating and explaining the commonly used\nportions of web3.js, including:\n\n- connections\n- keypairs\n- getting an account's SOL balance\n- reading data from the blockchain\n- account storage `space` and `rent`\n- recent blockhash\n\n#### `1.simpleTransaction.ts`\n\nDemonstrating how to build and send simple transactions to the blockchain using web3js. Including:\n\n- connecting to the blockchain\n- generating a new keypair\n- constructing a simple instruction\n- building and signing a transaction\n- sending and confirming that transaction\n\n#### `2.complexTransaction.ts`\n\nAn introduction to more complex transactions using Solana web3.js. Demonstrates how to build a more\ncomplex transaction, with multiple instructions.\n\n## Resources\n\nCheckout this\n[comprehensive guide to setting up your local environment](https://solana.com/developers/guides/getstarted/setup-local-development).\nThe following resources my also be helpful:\n\n- Installing NodeJS:\n  - https://www.linode.com/docs/guides/how-to-install-use-node-version-manager-nvm/\n  - https://www.freecodecamp.org/news/node-version-manager-nvm-install-guide/\n  - https://collabnix.com/how-to-install-and-configure-nvm-on-mac-os/\n  - https://adamtheautomator.com/install-nvm-on-windows/\n  - https://classic.yarnpkg.com/lang/en/docs/install/#mac-stable\n- Installing Rust:\n  - https://www.rust-lang.org/tools/install\n  - https://solanacookbook.com/getting-started/installation.html\n  - https://learn.microsoft.com/en-us/windows/dev-environment/rust/setup\n- Installing the Solana CLI:\n  - https://solanacookbook.com/getting-started/installation.html\n  - https://docs.solana.com/cli/install-solana-cli-tools\n  - https://mammothinteractive.com/how-to-install-solana-on-windows/\n- Generating Keypairs:\n  - https://docs.metaplex.com/guides/cli-wallet\n  - https://solanacookbook.com/references/keypairs-and-wallets.html#how-to-generate-a-new-keypair\n  - https://docs.solana.com/cli/conventions#keypair-conventions\n  - https://stackoverflow.com/questions/69109345/how-to-use-keys-from-solana-keygen-to-use-a-web-wallet\n- General Solana Resources:\n  - Docs \u0026 How-To's:\n    - https://solana.com/docs/\n    - https://solana.com/developers/guides/\n    - https://solanacookbook.com/\n    - https://solana.stackexchange.com/\n  - Blockchain Explorer Tools:\n    - https://explorer.solana.com/\n    - https://solana.fm/\n  - Popular Libraries:\n    - Rust:\n      - https://docs.rs/solana-program/1.15.2/solana_program/\n      - https://docs.rs/spl-token/3.5.0/spl_token/\n      - https://docs.rs/spl-associated-token-account/1.1.3/spl_associated_token_account/\n      - https://docs.rs/mpl-token-metadata/1.11.0/mpl_token_metadata/\n      - https://docs.rs/anchor-lang/0.27.0/anchor_lang/\n      - https://docs.rs/anchor-spl/0.27.0/anchor_spl/\n    - JavaScript:\n      - https://www.npmjs.com/package/@solana/web3.js\n      - https://www.npmjs.com/package/@solana/spl-token\n      - https://www.npmjs.com/package/@metaplex-foundation/mpl-token-metadata\n      - https://www.npmjs.com/package/@metaplex-foundation/js\n      - https://www.npmjs.com/package/@coral-xyz/anchor\n    - Python:\n      - https://seahorse-lang.org/\n      - https://michaelhly.github.io/solana-py/\n      - https://github.com/kevinheavey/anchorpy\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolana-developers%2Fworkshop-solana-basics","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsolana-developers%2Fworkshop-solana-basics","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolana-developers%2Fworkshop-solana-basics/lists"}