/LesmoMovies

Primary LanguageTypeScriptMIT LicenseMIT

LesmoMovies

This is a quickie displaying a bit of React Native magic. This basic implementation allows you to explore The Movie Database using its API.

Running

Grab a build from the Releases or, well... it's React Native, so:

$ npm run android
$ npm run ios

Hightlights

  • Integrated CI with Github Actions:
    • Run Unit Tests
    • Build an Android Release
  • UI Kitten, my favorite UI framework
  • Typescript because I ♥ type safety
  • Axios and axios-cache-adapter for quickly building a wrapper to interact with TMDB and provide type safety and handling of some "complex" image URL generation, etc.
  • React Navigation 5 for, well... navigating between screens
  • Infinite scrolling, implemented with React Native's FlatList to provide better performance.

Possible Improvements

  • Dark mode: out of the box, UI Kitten is ready to handle the runtime change of the theme. It's already built, so we only need to add a simple "listener" of what theme is the user currently using (light or dark).
  • i18n: it's amazing that TMDB supports multiple locales, so we can easily integrate localization with a bit of work.
  • Better design: TMDB's API provides access to the movies' logo and backdrop as separate images, which would allow us to build an much nicer UI.