{"id":22899019,"url":"https://github.com/adlonymous/solvenmo-anchor","last_synced_at":"2025-07-27T06:06:31.482Z","repository":{"id":260349908,"uuid":"880653889","full_name":"adlonymous/solvenmo-anchor","owner":"adlonymous","description":null,"archived":false,"fork":false,"pushed_at":"2024-10-30T20:25:29.000Z","size":8722,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-07T02:48:27.682Z","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/adlonymous.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-10-30T05:19:50.000Z","updated_at":"2024-10-30T20:25:33.000Z","dependencies_parsed_at":"2024-10-30T21:36:19.232Z","dependency_job_id":null,"html_url":"https://github.com/adlonymous/solvenmo-anchor","commit_stats":null,"previous_names":["adlonymous/solvenmo-anchor"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adlonymous%2Fsolvenmo-anchor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adlonymous%2Fsolvenmo-anchor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adlonymous%2Fsolvenmo-anchor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adlonymous%2Fsolvenmo-anchor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adlonymous","download_url":"https://codeload.github.com/adlonymous/solvenmo-anchor/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246569009,"owners_count":20798341,"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-12-14T00:35:40.881Z","updated_at":"2025-04-01T01:54:09.321Z","avatar_url":"https://github.com/adlonymous.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Solvenmo\n\nCash App clone built on Solana using Anchor, Rust, and React Native w/ Expo.\n\n## Built using Solana Mobile Expo Template\n\nThis template is a ready-to-go Android Expo dApp that offers:\n\n- Solana libraries: `web3.js`, Mobile Wallet Adapter, and `spl-token`.\n- Required polyfills like `crypto` and `Buffer` configured.\n- Pre-built React UI and re-usable hooks and code patterns like `useMobileWallet`.\n\n**This is only fully functional on Android.**\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"./screenshots/screenshot1.png\" alt=\"Scaffold dApp Screenshot 1\" width=300 /\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"./screenshots/screenshot2.png\" alt=\"Scaffold dApp Screenshot 2\" width=300 /\u003e\n    \u003c/td\u003e\n    \u003ctd align=\"center\"\u003e\n      \u003cimg src=\"./screenshots/screenshot3.png\" alt=\"Scaffold dApp Screenshot 3\" width=300 /\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n### Tech Stack\n\n| Library               | Category          | Version | Description                                           |\n| --------------------- | ----------------- | ------- | ----------------------------------------------------- |\n| React Native          | Mobile Framework  | v0.73   | The best cross-platform mobile framework              |\n| Expo                  | SDK               | v50     | Allows (optional) Expo modules                        |\n| React                 | UI Framework      | v18     | The most popular UI framework in the world            |\n| Mobile Wallet Adapter | SDK               | v2.0    | Connect and request signing from mobile wallet apps   |\n| Solana web3.js        | SDK               | v1.78   | General Solana library for transactions and RPCs      |\n| spl-token             | SDK               | v0.41   | Library for building with Solana SPL tokens           |\n| React Native Paper    | Component Library | v18     | Production-ready components following Material Design |\n| React Navigation      | Navigation        | v6      | Performant and consistent navigation framework        |\n| React Query           | State management  | v5.24   | Async query management                                |\n| TypeScript            | Language          | v5      | Static typechecking                                   |\n| AsyncStorage          | Persistence       | v1      | State persistence                                     |\n\n### Quick Start\n\n### Prerequisites\n\n- A free [Expo](https://expo.dev/) account.\n- An Android device/emulator to test your app\n  - Install an MWA compliant wallet app on your device/emulator.\n- If using Expo's cloud service `eas build`, no further setup is required.\n- If building locally:\n  - React Native and Android Envrionment [setup](https://docs.solanamobile.com/getting-started/development-setup)\n\n### Initialize\n\nRun the CLI command:\n\n```\nyarn create expo-app --template @solana-mobile/solana-mobile-expo-template\n```\n\nChoose your project name then navigate into the directory.\n\n### Build and run the app\n\nOnce your app is initialized, follow the **[\"Running the app\"](https://docs.solanamobile.com/react-native/expo#running-the-app)** guide to launch the template as a custom development build.\n\n## Troubleshooting\n\n- `Metro has encountered an error: While trying to resolve module @solana-mobile/mobile-wallet-adapter-protocol...`\n\n  - This is an on-going issue when using `npm install` to install the Expo template.\n  - To mitigate, clean your project dependencies and reinstall with `yarn install`\n\n- `The package 'solana-mobile-wallet-adapter-protocol' doesn't seem to be linked. Make sure: ...`\n\n  - Ensure you are _NOT_ using Expo Go to run your app.\n  - You need to be using an [Expo custom development build](https://docs.solanamobile.com/react-native/expo#custom-development-build), rather than Expo Go.\n\n- `failed to connect to...`\n\n  - This is an Expo error that can occur when trying to connect to the dev server on certain Wifi networks.\n  - To fix, try starting the dev server with the `--tunnel` command (`npx expo start --dev-client --tunnel`)\n\n- `Error: crypto.getRandomValues() not supported`\n  - This is a polyfill issue when trying to use certain functions from the `@solana/web3.js` in a React Native/Expo environment.\n  - To fix, ensure your App properly imports and uses the polyfills like in this [guide](http://docs.solanamobile.com/react-native/expo#step-3-update-appjs-with-polyfills).\n\n\u003cbr\u003e\n\n- `error Failed to load configuration of your project.`\n  - Same as above, but for `yarn`. [Uninstall and reinstall](https://github.com/react-native-community/cli#updating-the-cli) the CLI through yarn.\n\n\u003cbr\u003e\n\n- `Looks like your iOS environment is not properly set`:\n  - You can ignore this during template initialization and build the Android app as normal. This template is only compatible with Android.\n\n\u003cbr\u003e\n\n- `Usage Error: It seems you are trying to add a package using a https:... url; we now require package names to be explicitly specified.`\n  - This error happens on certain versions of `yarn`, and occurs if you try to initialize the template through the Github repo URL, rather than the npm package. To avoid this, use the `@solana-mobile/solana-mobile-dapp-scaffold` package as specified, or downgrade your `yarn` version to classic (1.22.x).\n\n\u003cbr\u003e\n\n- `error Couldn't find the \".../@solana-mobile/solana-mobile-dapp-scaffold/template.config.js file inside \"@solana-mobile/solana-mobile-dapp-scaffold\" template.`\n  - This is a [known error](https://github.com/react-native-community/cli/issues/1924) that occurs with certain versions of `yarn` (\u003e= 3.5.0). It is fixed by running the cli command with the `--npm` flag or downgrading your version of `yarn`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadlonymous%2Fsolvenmo-anchor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadlonymous%2Fsolvenmo-anchor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadlonymous%2Fsolvenmo-anchor/lists"}