{"id":17963898,"url":"https://github.com/pablolion/algo-builder-example","last_synced_at":"2025-04-03T19:27:41.712Z","repository":{"id":128556253,"uuid":"546276278","full_name":"PabloLION/algo-builder-example","owner":"PabloLION","description":null,"archived":false,"fork":false,"pushed_at":"2022-10-06T20:45:19.000Z","size":68,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-09T07:36:04.089Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/PabloLION.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":"2022-10-05T20:37:31.000Z","updated_at":"2022-10-05T20:37:37.000Z","dependencies_parsed_at":"2023-05-17T18:22:10.171Z","dependency_job_id":null,"html_url":"https://github.com/PabloLION/algo-builder-example","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/PabloLION%2Falgo-builder-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PabloLION%2Falgo-builder-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PabloLION%2Falgo-builder-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/PabloLION%2Falgo-builder-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/PabloLION","download_url":"https://codeload.github.com/PabloLION/algo-builder-example/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247064391,"owners_count":20877591,"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-10-29T11:45:48.481Z","updated_at":"2025-04-03T19:27:41.678Z","avatar_url":"https://github.com/PabloLION.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"This is a boilerplate `algob` project with ASA deployment and funding a smart contract (in TEAL \u0026 PyTEAL)\n\nTo run the `sample-project`:\n\n- First you need to set the configuration in `algob.config.js` file:\n\n  - Specify accounts you want to use, there are multiple ways to do it. You can see [here](/docs/algob-config.md)\n  - If you are using Testnet, use https://bank.testnet.algorand.network/ to fund address.\n  - If you are using Private Network, use `goal clerk send`\n    (https://developer.algorand.org/docs/reference/cli/goal/clerk/send/) to fund address.\n\n  - After this specify your `network configurations`.\n\n- Install `Algo Builder`\n\n  - `yarn add @algo-builder/algob` or\n  - `yarn link @algo-builder/algob` (with local installation, this is recommended if you want to use `algob` with latest, not released version). Read more about it [here](https://github.com/scale-it/algo-builder#installation).\n\n- Deploy ASA and Smart Contracts:\n\n  - `algob deploy`\n\n- Scripts ran with deploy command will store checkpoints in artifacts directory. If a script already has a checkpoint it won’t be run again unless `--force | -f` flag is provided to deploy command.\n\n  - `algob deploy -f`\n\n- To interact with your deployments you can create a script and run it using:\n\n* `algob run scripts/path_to/file1`\n* Don’t use algob run for deployments. This should be used only for auxiliary scripts, like ad-hock transactions (example: draining an account).\n\n- Run tests:\n\n  - `algob test` (runs mocha in project root)\n\nIn the `sample-project` folder you'll have following items:\n\n- `assets/`: Directory for assets and contracts files:\n\n  - `accounts_user.yaml` : It has sample accounts\n  - `asa.yaml` : It has sample specifications for Algorand Standard Assets (ASA)\n  - `fee-check.teal` : It's a smart contract file. It checks the provided fee is at least 10,000 microalgos\n  - `escrow.py`: Smart contract (in PyTEAL), only approves transfer to a specific address (hardcoded in the contract).\n  - You can change or add ASA, Smart Contracts in this folder.\n\n- `scripts/`: Directory for scripts to deploy and run your assets and contracts:\n\n  - `0-sampleScript.ts` : This script shows how to deploy ASA.\n  - `1-sampleScript.ts` : This script shows how to deploy ASC.\n  - `2-escrow-account.ts`: This script funds an escrow contract with a hardcoded template parameter (passed in script)\n\n- `test/`: Directory for test files for testing your assets and smart contracts:\n\n  - `sample-test.ts` : This is a basic example of how tests should be and how they work.\n  - You can add tests for your scripts here.\n\n- `algob.config.js`: Algob configuration file\n\nBefore writing smart contracts in PyTEAL:\n\n- Please follow standard instuctions about [PyTEAL Setup](https://github.com/scale-it/algo-builder/blob/master/README.md#pyteal)\n- For passing template parameters dynamically in PyTEAL contract you will need to add [`algobpy`](https://github.com/scale-it/algo-builder/tree/master/examples/algobpy) in your project directory.\n  - Read more about usage of `algobpy` and passing template parameters in /scripts [here](https://github.com/scale-it/algo-builder/blob/master/docs/guide/py-teal.md#external-parameters-support)\n- PyTEAL supports `Tmpl` fuction which can replace value with a constant and `algob` supports these replacements. To read more about TMPL Placeholder Support click [here](https://github.com/scale-it/algo-builder/blob/master/docs/guide/py-teal.md#tmpl-placeholder-support)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpablolion%2Falgo-builder-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpablolion%2Falgo-builder-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpablolion%2Falgo-builder-example/lists"}