https://github.com/primalhq/primal-android-app
Primal's Android app for Nostr.
https://github.com/primalhq/primal-android-app
android decentralization nostr nostr-client
Last synced: about 2 months ago
JSON representation
Primal's Android app for Nostr.
- Host: GitHub
- URL: https://github.com/primalhq/primal-android-app
- Owner: PrimalHQ
- License: mit
- Created: 2023-05-11T18:54:37.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2026-04-02T15:41:47.000Z (2 months ago)
- Last Synced: 2026-04-03T00:13:32.387Z (2 months ago)
- Topics: android, decentralization, nostr, nostr-client
- Language: Kotlin
- Homepage: https://primal.net/downloads
- Size: 68.4 MB
- Stars: 209
- Watchers: 5
- Forks: 39
- Open Issues: 91
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![MIT License][license-shield]][license-url]
Primal
Featuring easy onboarding, fast & snappy UI, ability to explore Nostr, and create & manage custom feeds
Explore the docs »
View Demo
·
Report Bug
·
Request Feature
Table of Contents
## About The Project
### Built With
[![Kotlin][Kotlin]][Kotlin-url]
[![AndroidStudio][AndroidStudio]][AndroidStudio-url]
## Getting Started
### Prerequisites
This project requires the following pre-requisites:
- Java 17;
- Android SDK;
- Android Studio (Hedgehog 2023.1.1 and AGP 8.2);
- Android 8.0+ device or emulator;
## Building
### Debug
To build debug builds no extra configuration required, just execute `./gradlew assembleDebug` or run in Android Studio.
### Release
To build release builds you will need to create `config.properties` file in the project root directory.
Following properties in `config.properties` are **MANDATORY** for any release build:
```properties
localStorage.keyAlias={KeystoreAliasForEncryption}
```
If you want to build the release build with your own certificate you can use `googlePlayRelease` or `aospAltRelease`
build variant which will read the certificate details from following properties in `config.properties`:
```properties
{signingConfigName}.storeFile={PathToYourCertificate}
{signingConfigName}.storePassword={CertificatePassword}
{signingConfigName}.keyAlias={YourAlias}
{signingConfigName}.keyPassword={AliasPassword}
```
`{signingConfigName}` should be replaced with `playStore` or `alternative`.
## Installing
Attach your device to the computer or start your emulator and install debug or release build as described below.
### Debug builds
To install debug build execute `./gradlew installDebug` or run `debug` build variant in AndroidStudio.
Please note that debug builds do not use encryption when storing sensitive information and that the performance is
significantly slower compared to release builds.
### Release builds
To install release build execute `./gradlew installAospAltRelease` or `./gradlew installGooglePlayRelease`, or
run in AndroidStudio. Please note that `googlePlayRelease` and `aospAltRelease` build variants require
`config.properties` configured with mandatory properties. If no certificate properties are provided it fallbacks
to `debug` certificate.
## Development
The app is still under the development and changes are frequent. Breaking changes can and will happen in the future.
## Contributing
Read more about contributions in [CONTRIBUTING.md](CONTRIBUTING.md).
## License
Distributed under the MIT License. See [LICENSE](LICENSE) for more information.
## Contact
Alex - [@alex](https://primal.net/profile/npub1ky9s6hjl46wxcj9gcalhuk4ag2nea9yqufdyp9q9r496fns5g44sw0alex)
Project Link: [https://github.com/PrimalHQ/primal-android-app](https://github.com/PrimalHQ/primal-android-app)
## Acknowledgments
* [NostrPostr](https://github.com/Giszmo/NostrPostr)
* [Acinq](https://acinq.co)
[contributors-shield]: https://img.shields.io/github/contributors/PrimalHQ/primal-android-app.svg?style=for-the-badge
[contributors-url]: https://github.com/PrimalHQ/primal-android-app/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/PrimalHQ/primal-android-app.svg?style=for-the-badge
[forks-url]: https://github.com/PrimalHQ/primal-android-app/network/members
[stars-shield]: https://img.shields.io/github/stars/PrimalHQ/primal-android-app.svg?style=for-the-badge
[stars-url]: https://github.com/PrimalHQ/primal-android-app/stargazers
[issues-shield]: https://img.shields.io/github/issues/PrimalHQ/primal-android-app.svg?style=for-the-badge
[issues-url]: https://github.com/PrimalHQ/primal-android-app/issues
[license-shield]: https://img.shields.io/github/license/PrimalHQ/primal-android-app.svg?style=for-the-badge
[license-url]: https://github.com/PrimalHQ/primal-android-app/blob/master/LICENSE.txt
[Kotlin]: https://img.shields.io/badge/kotlin-000000?style=for-the-badge&logo=kotlin&logoColor=white
[Kotlin-url]: https://kotlinlang.org
[AndroidStudio]: https://img.shields.io/badge/androidstudio-000000?style=for-the-badge&logo=androidstudio&logoColor=white
[AndroidStudio-url]: https://developer.android.com/studio