Skip to content

mickael-h/githubexplorer

Repository files navigation

Github Explorer

This was fun to make. You can search for repositories, bookmark them, and check them in a preview that will display their readme file. Search results will automatically update as you scroll through them.

When the readme is big, rendering the preview screen can take a lot of time. This might be a good opportunity to try React's experimental concurrent mode... when it's available for React Native.

The code should be clean and self-explanatory. Classes, functions, and lines are kept short to ensure legibility. I use SonarLint to ensure code consistency and cleanliness.

I'm usually not a big fan of Redux (I prefer MobX State Tree), but at least Redux has the advantage of being very easy to test. I used React Native Navigation, which is definitely better for performance, but made testing navigation a little bit harder.

Screenshots

Screenshot1 Screenshot2 Screenshot3 Screenshot4

Unit / integration tests results

A good app is a well-tested app :) Test Results Satisfaction

End-to-end tests

I'm used to Appium for e2e testing but Detox seems to be pretty much the same thing. I added 2 Detox scenarios :

  • 1 that checks adding and removing bookmarks.
  • 1 that checks searching for a repository, scrolling through search results, and previewing a repository.

Features ideas (for later)

  • AsyncStorage to keep bookmarks ✔️
  • Localization ✔️
  • Sharing to contacts
  • Add more information to the preview screen top card
  • Tabs on the preview screen to also see pull requests and issues
  • A scrollToTop button
  • Login to Github -> star repos, check private repos, create issues, etc.
  • pullToRefresh on lists

Other things to do

  • Optimize rendering ✔️
  • Fixing testing the RNShare wrapper ✔️
  • Split the store's tests into several files ✔️
  • Figure out why the SearchView makes a weird "act" warning in Jest
  • Optimize rendering even more (still running slow on lower end devices)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published