Skip to content
/ Gifft Public

Android app for sending and receiving real gifts in virtual wrapping

License

Notifications You must be signed in to change notification settings

SIDOVSKY/Gifft

Repository files navigation

Gifft

Gifft 🎁

PLATFORM API

Gifft is a work-in-progress app to exchange gifts in a digital way. Simply enter a textual representation of your gift, sign it and share via sms, e-mail or your favorite messenger. When a recepient opens your link, he or she will see a gift box. It will be opened with a festive confetti.

Supported gift types for now:

  • Text
  • Photo
  • Video

AR unwrap is under development!

Development

The app is entirely written in Kotlin.

Architecture: multimodule, MVVM (without android arch components)

Multimodule Navigation is provided via dagger multibindings and a special all-knowing fragment factory.

Libraries and tools

  • Kotlin Coroutines
  • Kotlin Flows
  • AndroidX
  • Material Components
  • Dagger2
  • ObjectBox
  • Firebase Dynamic Links
  • Lottie
  • Lint: Android Lint, Detekt
  • Unit Tests: Junit 4, Mockito
  • Integration Tests: Robolectric 4
  • UI Tests: Espresso + Kakao

Development setup

  • Add debug and release keystores and debugKeystore.properties, releaseKeystore.properties
  • appCenterUploadRelease task requires APPCENTER_API_TOKEN parameter or environment variable

CI setup

  1. Build docker images from ANDROID-SDK dockerfile and JENKINS dockerfile like this:
docker build -t sidovsky/android_sdk .
docker build -t sidovsky/jenkins .
  1. Run jenkins container
docker run --name jenkins -it -p 8080:8080 -p 50000:50000 -v $HOME/jenkins:/var/jenkins_home --group-add 0 -v /var/run/docker.sock:/var/run/docker.sock -d sidovsky/jenkins
  1. Add .jks and *Keystore.properties files under keystore and ksProperties variables
  2. In jenkins job config specify target branch and an appropriate pipeline

Contributions

If you've found an error, please file an issue.

Patches are encouraged, and may be submitted by forking this project and submitting a pull request. Since this project is still in its very early stages, if your change is substantial, please raise an issue first to discuss it.

License

This project is licensed under the Apache License, Version 2.0 - see the LICENSE file for details.

About

Android app for sending and receiving real gifts in virtual wrapping

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published