Skip to content

Commit 01ca616

Browse files
add readme
Signed-off-by: Arnav Gupta <[email protected]>
1 parent 8889e9a commit 01ca616

File tree

1 file changed

+56
-0
lines changed

1 file changed

+56
-0
lines changed

Diff for: README.md

+56
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
![](https://cloud.githubusercontent.com/assets/556934/25672246/9a20e960-2fe7-11e7-99d3-23652878a2c2.png)
2+
3+
> ### Android/Kotlin codebase containing real world examples (CRUD, auth, advanced patterns, etc) that adheres to the [RealWorld](https://github.com/gothinkster/realworld) spec and API.
4+
5+
This codebase was created to demonstrate a fully fledged fullstack application built
6+
with **Kotlin** including CRUD operations, authentication, routing, pagination, and more.
7+
8+
See how a Medium.com clone (called Conduit) is built using Kotlin in Android to connect
9+
to any other backend from https://realworld.io/.
10+
11+
For more information on how to this works with other backends, head over to
12+
the [RealWorld](https://github.com/gothinkster/realworld) repo.
13+
14+
I've gone to great lengths to adhere to the latest community styleguides &
15+
best practices but had to adapt between the RealWorld specification
16+
and general mobile layout of Medium.com.
17+
18+
### Development
19+
This project has been developed with [Android Studio](https://developer.android.com/studio/)
20+
21+
### Concepts
22+
This RealWorld app tries to show the following Android concepts:
23+
* 100% Kotlin Codebase
24+
* MVVM (Model View ViewModel) Architecture
25+
* LiveData
26+
* Kotlin Coroutines
27+
* Jetpack Navigation Architecture
28+
29+
### Architecture
30+
The project follows the general MVVM structure without any specifics.
31+
32+
There are two _modules_ in the project
33+
34+
* `app` - The UI of the app. The main project that forms the APK
35+
* `api` - The REST API consumption library. Pure JVM library not Android-specific
36+
37+
### Other Backends
38+
Obviously, this RealWorld app is a frontend app. But it can connect to all backends implementing the [RealWorld](https://github.com/gothinkster/realworld) spec and API. To test you own backend implementation just change the URL in the settings dialog.
39+
40+
## Testing
41+
This project has been manually tested against
42+
* Emulator
43+
* Pixel 2 Android SDK 23
44+
* Devices
45+
* Samsung S8 Android 8.0.0
46+
47+
### Automated tests
48+
The project contains an example e2e test to illustrate an end-to-end test case.
49+
50+
## License & Credits
51+
Credits have to go out to [Thinkster](https://thinkster.io/) with their awesome [RealWorld](https://github.com/gothinkster/realworld)
52+
53+
This project is licensed under the MIT license.
54+
55+
## Disclaimer
56+
This source and the whole package comes without warranty. It may or may not harm your computer or cell phone. Please use with care. Any damage cannot be related back to the author. The source has been tested on a virtual environment and scanned for viruses and has passed all tests.

0 commit comments

Comments
 (0)