Find a file
Aleksandar Ilic 29020cacd3 Upgrade agp
2025-12-19 23:15:55 +01:00
.github Update zapstore release action 2025-10-22 21:59:23 +02:00
.idea Update .gitignore and remove misc.xml and AndroidProjectSystem.xml 2025-10-02 12:15:17 +02:00
app Primal 2.6.11 release 2025-12-19 23:12:39 +01:00
core Fix NostrRelayManager concurrency and autoStart SQL query error (#803) 2025-12-19 18:20:06 +01:00
data Remove name and image from LocalApp 2025-12-19 18:33:29 +01:00
docs/screenshots Add latest screenshots 2024-12-13 14:11:56 +01:00
domain Remove name and image from LocalApp 2025-12-19 18:33:29 +01:00
fastlane/metadata/android/en-US Fix fastlane directory structure (#72) 2024-01-31 16:20:03 +01:00
gradle Upgrade agp 2025-12-19 23:15:55 +01:00
macrobenchmark Add sdk versions to libs.versions.toml 2025-12-10 21:56:53 +01:00
paging-runtime-ios Add sdk versions to libs.versions.toml 2025-12-10 21:56:53 +01:00
shared Add sdk versions to libs.versions.toml 2025-12-10 21:56:53 +01:00
.editorconfig Disable ktlint_standard_property-naming 2024-04-24 15:30:26 +02:00
.gitignore Implement account modules and initial remote signer architecture (#700) 2025-10-24 14:26:58 +02:00
build.gradle.kts Add Tsunami Wallet support and restructure wallet service architecture 2025-10-24 09:25:57 +02:00
CONTRIBUTING.md Implemented vanity project README and added CONTRIBUTING.md and templates for bug reports and feature requests (#1) 2023-07-12 17:31:50 +02:00
detekt.yml Disable TopLevelPropertyNaming because complains on Composable constants 2024-04-24 15:13:57 +02:00
gradle.properties Update build process 2025-05-16 13:59:55 +02:00
gradlew Initial project setup 2023-05-16 17:34:40 +02:00
gradlew.bat Initial project setup 2023-05-16 17:34:40 +02:00
LICENSE Add LICENSE file 2023-07-06 14:14:51 +02:00
README.md Change README screenshots 2024-12-13 14:34:52 +01:00
settings.gradle.kts Implement pre-caching user avatars (#770) 2025-12-12 13:41:42 +01:00
zapstore.yaml Define zapstore.yaml and github workflow to publish 2025-09-10 14:06:04 +02:00

Contributors Forks Stargazers Issues MIT License


Logo

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
  1. About The Project
  2. Getting Started
  3. Building
  4. Installing
    • Debug builds
    • Release builds
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

About The Project

Primal Feeds Screenshot Primal Reads Screenshot Primal Wallet Screenshot Primal Adv.Search Screenshot

(back to top)

Built With

Kotlin

AndroidStudio

(back to top)

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:

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:

{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.

(back to top)

License

Distributed under the MIT License. See LICENSE for more information.

(back to top)

Contact

Alex - @alex

Project Link: https://github.com/PrimalHQ/primal-android-app

(back to top)

Acknowledgments

(back to top)