There’s the cloud. Github is facebook for programmers.
Github is an unofficial, open source, android-based Github client App.
GithubApp
At present, the name is not good, welcome everyone to provide a message 🙂
The other
At first, I wrote this App as an example of a blog post. Later, I found that I also had some practical needs. For example, I often check Trending on Github to see the trend of technology and popular libraries.
In addition, I have always been deeply interested in the API that Github provides in full accordance with RESTful architecture. I think it has reference significance for API development, background architecture and client interface design, so I really want to know more about it.
So I wrote this App.
preview
Technical point
-
Using MVP architecture
Architecture should be an idea, not a fixed model. MVP, everyone might do it a little differently. For details, please check the related blog posts during the development process.
-
Dagger2 dependency injection was introduced to decouple
M-P-V use injection mode decoupling, stratification. For details, please check the related blog posts during the development process.
-
RxJava + Retrofit + OkHttp asynchronous RESTful network request architecture
- An asynchronous request
- Network cache implementation
-
Many mature wheels are used, such as Glide, ButterKnift, Looger, etc. Please check the third party library for details.
The function point
v0.1
- Daily Trending list, based on language, currently includes:
- java
- python
- objective-c
- swift
- shell
- html
- java
- The list of the most stars for each major technology platform currently includes:
- android
- iOS
- python
- web
- php
- Search the Repo by keyword, and you can select a language category.
- Log in using the Github account.
- Personal/user information display, including:
- The basic information
- The user’s Repos
- Starred-mode users of Repos
- The user’s Following list
- A user’s followers list
- Repo details, including:
- Warehouse basic information (name, introduction, author, Star number, language classification)
- Contributors list
- Forks list
- Code display
- Show the Readme
- Star/Unstar a Repo.
- Settings/About/Version
- Sharing features, ShareSDK integration (to be improved across platforms)
- Crash collection, integrated with Tencent Bugly.
The development process
MVP series
Including MVP architecture implementation, Dagger2 injection and RxJava + Retrofit + OkHttp network request architecture.
- MVP architecture implementation for Github client (1- Preparation)
- MVP architecture implementation of Github client (2- Build project framework)
- MVP architecture implementation of Github client (3- Feature implementation)
- MVP architecture implementation of Github client (4- join the network cache)
App Optimization series
- Background: How to optimize Android App?
- App optimized performance analysis tool
- The theoretical basis for improving your App startup speed through App optimization
- App optimization: A practical challenge to improve your App launch speed
- How to place the Layout of App optimization
- App optimization to make your App smooth
- App optimized memory analysis tool
- App optimization memory leakage how to solve
- App optimized durable battery
- How does App optimization make network requests efficient
Third-party libraries
Network related
- Retrofit (including OkHttp)
- OkHttp logging interceptor
Rx
- RxJava
- RxAndroid
- RxBinding
Rapid development of
- ButterKnift
injection
- Dagger2
Image to load
- Glide
- glide-transformations
auxiliary
- Logger
UI
- BaseRecyclerViewAdapterHelper
- BottomBar
- spots-dialog
- material
- MaterialSearchView
- RecyclerView-FlexibleDivider
- FloatingActionButton
- AppIntro
- AndroidViewAnimations
- PagerSlidingTabStrip
- FlycoLabelView
- Android-Iconics
- highlightjs-android
- MarkdownView-Android
The last
- This App doesn’t have a name yet, so you’re welcome to leave your name.
- The picture of the user guide interface has not been found, welcome to leave the picture.
- At present this is still a 0.1 version, the function is not perfect. Welcome to star, fork, PR, or make requests to make it better.
GithubApp
To contact me
Blog Github Simple book Gmail