https://github.com/ackeecz/ios-task-rick-and-morty
iOS test task for candidates
https://github.com/ackeecz/ios-task-rick-and-morty
Last synced: 8 months ago
JSON representation
iOS test task for candidates
- Host: GitHub
- URL: https://github.com/ackeecz/ios-task-rick-and-morty
- Owner: AckeeCZ
- Created: 2021-11-26T16:59:31.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2023-05-04T08:41:01.000Z (over 2 years ago)
- Last Synced: 2025-01-07T22:11:38.571Z (9 months ago)
- Size: 2.18 MB
- Stars: 2
- Watchers: 4
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README

# iOS Task - Rick and Morty Characters
## Description
Goal of this app is to display a bunch of information about the characters of the Rick and Morty universe. Don't know Rick and Morty? Well it's a
shame, because it's the best TV show!## API
There is a public [API](https://rickandmortyapi.com/documentation) you should use. The API offers access through GraphQL or traditionally via REST.
It's up to you.## Design
We have our own unique design for this task which you can find in the
Figma [here](https://www.figma.com/file/0w76BZ8TviO2TQF84574Et/Rick-and-Morty-Test-Task-Design?node-id=0%3A1&t=HXhltN12wt0ZpKY7-1). There is separate design for iOS and
Android, so choose the correct one. There is also support for Dark mode and Design system definition. You might need to login to your Figma account to be able to inspect UI and export assets.For easier usage you can use native components for `UINavigationBar` and `UITabBar` instead of those in the design.
## Screens
### List of characters
Display a list of characters. Since there are 600+ characters on the API you cannot fetch all of them at once - you should use some sort of paging.
The API is ready for that.#### API resources
- https://rickandmortyapi.com/documentation/#get-all-characters
#### Design

### Search of characters
Since there are so many characters and you may have an urge to find the specific one there is an option to search characters by name. Again, this
filtered list should be paged.#### API resources
- https://rickandmortyapi.com/documentation/#filter-characters#### Design

### Character detail
Display detail of a single character. You can add or remove the character to the Favorites.Favoriting characters is not part of the API, it has to be implemented in the app.
#### API resources
- https://rickandmortyapi.com/documentation/#get-a-single-character#### Design
### Favorite characters
Display a list of favorite characters. You can open a detail of a character from the list.
#### Design
## Requirements
Implement as much requirements as possible
- The app has to be written in Swift
- Define UI of the app however you like (we've heard that SwiftUI is some new thing now 😎)
- Use any asynchronous framework you fancy like Combine, ReactiveSwift or native async/await
- Follow MVVM architecture or [Composable architecture](https://github.com/pointfreeco/swift-composable-architecture)
- The app should follow system Dark mode settings
- Application should be able to run on every device and every orientation (however we don't have separate design for tablets)
- Use 3rd party libraries, technologies and frameworks as you wish. But have a good reason to use any of them, though.
- If you want to add anything extra, just go for it! (Psst, we ❤️ testing)
- Send us as a link to your git repository with the source code.