I design and build iOS apps that focus on clean UI, smooth UX, and maintainable Swift code.
Mass Conversion App
SwiftUI Unit Converter
SwiftSwiftUI@StatePickersTextFields
Challenge: Build a unit converter where users choose input/output mass units and see instant conversion results.
Solution: Used two segmented pickers, a TextField, and Text view. Stored units in a reusable string array and created a clean conversion function to handle logic efficiently.
What I Learned: How to manage states with @State, loop over arrays with ForEach, and separate conversion logic into reusable functions for cleaner SwiftUI code.
Challenge: Create a brain-training game where the app randomly chooses Rock, Paper or Scissors, and alternates between asking the player to win or lose.
Solution: Built a responsive UI with VStack showing score, app’s move, and win/lose prompt. Used @State to track choices, Int.random(in:) and Bool.random() for randomness, and three large text buttons for player moves.
What I Learned: How to implement game logic with state, combine randomness with toggling, and design clear user feedback in SwiftUI using scalable text.
Challenge: Create a decentralized app that allows users to vote (cat or dog) while ensuring transparency, immutability, and preventing double votes.
Solution: Deployed a smart contract that records votes, used a frontend (React) connected via Web3 to call the contract, and fetch results.
What I Learned: Hands-on blockchain interactions (deploying, invoking contract functions), state synchronization between frontend and contract, and UI feedback for asynchronous blockchain events.
Challenge: Rebuild the classic Bullseye interface in SwiftUI: placing sliders, buttons, labels, and responsive layout in landscape mode, and handling control states.
Solution: Used stacks (VStack, HStack), conditional views, and bindings to manage state; handled orientation changes and view layout.
What I Learned: Deeper understanding of layout priorities, handling device orientation in SwiftUI, and building responsive UI in SwiftUI beyond basic examples.