Skip to content
View YevhenBiiak's full-sized avatar
  • Ukraine

Block or report YevhenBiiak

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
YevhenBiiak/README.md

Hi there 👋

My name is Yevhen Biiak and I'm an iOS Developer

My Portfolio

Projects: 〈 1 · 2 · 3 〉of 10

07-RayBan-Store


Description:

  • This is a full-featured app (excluding purchases) that allows users to order glasses from the online store.
  • The app has a shopping cart where users can add and remove items, as well as a wish list where they can keep their favorite items for future purchases.
  • Users can also place orders, choose shipping options, enter their address for delivery, and view their order history.

Project Goal:

  • The project was developed for the purpose of studying Clean Architecture and MVP presentation pattern, as well as for learning Firebase frameworks such as AuthFirebase and RealtimeDatabase.

Used technologies and frameworks:

  • Swift, CocoaPods, SwiftLint, AutoLayout, async/await, JSON
  • UIKit, Stevia, CoreAnimation, FirebaseAuth, FirebaseDatabase, Facebook SDK, Network, URLSession

Read more: 07-RayBan-Store (repo)


SpaceX


Description:

  • The SpaceX app is an iOS application that provides information about SpaceX rockets and launches

Project Goals:

  • Develop the application using the Clean Swift architecture
  • Learn GraphQL and Apollo-iOS framework
  • Work with SceneKit and 3D models

Used technologies and frameworks:

  • Swift, Xcode 14, iOS 13.0, Storyboard, Clean Swift, GraphQL, Blender
  • UIKit, Apollo-iOS, SceneKit, URLSession, CoreGraphics

Read more: SpaceX (repo)


10-Food


Description:

  • The project is a food ordering app that allows users to sign up, sign in, browse menus, add items to their cart from various categories, and place orders.
  • All images and JSON data are stored in the Resources folder in this repository and retrieved using URLSession.

Used technologies and frameworks:

  • Swift, Xcode, Storyboard, MVVM, JSON, Codable,
  • Foundation, UIKit, URLSession, Keychain, NotificationCenter

Read more: 10-Food (repo)


Show more projects: 〈 4 · 5 · 6 〉of 10


Planner App


Description:

  • This project is an iOS application designed to help users manage their daily tasks.
  • With the app, users can easily view and organize their tasks based on the day they created them. The app also provides a feature that allows users to add new tasks as needed.
  • In addition, the app includes a variety of features designed to enhance the user experience. For example, there is a month picker that allows users to easily navigate to a specific month. Similarly, the day picker allows users to select a specific day and view all the tasks created on that day. Moreover, the app provides an indicator that shows the number of tasks created on a particular day, allowing users to quickly identify their busiest days.

Used technologies and frameworks:

  • Swift, Xcode, JSON
  • SwiftUI, Combine, Foundation

Read more: Planner App (repo)


Design-Patterns


Description:

  • A simple application with a list of patterns grouped by categories.
  • All the images, as well as the design of the application, were created in Sketch.
  • Each pattern has a brief description, popularity, and complexity indicators for Swift developers, and a code example.
  • The code samples are downloaded from this Git repository and have a specific situation implementation for the ios developer.

Project Goal:

  • Learn design patterns, understand and apply them on a concrete example

Used technologies and frameworks:

  • Sketch, Swift, Xcode, Storyboard, Playground, JSON, Regex
  • UIKit

Read more: Design-Patterns (repo)


Architecture-Patterns


Description

  • This project is a simple app that consists of a login and main screens.
  • The login scene allows users to input a username and password, and if the combination is valid, the user is presented with the main scene.
  • The main scene simply displays the username and a logout button.

Project Goal:

  • The main goal of this project was to learn the difference in data passing and routing between screens using three different architectural patterns (MVC, MVP, MVVM) through a simple app example with two screens.

Testing

  • The app has been thoroughly tested using XCTest. The testing includes unit tests and UI tests.
  • Unit tests are written for Presenters of MVP and ViewModels of MVVM using the Test Double unit testing concept. For example, a test case was written to verify that the router method representing the main screen is called after the "Login" button is pressed.
  • UI tests were also written to test the app's user interface and overall behavior. For example, a test case was written to ensure that after entering valid login credentials and tapping the "Login" button, the app transitions to the main screen.

Used technologies and frameworks:

  • Swift, XCode, MVC, MVP, MVVM
  • UIKit, XCTest

Read more: Architecture-Patterns (repo)


Show more projects: 〈 7 · 8 · 9 〉of 10


Core-Animation



Learned how to:

  • draw circle and arc using CAShapeLayer and UIBezierPath
  • animate properties of CoreAnimation classes using CABasicAnimation and CASpringAnimation
  • animate UILabel text content using CADisplayLink
  • replicate layers using CAReplicatorLayer with move and rotate transforms
  • create a CAEmitterLayer layer with CAEmitterCell and manage its properties

Read more: Core-Animation (repo)


06-Audio-Player


Description:

  • No Storyboard, no UITableView
  • This project is an audio player app that allows users to play music from their device's local storage.
  • The app loads songs from the main bundle using the Storage class, which uses the AVFoundation framework to extract metadata from the songs, such as title, artist, and artwork.
  • The app supports remote control events, such as play, pause, next, and previous.

Used technologies and frameworks:

  • Swift, MVC, KVO, Delegation pattern
  • UIKit, AVFoundation, MediaPlayer

Read more: 06-Audio-Player (repo)


To-Do-Manager


Description:

  • This project is a task manager app developed for iOS devices.
  • It allows users to create, edit and delete tasks, set their priority and status - their place in the task list will depend on it.
  • In this app are considered different solutions for task storage, such as UserDefaults, Realm, and remote API.

Used technologies and frameworks:

  • Swift, Xcode, SPM, Storyboard, XIB, MVC, Ascyn/await, REST API, JSON
  • Alamofire, Realm, UIKit, Foundation

Read more: To-Do-Manager (repo)


Show more projects: 〈 10 〉of 10


CoreDataDemo


Learned how to:

  • create entity:
    • with auto class definition
    • with manual class definition
  • create new entity instances
  • change entity atributes
  • delete entity instances
  • fetch context
  • save context
  • implement simple CoraData manager
  • handle context changes usin NSFetchedResultsControllerDelegate
  • create relationships between entities

Read more: CoreDataDemo (repo)

Pinned Loading

  1. 07-RayBan-Store 07-RayBan-Store Public

    This is a full-featured app (excluding purchases) that allows users to order glasses from the online store.

    Swift

  2. 10-Food 10-Food Public

    Demo App implemented using UIKit and Storyboards on MVVM architecture

    Swift 2

  3. SwiftUI SwiftUI Public

    My projects from SwiftUI course by SwiftBook

    Swift

  4. Design-Patterns Design-Patterns Public

    Application containing 20 design patterns with description, structure and code examples in swift.

    Swift

  5. Core-Animation Core-Animation Public

    Animated counter, line chart, radial chart, stretch ball

    Swift 2

  6. 06-Audio-Player 06-Audio-Player Public

    The audio player plays songs in the background and displays the current song on the lock screen and in the control panel

    Swift 8