Skip to content

knox/Agify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Agify

Simple agify.io client written in modern SwiftUI

Description

This is an Xcode App Playground to demo my solution to a small coding challenge that required implementing of a simple client app for the agify.io API. It is written in Swifft 6 using SwiftUI, async/await and the @Observation Framework.

Challenge

Zur Vorbereitung haben wir eine kleine Challenge für Dich. Baue hierfür bitte eine kleine iOS-App und integriere die „agify“ API. Diese liefert für einen Vornamen ein geschätztes Alter.

Du kannst selbst entscheiden, wie Du die App entwickelst (UIKit/SwifUI) und wie genau sie funktioniert. Die Pflicht wäre hierbei nach der Eingabe eines Namens, das Alter anzuzeigen.
Bei der (freiwilligen) Kür kannst Du kreativ werden. Denke Dir zum Beispiel ein kleines zusätzliches Feature aus, überlege Dir ein schickes Design, oder habe vielleicht eine super innovative UX-Idee.

Gimmick

As a fancy gimmick, I decided to implement a throttling of user input before calling the remote API. This complies with the request limit for using the free tier and improves the user experience. I achieved it with AsyncDebounceSequence from swift-async-algorithms.

License

Copyright © 2025 Mikolas Bingemer

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

About

Simple agify.io client written in modern SwiftUI

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages