{"id":21870029,"url":"https://github.com/solana-developers/anchor-starter","last_synced_at":"2025-07-21T17:32:43.893Z","repository":{"id":191509909,"uuid":"684801521","full_name":"solana-developers/anchor-starter","owner":"solana-developers","description":null,"archived":false,"fork":false,"pushed_at":"2024-06-05T01:23:00.000Z","size":471,"stargazers_count":18,"open_issues_count":1,"forks_count":8,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-06-08T10:06:31.321Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","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":"2023-08-29T22:12:34.000Z","updated_at":"2025-05-09T13:14:16.000Z","dependencies_parsed_at":null,"dependency_job_id":"c5d9d010-ce7d-4662-b11a-b19bfbcf139c","html_url":"https://github.com/solana-developers/anchor-starter","commit_stats":null,"previous_names":["zyjliu/anchor-starter","solana-developers/anchor-starter"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/solana-developers/anchor-starter","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fanchor-starter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fanchor-starter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fanchor-starter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fanchor-starter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/solana-developers","download_url":"https://codeload.github.com/solana-developers/anchor-starter/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/solana-developers%2Fanchor-starter/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266342809,"owners_count":23914262,"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","status":"online","status_checked_at":"2025-07-21T11:47:31.412Z","response_time":64,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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-11-28T06:09:59.818Z","updated_at":"2025-07-21T17:32:43.679Z","avatar_url":"https://github.com/solana-developers.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Anchor Counter Program\n\nThis repo is intended to provide an example of:\n\n- How to use Program Derived Addresses (PDA) and Cross Program Invocations(CPIs) in an Anchor program\n- How to set up a frontend with the program's IDL to invoke instructions on the program.\n\nThe examples are built using Anchor version 0.30.0.\n\n## Anchor Program\n\nIncluded are 3 versions of a Counter program, each building on the last. The Counter program will only include two instructions:\n\n- `initialize`: Instruction to create a Counter Account\n- `increment`: Instruction to increment value stored on the Counter Account\n\n### [01.counter](01-counter/programs/counter/src/lib.rs)\n\nThis initial version includes a basic Counter program that creates a Counter Account and increments the value.\n\n### [02.pda-counter](02-pda-counter/programs/counter/src/lib.rs)\n\nThis version updates the Counter program to use Program Derived Addresses (PDAs) as the Counter Account's address.\n\nThe purpose of this program is simply to demonstrate how to create an account using a PDA as the address.\n\n### [03.counter-pda-token](03-pda-counter-token/programs/counter/src/lib.rs)\n\nThis final version updates the Counter program to:\n\n- Create a new token mint with metadata when the Counter Account is initialized\n- Mints tokens when the count is incremented\n\nThe purpose of this program is to demonstrate how to make CPIs and how to use PDAs for signing.\n\nAdditionally, it demonstrates how to invoke the Token Extensions program and initialize the Metadata Extension to store token metadata directly on the Mint account.\n\n## Frontend\n\nAlso included is a frontend for interacting with the final counter program.\n\n### [04.frontend](04-frontend/)\n\nThe frontend includes an example of how to invoke the `increment` instruction on the Counter program using either:\n\n- The Solana wallet-adapter with connected to a browser Solana wallet\n- Scanning a Solana Pay QR Code with a mobile Solana wallet.\n\nThe purpose of this is to demonstrate how to use the program IDL to invoke instructions on the program from a frontend.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolana-developers%2Fanchor-starter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsolana-developers%2Fanchor-starter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsolana-developers%2Fanchor-starter/lists"}