Implement an expenses list fetching all expenses from the provided API. Allow the user to add notes and upload receipt pictures to each expense.
See the API details for implementation.
- User can list expenses
- User can add a comment on an expense
- User can filter on expenses (client side filters)
- User can add a receipt image on an expense
Multiple app screen application using ReactNative and Java/Kotlin/Swift:
- A visually pleasing experience, you donโt have to be a designer but you must have put an effort into making this look good
- A "componentized" approach, split your code into small building blocks, showcase your clean architecture skills.
- Screens can be written on JS/TS but at least one should be native
- The use of any libraries or frameworks as long as you can explain to us why you chose them.
- A brief description of your project. How long did it take? Which part was the hardest to implement? What functionalities are you most proud of?
- Between realms communication (JS -> Native or Native -> JS). For example: Expense List (JS Realm) sends properties to next Fragment/ViewController (Native Realm) and this responds back to the (JS Realm) with some result
- Test (e2e/unit test)
Want to go the extra mile? Here's few suggestion of things we'd like to see (or go crazy and implement what you think will impress us).
- Implement with a state management library (Redux, Mobx, VueX, Graphql, ...)
- Implement solution in TypeScript
- Localization: support for multiple languages (English, French, ...)
- CI/CD (Travis/GH Actions/ Etc)
- Push Notification (extensions/Cuztomized)
- Share Extension
- Using high-quality existing libraries or small amounts of custom code.
- Production grade code (clean, maintainable, reusable code)
- Showing your work through your commit history
- Polish and visual creativity
- Pride in craftsmanship
Please note that while you are free to use libraries of your choosing, we encourage you to write at least some your own code. This is your chance to really impress us with your skills.