{"id":18417422,"url":"https://github.com/stellar/stellar-demo-wallet","last_synced_at":"2025-04-07T12:32:32.824Z","repository":{"id":38297339,"uuid":"225962818","full_name":"stellar/stellar-demo-wallet","owner":"stellar","description":"Provides a front-end interface to test SEP interoperability. Website at https://demo-wallet.stellar.org/ ","archived":false,"fork":false,"pushed_at":"2024-05-28T17:19:12.000Z","size":4620,"stargazers_count":51,"open_issues_count":19,"forks_count":41,"subscribers_count":36,"default_branch":"master","last_synced_at":"2024-05-29T08:24:45.186Z","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":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/stellar.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-12-04T21:45:52.000Z","updated_at":"2024-06-27T18:47:08.882Z","dependencies_parsed_at":"2022-08-09T02:31:46.542Z","dependency_job_id":"9d9e78d5-ad0d-431a-8caa-ed9835f9e0f3","html_url":"https://github.com/stellar/stellar-demo-wallet","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stellar%2Fstellar-demo-wallet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stellar%2Fstellar-demo-wallet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stellar%2Fstellar-demo-wallet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/stellar%2Fstellar-demo-wallet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/stellar","download_url":"https://codeload.github.com/stellar/stellar-demo-wallet/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247653247,"owners_count":20973788,"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-11-06T04:09:24.536Z","updated_at":"2025-04-07T12:32:27.811Z","avatar_url":"https://github.com/stellar.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Stellar Demo Wallet\n\nThe Stellar Demo Wallet is our newly rebuilt application for interactively\ntesting anchor services.\n\nIf you would like to automate testing of your anchor service, check out the\nSDF's [anchor tests suite](https://github.com/stellar/stellar-anchor-tests)\nviewable at\n[https://anchor-tests.stellar.org/](https://anchor-tests.stellar.org/).\n\nThis repository was originally created for the\n[Build a Stellar Wallet](https://developers.stellar.org/docs/building-apps/)\ntutorial series. (That project has since moved over\n[here](https://github.com/stellar/docs-wallet)).\n\nIf you want to use parts or all of the project to kickstart your own wallet,\nfeel free to clone or copy any pieces that may be helpful.\n\n## Mainnet vs. Testnet\n\nThis application defaults to using Stellar's testnet.\n\nThis application can be used on Stellar's mainnet by setting\n**HORIZON_PASSPHRASE** \u0026 **HORIZON_URL** on `window._env_` object (this project\nuses _packages/demo-wallet-client/public/settings/env-config.js_ file).\n\n```typescript\nwindow._env_ = {\n  HORIZON_PASSPHRASE: \"Public Global Stellar Network ; September 2015\",\n  HORIZON_URL: \"https://horizon.stellar.org\",\n};\n```\n\n**All accounts on mainnet that are used with this application should be\nconsidered compromised.** If you want to test services on mainnet with this\ntool, make sure to create a new account and fund it with the minimum assets\nrequired.\n\nNote, that dy default base fee is 100 stroops. That may not be enough for\nmainnet application, and base fee can be changed via `REACT_APP_BASE_FEE`\nenvironment variable\n\n## Getting A Test Account Up and Running\n\nYou can use the demo wallet to interact with the following anchor services:\n\n- Regulated Assets API ([SEP-8])\n- Hosted Deposit and Withdrawals ([SEP-24])\n- Deposit \u0026 Withdrawal API ([SEP-6])\n- Cross-Border Payments API ([SEP-31])\n\nYou can connect to any domain that has a Stellar Info File (also known as\n[SEP-1], or a stellar.toml file).\n\nThe instructions below are for demo-ing standard integrations supported by\nStellar test server, testanchor.stellar.org, or by the [SEP-8] reference server,\nsep8-server.dev.stellar.org. For these integrations, the logs to the right of\nthe screen will show every network call.\n\n### Demo-ing a Regulated Asset Payment ([SEP-8])\n\n1. Click \"Generate keypair\", and then click \"Create account\" - this will create\n   a balance of 10,000 XLM.\n2. Click “Add asset” and add `MYASSET` with the anchor home domain\n   `sep8-server.dev.stellar.org`.\n3. Click “Add trustline” - this will allow you to hold MYASSET.\n4. Click on the \"Copy\" link on the right of your public key and use that value\n   to get some unities of MYASSET using the link\n   `https://sep8-server.dev.stellar.org/friendbot?addr=\u003cpaste_your_address_here\u003e`.\n   Refresh the [demo-wallet page](https://demo-wallet.stellar.org/) to see funds\n   in your account.\n5. Select \"SEP-8 Send\" from the dropdown of MYASSET and click \"Start\" in the\n   modal.\n6. In the \"destination\" field, input an address that also has a trustline to\n   MYASSET.\n7. The modal will display the approval criteria used by the SEP-8 server.\n   Depending on the conditions described there your payment can be automatically\n   approved or you may be required to undergo an additional KYC step.\n8. After your payment gets revised and signed by the SEP-8 reference server\n   you'll need to review the updated transaction before the demo wallet submits\n   the payment.\n9. If the payment has been successfully sent you'll see \"SEP-8 send payment\n   completed 🎉\" in the logs.\n\n### Demo-ing a Deposit on Testnet with Hosted Deposit and Withdrawal ([SEP-24])\n\n1. Click \"Generate keypair\", and then click \"Create account\" - this will create\n   a balance of 10,000 XLM.\n2. Click “Add asset” and add `SRT` (this stands for Stellar Reference Token,\n   it’s our representation of XLM for the test server) with the anchor home\n   domain `testanchor.stellar.org`.\n3. Click “Add trustline” - this will allow you to hold SRT.\n4. Select “SEP-24 deposit” from the dropdown for your SRT asset and click\n   \"Start\" in the modal.\n5. If your browser doesn't already, make sure it allows pop-ups - this is how\n   the demo wallet requests KYC info.\n6. Enter your name and email in the pop-up - this information doesn't need to be\n   real, but the interface will want a valid email.\n7. Click “Skip confirmation” - skipping it won't be possible in live\n   integrations but helps the process move ahead in the demo.\n8. Select the asset you would like to provide to the anchor. Note that there is\n   no real asset you actually need to provide off-chain, it's just for\n   demonstration.\n9. Enter a number into the amount and click \"Submit\".\n10. If you opted to provide \"USD\" in the previous form, you'll be asked to\n    confirm the exchange rate from USD to SRT. Select \"Confirm Transaction\" to\n    continue.\n11. Leave the pop-up window open while you wait to see the deposit of SRT made\n    to your account - you can close when you see “Status” is complete and you\n    have SRT.\n\n### Demo-ing Cross-Border Payments ([SEP-31]) on Testnet\n\n_Note: specifically in the case of demo-ing SEP-31 in the Demo Wallet, notice\nthe public and secret keys don't represent the Sending Client but instead the\nSending Anchor's account. In SEP-31, the only Stellar transaction happening is\nbetween the Sending and the Receiving anchors._\n\n1. Follow the steps above in order to establish an amount of SRT to send.\n2. Select “SEP-31 Send” from the dropdown for your SRT asset and click \"Start\"\n   in the modal.\n3. Enter the requested information in the pop-up - none of the info has to be\n   real for this testanchor.stellar.org demo, this is only to show the fields\n   required. When testing another anchor you may need to adhere to their\n   validation requirements.\n4. If the payment has been successfully sent you'll see \"SEP-31 send payment\n   completed\" in the logs.\n\n### Hosting Anchor Services Locally\n\nYou can serve `stellar.toml` files from `localhost`. When using locally hosted\nstellar.toml files on demo-wallet.stellar.org, some browsers might block them\nfor security reasons if you’re not using `https`. If you’re running the demo\nwallet locally, this is not a problem.\n\n## Running the Demo Wallet Locally\n\nYou can run the demo wallet locally, either by installing the application on\nyour machine or by using Docker.\n\n### Local Installation\n\n```bash\nyarn install\n```\n\nAdd **CLIENT_DOMAIN** (where `stellar.toml` is hosted) and the wallet backend\n**WALLET_BACKEND_ENDPOINT** to the `window._env_` object in\n_packages/demo-wallet-client/public/settings/env-config.js_.\n\nNOTE: if using a locally running test anchor (in docker) use\n_docker.for.mac.host.internal_, this will allow the anchor that's running in a\ndocker container to access the host network where the client domain (server\nhosting the `stellar.toml`) is running. ex:\n\n```typescript\nwindow._env_ = {\n  CLIENT_DOMAIN: \"docker.for.mac.host.internal:7000\",\n  WALLET_BACKEND_ENDPOINT: \"http://demo-wallet-server.stellar.org\",\n};\n```\n\nBuild `shared` files that are consumed by both the client and server.\n\n```bash\nyarn build:shared\n```\n\nAnd run the client:\n\n```bash\nyarn start:client\n```\n\nTo build the client app for production, run:\n\n```bash\nyarn build:client\n```\n\nTo run the server locally:\n\n```bash\nyarn start:server\n```\n\nAnd build the server for production:\n\n```bash\nyarn build:server\n```\n\n### Docker\n\nIf you want to run the demo wallet on testnet, building the project is easy.\n\n```bash\ndocker compose build\n```\n\nThen, launch the containers.\n\n```bash\ndocker compose up\n```\n\nNote that the docker compose file defaults to using SDF's demo wallet server,\nbut you are free to edit the compose file to use a local instance of the server.\n\n---\n\n## Release Notes\n\n### v1.2\n\n- SEP-06 now supported\n- SEP-08 now supported\n- Fixed a [bug](https://github.com/stellar/stellar-demo-wallet/issues/188) when\n  overriding home domain\n- Fixed an [issue](https://github.com/stellar/stellar-demo-wallet/issues/196)\n  where balance amounts were being overwritten\n- Sending to Muxed Accounts is now supported\n\n### [v1.1](https://github.com/stellar/stellar-demo-wallet/releases/tag/v1.1.0)\n\n- Fix for local CORS issue\n- Updated Sentry to log exceptions\n\n### v1.0\n\n- Revamped UI\n- All SEPs are integrated into one tool\n  - SEP-24 and SEP-31 are now found in the Asset action drop-down menus\n- Ablity to download logs\n- Claimable Balances supported\n\n### Helpful links\n\n- [https://www.stellar.org/developers](https://www.stellar.org/developers)\n- [https://stellar.github.io/js-stellar-sdk/](https://stellar.github.io/js-stellar-sdk/)\n- [https://github.com/stellar/js-stellar-sdk](https://github.com/stellar/js-stellar-sdk)\n\n[sep-1]:\n  https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0001.md\n[sep-8]:\n  https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0008.md\n[sep-24]:\n  https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0024.md\n[sep-31]:\n  https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0031.md\n[sep-6]:\n  https://github.com/stellar/stellar-protocol/blob/master/ecosystem/sep-0006.md\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstellar%2Fstellar-demo-wallet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstellar%2Fstellar-demo-wallet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstellar%2Fstellar-demo-wallet/lists"}