Skip to content

VictorHVS/rick-n-morty

Repository files navigation

img.png

rick-n-morty

Study app that displays the characters and episodes of Rick and Morty using Jetpack Compose.

TODOS ✅

Built With 🛠

  • Kotlin - First class and official programming language for Android development.
  • Jetpack Compose - Jetpack Compose is Android’s modern toolkit for building native UI.
  • Android Architecture Components - Collection of libraries that help you design robust, testable, and maintainable apps.
  • Jetpack Compose Navigation - Navigation refers to the interactions that allow users to navigate across, into, and back out from the different pieces of content within your app
  • Material 3 - Modular and customizable Material Design UI components for Android.
  • Paging 3 - The Paging library helps you load and display pages of data from a larger dataset from local storage or over network.

API 🖥️

FREE Rick and Morty API: https://rickandmortyapi.com/documentation

Design 🎨

Figma Design Kit: https://www.figma.com/file/quqLCyNbZniCM58U78lQ5g/%5BM3%5D-RNM-UNIVERSE-PROJECT?type=design&node-id=54313-25258&mode=design&t=VYaJlO1ELop5IFBA-4

Screens (Dark and Light mode)

Character List & Search Character List & Search

CHAR DETAIL Character Detail

Deep-Linking 📱

To test deeplink you can use this snippet in your terminal:

adb shell am start -W -a android.intent.action.VIEW -d "https://victorhvs.com/rnm/1"

Pre-Commit Hooks 🎣

  1. create a file named pre-commit in .git/hooks/
  2. add the following code to the file
  3. make the file executable using chmod +x .git/hooks/pre-commit
  4. commit your changes
  5. if any of the checks fail, the commit will be aborted
  6. if you want to commit anyway, use git commit --no-verify
#!/usr/bin/env bash
echo "Running detekt check..."
OUTPUT="/tmp/detekt-$(date +%s)"
./gradlew ktlintFormat > $OUTPUT
./gradlew detekt > $OUTPUT
EXIT_CODE=$?
if [ $EXIT_CODE -ne 0 ]; then
  cat $OUTPUT
  rm $OUTPUT
  echo "***********************************************"
  echo "                 detekt failed                 "
  echo " Please fix the above issues before committing "
  echo "***********************************************"
  exit $EXIT_CODE
fi
rm $OUTPUT

License 👮‍♂️

Copyright 2022 The Android Open Source Project

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    https://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.