{"id":13559032,"url":"https://github.com/satoshipay/solar","last_synced_at":"2025-04-03T14:31:12.299Z","repository":{"id":37693178,"uuid":"137336510","full_name":"satoshipay/solar","owner":"satoshipay","description":"🌞 Stellar wallet. Secure and user-friendly.","archived":false,"fork":false,"pushed_at":"2023-03-04T03:34:39.000Z","size":39890,"stargazers_count":192,"open_issues_count":122,"forks_count":59,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-11-04T10:43:45.169Z","etag":null,"topics":["cryptocurrency","cryptography","distributed-ledger","react","stellar","stellar-lumens","stellar-network","typescript","wallet"],"latest_commit_sha":null,"homepage":"https://solarwallet.io","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/satoshipay.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null}},"created_at":"2018-06-14T09:26:40.000Z","updated_at":"2024-10-12T06:48:52.000Z","dependencies_parsed_at":"2023-01-30T08:46:00.353Z","dependency_job_id":"c80242df-740b-4521-b428-f0a706c85273","html_url":"https://github.com/satoshipay/solar","commit_stats":null,"previous_names":[],"tags_count":47,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satoshipay%2Fsolar","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satoshipay%2Fsolar/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satoshipay%2Fsolar/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/satoshipay%2Fsolar/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/satoshipay","download_url":"https://codeload.github.com/satoshipay/solar/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247018351,"owners_count":20869998,"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":["cryptocurrency","cryptography","distributed-ledger","react","stellar","stellar-lumens","stellar-network","typescript","wallet"],"created_at":"2024-08-01T12:05:18.297Z","updated_at":"2025-04-03T14:31:08.975Z","avatar_url":"https://github.com/satoshipay.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","cryptocurrency"],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eSolar Wallet\u003c/h1\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/satoshipay/solar/releases/latest\"\u003e\n    \u003cimg alt=\"Latest stable release\" src=\"https://badgen.net/github/release/satoshipay/solar/stable\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/satoshipay/solar/releases/latest\"\u003e\n    \u003cimg alt=\"MacOS\" src=\"https://badgen.net/badge/icon/MacOS?icon=apple\u0026label\u0026color=cyan\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/satoshipay/solar/releases/latest\"\u003e\n    \u003cimg alt=\"Windows\" src=\"https://badgen.net/badge/icon/Windows?icon=windows\u0026label\u0026color=cyan\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/satoshipay/solar/releases/latest\"\u003e\n    \u003cimg alt=\"Android\" src=\"https://badgen.net/badge/icon/Android?icon=googleplay\u0026label\u0026color=cyan\" /\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/satoshipay/solar/releases/latest\"\u003e\n    \u003cimg alt=\"iOS\" src=\"https://badgen.net/badge/icon/iOS?icon=apple\u0026label\u0026color=cyan\" /\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cbr /\u003e\n\nUser-friendly Stellar wallet, featuring multi-signature, custom assets management and more.\n\nRuns on Mac OS, Windows, Linux, Android and iOS.\n\n## Download\n\nSee \u003chttps://github.com/satoshipay/solar/releases\u003e. You will find the binaries there.\n\n## Key security\n\nKeys are encrypted with a key derived from the user's password before storing them on the local filesystem. That means that the user's secret key is safe as long as their password is strong enough. However, if they forget their password there will be no way of recovering the secret key. That's why you should always make a backup of your secret key.\n\nThe encryption key is derived from the password using `PBKDF2` with `SHA256`. The actual encryption is performed using `xsalsa20-poly1305`.\n\n## Development\n\n### Desktop\n\nInstall the dependencies first:\n\n```\nnpm install\n```\n\nTo run the app in development mode:\n\n```\nnpm run dev\n\n# On Mac OS:\nPLATFORM=darwin npm run dev\n```\n\nTo run the tests:\n\n```\nnpm test\n```\n\nTo run the storybook:\n\n```\nnpm run storybook\n```\n\n### Run dev server without electron\n\n```\ncd web/\nnpm run dev\n```\n\n### Android/iOS\n\nSee [Cordova build readme](./cordova/README.md).\n\n### Production build\n\n#### Desktop\n\n```\nnpm run build:mac\nnpm run build:win\nnpm run build:linux\n```\n\n#### Building windows binaries on macOS\n\nStarting with macOS Catalina 32-bit executables are not supported. This means that the windows binaries cannot be build natively. One can circumvent this issue by using docker for building the windows binaries. Details are documented [here](https://www.electron.build/multi-platform-build#build-electron-app-using-docker-on-a-local-machine). Since Solar is using Squirrel.Windows the `electronuserland/builder:wine-mono` image should be used.\n\nTo run the docker container use:\n\n```\ndocker run --rm -ti \\\n --env-file \u003c(env | grep -iE 'DEBUG|NODE_|ELECTRON_|YARN_|NPM_|CI|CIRCLE|TRAVIS_TAG|TRAVIS|TRAVIS_REPO_|TRAVIS_BUILD_|TRAVIS_BRANCH|TRAVIS_PULL_REQUEST_|APPVEYOR_|CSC_|GH_|GITHUB_|BT_|AWS_|STRIP|BUILD_') \\\n --env ELECTRON_CACHE=\"/root/.cache/electron\" \\\n --env ELECTRON_BUILDER_CACHE=\"/root/.cache/electron-builder\" \\\n -v ${PWD}:/project \\\n -v ${PWD##*/}-node-modules:/project/node_modules \\\n -v ~/.cache/electron:/root/.cache/electron \\\n -v ~/.cache/electron-builder:/root/.cache/electron-builder \\\n -v /Volumes/Certificates/solar:/root/Certs \\\n electronuserland/builder:wine-mono bash -c 'npm config set script-shell bash \u0026\u0026 npm install \u0026\u0026 npm run build:win:signed'\n ```\n \n **Note:** We have seen weird module resolution troubles with Parcel. In this case make sure to `rm -rf node_modules/` **on the host**, then try again.\n\n### Signed binaries\n\nTo sign the binaries, make sure you have the code signing certificates on your local filesystem as a `.p12` file and have the password for them. Make sure not to save the certificates in the Solar directory in order to not accidentally bundling them into the app installer!\n\nYou can create a `signing-mac.env` and a `signing-win.env` file, pointing `electron-builder` to the right certificate to use for each target platform:\n\n```\nCSC_LINK=~/secret-certificates/SatoshiPayLtd.p12   # point to your local certificate file\n```\n\nNow run `npm run build:*:signed` to create a signed application build. You will be prompted for the certificate's password.\n\nTo check the Mac DMG signature, run `codesign -dv --verbose=4 ./electron/dist/\u003cfile\u003e`. To verify the Windows installer signature, you can upload the file to `virustotal.com`.\n\nNewer versions of Mac OS require apps to be notarized. The `build:mac:signed` script will notarize the app. For this to succeed, you also need to add your Apple ID to your `signing-mac.env` file:\n\n```\nAPPLE_ID=me@crypto.rocks\n```\n\nNote: Application signing has only been tested on a Mac OS development machine so far.\n\n#### Android/iOS\n\nSee [Cordova build readme](./cordova/README.md).\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsatoshipay%2Fsolar","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsatoshipay%2Fsolar","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsatoshipay%2Fsolar/lists"}