Building Group Chat using WebSockets

Introduction I never had a chance to work with WebSockets, so I decided to take a look and create a group chat. Here’s what I discovered: To be able to send and receive messages, you need to create an interface for communication between a server and your application. In my case, I chose sendMessage and receiveMessage methods. For the server-side, I chose Node.js. For the iOS application, I chose the Socket.IO library. Implementation Let’s dive deeper into the implementation. ...

May 2, 2024 · 4 min · Dmytro Chumakov

Exploring visionOS

Introduction I find myself fascinated by the idea of creating an app for visionOS where I could possibly display 3D AirPods that I like. Here are a few steps on how you can do the same: First step The first step that you need to do is to create a visionOS project. Second step The next step would be adding a 3D object to Reality Composer Pro and exporting it as a .usdz file. You can download free 3D objects here. All you need to do to download content is to register on this site. ...

May 2, 2024 · 1 min · Dmytro Chumakov

iOS AR App: Experience 3D Guitar

Introduction I was searching for an AR implementation of a 3D guitar inside an iOS app. Here’s what I discovered: First Step The first step is not related to building the app. Before that you need to create a project using the Reality Composer Pro app (you can find it through Spotlight search). Second Step After that, you need to visit https://developer.apple.com/augmented-reality/quick-look/ and download one of the USDZ files. In my case, I chose the 3D guitar. ...

May 1, 2024 · 2 min · Dmytro Chumakov

Building movie recommendations using ML

Introduction I was wondering about how to create movie recommendations, so I decided to take a closer look and find out more about this topic. This is what I found: First step: You need to create a JSON file with the data that you will use to train the model and define the parameters for training the model. [ { "title": "Avatar", "year": "2009", "rated": "PG-13", "released": "18 Dec 2009", "runtime": "162 min", "genre": "Action, Adventure, Fantasy", "director": "James Cameron", "writer": "James Cameron", "actors": "Sam Worthington, Zoe Saldana, Sigourney Weaver, Stephen Lang", "plot": "A paraplegic marine dispatched to the moon Pandora on a unique mission becomes torn between following his orders and protecting the world he feels is his home.", "language": "English, Spanish", "country": "USA, UK", "awards": "Won 3 Oscars. Another 80 wins & 121 nominations.", "poster": "https://ia.media-imdb.com/images/M/MV5BMTYwOTEwNjAzMl5BMl5BanBnXkFtZTcwODc5MTUwMw@@._V1_SX300.jpg", "metascore": "83", "imdbrating": "7.9", "imdbvotes": "890,617", "imdbid": "tt0499549", "type": "movie", "response": "True", "keywords": ["alien", "avatar", "fantasy world", "soldier", "battle"] }, ] When you have created the data, you can proceed to the next step. ...

May 1, 2024 · 5 min · Dmytro Chumakov

Testing Xcode project using Github Actions

Introduction If you’re wondering how to test an Xcode project using GitHub Actions, here are a few steps: First, you need to create a .github/workflows folder with a CI.yml file inside your project directory. Next, you need to add configuration to the CI.yml file. name: CI on: push: branches: - main jobs: build: runs-on: macos-14 steps: - name: Checkout code uses: actions/checkout@v4 - name: Set up Xcode version run: sudo xcode-select -s /Applications/Xcode_15.3.app/Contents/Developer - name: Install xcpretty run: gem install xcpretty - name: Test project run: xcodebuild -project /Users/runner/work/YourProjectName/YourProjectName/YourProjectName/YourProjectName.xcodeproj -scheme YourSchemeName -destination 'platform=iOS Simulator,OS=17.4,name=iPhone 15 Pro' clean build test | xcpretty Caveats If you don’t specify the path to the Xcode project, you will receive an error like this: xcodebuild: error: ‘YourProjectName.xcodeproj' does not exist. ...

April 26, 2024 · 1 min · Dmytro Chumakov