{"id":13463155,"url":"https://github.com/buttercup/buttercup-mobile","last_synced_at":"2025-04-09T05:10:23.327Z","repository":{"id":20341146,"uuid":"81740196","full_name":"buttercup/buttercup-mobile","owner":"buttercup","description":":iphone: React-Native mobile application for Buttercup","archived":false,"fork":false,"pushed_at":"2024-09-11T06:38:25.000Z","size":58559,"stargazers_count":399,"open_issues_count":81,"forks_count":71,"subscribers_count":12,"default_branch":"master","last_synced_at":"2024-10-29T13:50:29.175Z","etag":null,"topics":["buttercup","hacktoberfest","mobile","mobile-app","password-manager","password-store","password-vault","react-native"],"latest_commit_sha":null,"homepage":"https://buttercup.pw","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/buttercup.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","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":"2017-02-12T16:35:33.000Z","updated_at":"2024-10-25T20:16:03.000Z","dependencies_parsed_at":"2023-12-18T02:02:39.527Z","dependency_job_id":"4cd70c3f-b0af-4427-9854-f3e257d1242b","html_url":"https://github.com/buttercup/buttercup-mobile","commit_stats":{"total_commits":915,"total_committers":24,"mean_commits":38.125,"dds":0.2404371584699454,"last_synced_commit":"ecc9dda8e6fdacd7a14ecaba21f63ac9d0fd4d26"},"previous_names":[],"tags_count":44,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buttercup%2Fbuttercup-mobile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buttercup%2Fbuttercup-mobile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buttercup%2Fbuttercup-mobile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/buttercup%2Fbuttercup-mobile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/buttercup","download_url":"https://codeload.github.com/buttercup/buttercup-mobile/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247615566,"owners_count":20967230,"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":["buttercup","hacktoberfest","mobile","mobile-app","password-manager","password-store","password-vault","react-native"],"created_at":"2024-07-31T13:00:47.044Z","updated_at":"2025-04-09T05:10:23.308Z","avatar_url":"https://github.com/buttercup.png","language":"TypeScript","funding_links":["https://opencollective.com/buttercup"],"categories":["Open Source Apps","Productivity","TypeScript"],"sub_categories":["Other Platforms","✏️📎"],"readme":"# Buttercup Mobile\n\u003e Mobile vault application for Buttercup Password Manager\n\n[![Buttercup](https://cdn.rawgit.com/buttercup-pw/buttercup-assets/6582a033/badge/buttercup-slim.svg)](https://buttercup.pw) ![Tests status](https://github.com/buttercup/buttercup-mobile/actions/workflows/test.yml/badge.svg) [![Backers on Open Collective](https://opencollective.com/buttercup/backers/badge.svg)](#backers) [![Sponsors on Open Collective](https://opencollective.com/buttercup/sponsors/badge.svg)](#sponsors) [![Chat securely on Keybase](https://img.shields.io/badge/keybase-bcup-blueviolet)](https://keybase.io/team/bcup)\n\n[![Get it from iTunes](https://buttercup.pw/static/img/appstore.svg)](https://itunes.apple.com/us/app/buttercup-password-manager/id1294001514) [![Get it on Google Play](https://buttercup.pw/static/img/googleplay.svg)](https://play.google.com/store/apps/details?id=com.buttercup\u0026hl=en\u0026utm_campaign=github\u0026pcampaignid=badge-2017-10-31)\n\n![Vault screen](https://github.com/buttercup/buttercup-mobile/raw/master/bcup-1.png) ![Entry screen](https://github.com/buttercup/buttercup-mobile/raw/master/bcup-2.png)\n\n---\n\n⚠️ **Project Closure** ⚠️\n\nThe Buttercup project has come to an end, and these repositories are in transition to becoming public archives. No public-facing resources will be removed, wherever possible. Please do not create issues or PRs - they will unfortunately be ignored. Discussion can be found [here](https://github.com/buttercup/buttercup-desktop/discussions/1395), and explanation [here](https://gist.github.com/perry-mitchell/43ebfcec4d874b77a704be1d4f2262e6).\n\n---\n\n## About\nThis repository holds the source for the Buttercup mobile application, which is available for the following platforms:\n\n * iOS **13+**\n * Android **13+**\n\n_Currently only phones are supported, not tablets._\n\nThe mobile application allows for full integration with Buttercup archives stored on a variety of platforms. Like the other applications, this mobile application makes use of **AES 256bit encryption** with over **200k PBKDF2 password derivation iterations**.\n\nThe Buttercup for Mobile application boasts the following features:\n\n * On-device encryption and decryption\n * Auto-hide screen when app is sent to background (like banking apps)\n * Auto-lock vaults after a certain period of inactivity\n * Add/Edit/Delete entries\n * Unlock vaults even when offline (read-only)\n * Autofilling of login forms in Safari (iOS only)\n * Password generator\n * Biometric access\n\nYou can read about the changes and releases of the application in the [changelog](CHANGELOG.md).\n\n### Introduction\nThis project uses **React Native** to build _native_ iOS and Android applications from a React/JavaScript codebase. The majority of the codebase is JavaScript which utilises the following platforms:\n\n * ReactJS\n * Redux\n * React Native Router Flux\n\nAs Buttercup makes use of strong cryptography, certain encryption/decryption tasks are performed using pure native code (Objective-C/Java). Only the bare minimum required for increased performance is handled on the native side, with the rest being solely JavaScript.\n\n## Installation\nEnsure that you're using **NodeJS 14** or newer on OSX. Android projects can be built and tested on Linux and Windows, but these platforms are _not officially supported_.\n\nBefore getting started, ensure you follow the [official React Native Getting Started guide](https://facebook.github.io/react-native/docs/getting-started.html) for your desired platform (iOS/Android). It is also recommended to have the react-native-cli installed:\n\n```shell\nnpm install -g react-native-cli\n```\n\nRun the following to initialise the project:\n\n```shell\nnpm install\n```\n\nOnce all dependencies are installed and your target development environments are setup (Xcode for iOS and Android Studio for Android), it should be possible to begin development with virtual devices.\n\n**Important note about Node.js support**: Development for this project should be performed on Node version 8. Although it may work on versions 6 and newer, we will not be supporting issues raised for these versions. Similarly, we do not currently support NodeJS version 9.\n\n### iOS development\nProviding Xcode is setup correctly, running the following will launch the application in an iPhone emulator:\n\n```shell\nnpm run ios\n```\n\n### Android development\nEnsure that Android Studio is setup correctly and that an AVD has been created. The virtual device must be on **API level 23** or greater running **Android 6.0** or newer. You must have the AVD started before continuing with no other devices connected. To ensure you only have one device running, execute the following on the command-line:\n\n```shell\nadb devices\n```\n\nTo run the application in the virtual device, run the following:\n\n```shell\nnpm run android\n```\n\n#### Running on an Android device\nTo run on an actual device, first terminate any AVDs that are running. Connect the phone over USB and run `adb devices` to ensure that it shows up. You can then run `npm run start:android` to launch the application on the device.\n\nThe same software version restrictions apply to real devices.\n\n#### Building an APK\nTo build a signed APK:\n\n 1. Close all other development resources for the project.\n 2. Run `npm run build:android` to first build the project.\n 3. In Android Studio, choose _Build \u003e Generate Signed APK_.\n 4. Build a release APK by following the instructions in the GUI.\n\n#### Publishing error: duplicate resources\n\nIf you encounter a publishing error when generating a signed APK, follow [these instructions](https://stackoverflow.com/questions/52632950/react-native-0-57-1-android-duplicate-resources#answer-55245362).\n\n## Contributing\n\nWe love contributions - anything from new features and bug fixes to suggestions and questions. Please follow our [contribution guide](https://github.com/buttercup/dossier/blob/master/CONTRIBUTING.md).\n\n### Development\n\nPlease keep in-line with the code style of each file, regardless of what tests are run (linting etc.). When creating new files their format is expected to closely resemble that of other existing source files.\n\n### Contributors\n\nThis project exists thanks to all the people who contribute. [[Contribute]](https://github.com/buttercup/dossier/blob/master/CONTRIBUTING.md).\n\u003ca href=\"graphs/contributors\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/contributors.svg?width=890\" /\u003e\u003c/a\u003e\n\n#### Backers\n\nThank you to all our backers! 🙏 [[Become a backer](https://opencollective.com/buttercup#backer)]\n\n\u003ca href=\"https://opencollective.com/buttercup#backers\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/backers.svg?width=890\"\u003e\u003c/a\u003e\n\n#### Sponsors\n\nSupport this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/buttercup#sponsor)]\n\n\u003ca href=\"https://opencollective.com/buttercup/sponsor/0/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/sponsor/0/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/buttercup/sponsor/1/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/sponsor/1/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/buttercup/sponsor/2/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/sponsor/2/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/buttercup/sponsor/3/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/sponsor/3/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/buttercup/sponsor/4/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/sponsor/4/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/buttercup/sponsor/5/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/sponsor/5/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/buttercup/sponsor/6/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/sponsor/6/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/buttercup/sponsor/7/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/sponsor/7/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/buttercup/sponsor/8/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/sponsor/8/avatar.svg\"\u003e\u003c/a\u003e\n\u003ca href=\"https://opencollective.com/buttercup/sponsor/9/website\" target=\"_blank\"\u003e\u003cimg src=\"https://opencollective.com/buttercup/sponsor/9/avatar.svg\"\u003e\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbuttercup%2Fbuttercup-mobile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbuttercup%2Fbuttercup-mobile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbuttercup%2Fbuttercup-mobile/lists"}