Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/lockerpm/mobile

Locker Mobile is a secure and user-friendly cross-platform application written in React Native, designed to allow users to store and manage their passwords and secrets on both Android and iOS devices.
https://github.com/lockerpm/mobile

android end-to-end-encryption ios locker mobile password-manager react-native zero-knowledge

Last synced: about 2 months ago
JSON representation

Locker Mobile is a secure and user-friendly cross-platform application written in React Native, designed to allow users to store and manage their passwords and secrets on both Android and iOS devices.

Awesome Lists containing this project

README

        

![Locker Password Manager](https://raw.githubusercontent.com/lockerpm/.github/main/images/locker4.png)

# Locker Mobile

Locker Mobile is a secure and user-friendly cross-platform application written in React Native, designed to allow users to store and manage their passwords and secrets on both Android and iOS devices.

## Getting Started

### Configure Git blame

We recommend that you configure git to ignore the Prettier revision:

```
git config blame.ignoreRevsFile .git-blame-ignore-revs

```

### Android/iOS Development

This Project is generated by [Ignite](https://reactnative.dev/docs/0.71/environment-setup) that uses React Native CLI. It requires Xcode or Android Studio to get started. If you already have one of these tools installed, you should be able to get up and running within a few minutes. If they are not installed, you should follow the [React native environment setup](https://reactnative.dev/docs/0.71/environment-setup) page to set up an Android and iOS development environment.

### Backend

Set up the Backend server before running this project. Follow [Backend Setup](https://github.com/lockerpm/api).

### Environment variables

After you set up your backend server successfully, you must manually set your API endpoints and web socket settings by creating a `app/config/.env` with the following `app/config/environment.example.js` content.

## Configuration

```sh
git clone https://github.com/lockerpm/mobile.git
cd mobile
```

### IOS

1. Register an Apple ID
- App Groups
- Associated Domains
- Autofill Credential Provider
- Data Protection-Complete Protection
- Push Notification
2. Go to https://appstoreconnect.apple.com/apps, create new app with the bundle ID
3. Create a Firebase iOS App with the bundle ID then download GoogleService-Info.plist and configure Firebase Cloud Messaging for iOS App
4. Open mobile/ios/Firebase/Prod (create if not exist) then move the file GoogleService-Info.plist just downloaded to the folder

### Android

1. Generate signing key and set up Gradle variables flow [This Docs](https://reactnative.dev/docs/signed-apk-android)
2. Create Firebase Android App with the bundle ID (recommend bundle is same iOS app bundle ID) then download google-services.json file and move the file to the Android app

### Buld and debug

Install dependencies.

```sh
yarn
```

Replace app icon, app bundle ID, app assets with your own app assets by follow [this](./selfhost/README.md).

After the process is complete successfuly. You can run app in iOS or Android.

```sh
yarn ios
yarn android
```

## Contributing

Contributions to the Locker Mobile project are welcome! If you find any issues or want to suggest improvements, please feel free to open an issue or submit a pull request.

Before contributing, please review the [Contribution Guidelines](https://github.com/lockerpm/.github/blob/main/CONTRIBUTING.md).

## License

The Locker Mobile is open-source and released under the [GPLv3](./LICENSE) License. Feel free to use, modify, and distribute the code as per the terms of the license.