Convert Figma logo to code with AI

olucurious logoAwesome-ARKit

A curated list of awesome ARKit projects and resources. Feel free to contribute!

7,834
918
7,834
5

Top Related Projects

2,285

ViroReact: AR and VR using React Native

15,782

Efficient Augmented Reality for the Web - 60fps on mobile!

ARCore SDK for Android Studio

Combines the high accuracy of AR with the scale of GPS data.

Quick Overview

Awesome-ARKit is a curated list of ARKit projects and resources. It serves as a comprehensive collection of ARKit-related content, including tutorials, frameworks, libraries, and sample projects. This repository aims to be a go-to resource for developers interested in Apple's Augmented Reality technology.

Pros

  • Extensive collection of ARKit resources in one place
  • Regularly updated with new content and projects
  • Well-organized and categorized for easy navigation
  • Includes both open-source projects and commercial tools

Cons

  • May overwhelm beginners due to the large amount of information
  • Some listed projects or resources might become outdated over time
  • Lacks detailed descriptions or reviews of individual resources
  • Primarily focused on iOS development, limiting its usefulness for other platforms

Note: As this is not a code library but a curated list of resources, there are no code examples or getting started instructions to provide.

Competitor Comparisons

2,285

ViroReact: AR and VR using React Native

Pros of Viro

  • Full AR/VR development platform with cross-platform support (iOS, Android, Web)
  • Provides a complete SDK with ready-to-use components for 3D rendering and AR features
  • Offers a more comprehensive solution for building AR/VR applications

Cons of Viro

  • Less community-driven and more focused on a specific framework
  • May have a steeper learning curve for developers new to AR/VR development
  • Limited to Viro's ecosystem and tools

Code Comparison

Viro (React Native):

import React from 'react';
import { ViroARSceneNavigator } from '@viro-community/react-viro';

const App = () => {
  return <ViroARSceneNavigator initialScene={{ scene: ARScene }} />;
};

Awesome-ARKit (Swift):

import ARKit

class ViewController: UIViewController, ARSessionDelegate {
    var sceneView: ARSCNView!
    
    override func viewDidLoad() {
        super.viewDidLoad()
        sceneView = ARSCNView(frame: view.bounds)
        view.addSubview(sceneView)
    }
}

Summary

Viro provides a more comprehensive AR/VR development platform with cross-platform support and ready-to-use components. However, it may have a steeper learning curve and is limited to its ecosystem. Awesome-ARKit, on the other hand, is a curated list of ARKit resources and projects, offering more flexibility and a community-driven approach to AR development specifically for iOS.

15,782

Efficient Augmented Reality for the Web - 60fps on mobile!

Pros of AR.js

  • Web-based AR solution, requiring no app installation
  • Works across platforms (iOS, Android, desktop) via web browsers
  • Simpler to implement for basic AR experiences

Cons of AR.js

  • Limited features compared to native AR frameworks
  • Less precise tracking and performance than native solutions
  • Smaller community and fewer resources available

Code Comparison

AR.js (HTML):

<a-scene embedded arjs='sourceType: webcam;'>
  <a-box position='0 0.5 0' material='opacity: 0.5;'></a-box>
  <a-marker-camera preset='hiro'></a-marker-camera>
</a-scene>

Awesome-ARKit (Swift):

let configuration = ARWorldTrackingConfiguration()
sceneView.session.run(configuration)

let box = SCNBox(width: 0.1, height: 0.1, length: 0.1, chamferRadius: 0)
let node = SCNNode(geometry: box)
node.position = SCNVector3(0, 0, -0.5)
sceneView.scene.rootNode.addChildNode(node)

While AR.js offers a simpler web-based approach, Awesome-ARKit provides a more comprehensive collection of resources for native iOS AR development using ARKit. AR.js is suitable for quick, cross-platform AR experiences, while Awesome-ARKit caters to developers seeking more advanced AR capabilities and iOS-specific implementations.

ARCore SDK for Android Studio

Pros of arcore-android-sdk

  • Official Google SDK for AR development on Android
  • Comprehensive documentation and support from Google
  • Regular updates and improvements aligned with Android ecosystem

Cons of arcore-android-sdk

  • Limited to Android platform only
  • Steeper learning curve for beginners compared to curated lists
  • Less community-driven content and examples

Code Comparison

arcore-android-sdk:

private void onUpdate() {
    Frame frame = session.update();
    Camera camera = frame.getCamera();
    // AR rendering logic here
}

Awesome-ARKit (example from a linked project):

func renderer(_ renderer: SCNSceneRenderer, updateAtTime time: TimeInterval) {
    guard let frame = sceneView.session.currentFrame else { return }
    // AR rendering logic here
}

Summary

arcore-android-sdk is Google's official SDK for AR development on Android, offering robust features and documentation. However, it's platform-specific and may be more complex for beginners. Awesome-ARKit, on the other hand, is a curated list of ARKit resources for iOS, providing a wider range of community-driven content but lacking the official support and comprehensive SDK features of arcore-android-sdk. The choice between them depends on the target platform and the developer's needs for official support versus community resources.

Combines the high accuracy of AR with the scale of GPS data.

Pros of ARKit-CoreLocation

  • Focused specifically on combining ARKit with Core Location for location-based AR experiences
  • Provides ready-to-use components for integrating location data with AR scenes
  • Actively maintained with regular updates and improvements

Cons of ARKit-CoreLocation

  • More limited in scope compared to the broader collection of ARKit resources in Awesome-ARKit
  • May require additional setup and configuration for complex AR projects
  • Less comprehensive documentation and examples compared to Awesome-ARKit's curated list

Code Comparison

ARKit-CoreLocation example:

let locationNode = LocationNode(location: CLLocation(latitude: 37.7749, longitude: -122.4194))
sceneLocationView.addLocationNodeWithConfirmedLocation(locationNode: locationNode)

Awesome-ARKit doesn't provide direct code examples but links to various ARKit projects and resources.

Summary

ARKit-CoreLocation is a specialized library for combining ARKit with location data, offering ready-to-use components for location-based AR experiences. It's actively maintained but has a narrower focus compared to Awesome-ARKit. Awesome-ARKit, on the other hand, is a comprehensive collection of ARKit resources, tutorials, and projects, providing a broader overview of ARKit capabilities and use cases. Choose ARKit-CoreLocation for specific location-based AR projects, and Awesome-ARKit for general ARKit exploration and learning.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Awesome ARKit Awesome

Build Status

Banner

A curated list of awesome ARKit projects and resources. Feel free to contribute!

ARKit is a new framework that allows you to easily create unparalleled augmented reality experiences for iPhone and iPad. By blending digital objects and information with the environment around you, ARKit takes apps beyond the screen, freeing them to interact with the real world in entirely new ways.


Projects

  • Baraba - Make your UIScrollView scroll automatically when user is looking 👀 by tracking face using ARKit
  • Robust-Measurement-Tool - ARKit-based measurement tool, which has easy-to-follow and fully documented code.
  • ARMultiuser - This demo use arkit 2.0, realize multiplayer play together! The project refers to the official demo!
  • ARKit2.0-Prototype - Bluetoothed ARKit 2.0 with ARWorldMap
  • ARBrush - Quick demo of 3d drawing in ARKit using metal + SceneKit
  • ARuler - ARKit demo ruler app
  • Apple ARKit example app - Apple ARKit example app
  • ARKit-FloorIsLava - Basic ARKit example that detects planes and makes them lava.
  • ARKit-line-drawing - Changed the default ARKit project to draw a line where the camera is positioned
  • ARKit-tictactoe - ARKit based tic-tac-toe with a decent AI opponent
  • ARShooter - A basic Augmented Reality shooter made with ARKit in Swift (iOS 11)
  • ARStack - AR version Stack game with ARKit in Swift
  • ARRubiks - A Rubik's Cube that you can put on a table
  • ARTetris - Augmented Reality Tetris made with ARKit and SceneKit
  • ARText - ARText render 3D Text/caption in real world by using ARKit
  • Boxify - An ARKit box-drawing demo
  • iOS11 ARKit (3D of Wolf 🐺 狼) - iOS11 ARKit (3D of Wolf 🐺 狼)
  • iOS-11-by-Examples - Examples of new iOS 11 APIs
  • MeasureARKit - Simple app measuring real objects with ARKit (tutorial in articles)
  • ARKitGameSpriteKit - A game inspired by Pokemon Go build with ARKit and SpriteKit
  • MeasureThings - ARKit introduction: measure the distance between two points
  • ARCharts - 3D charts in AR
  • 3DSnakeAR - Snake 3D game 🐍
  • ARSolarPlay - Solar system in AR
  • ARKit-CoreLocation - Combines the high accuracy of AR with the scale of GPS data
  • ARKitPlusVR - Make VR with SceneKit & ARKit
  • ARKitDemoPlayground - A demo of the ARKit Demo project from Xcode 9 as a Swift Playground
  • ARGitHubCommits - Show your GitHub commit records in 3D with ARKit and SceneKit
  • Virtual Objects - Placing Virtual Objects in Augmented Reality
  • CoreML-in-ARKit - Simple project to detect objects and display 3D labels above them in AR.
  • ARPaint - Draw with bare fingers in the air using ARKit
  • arkit-smb-homage - This project is a homage to Super Mario Bros.
  • ARShellGame - Augmented Reality Shell game made with ARKit and SceneKit.
  • Occlusion - "Tracking" vertical planes and occluding virtual objects with real world geometry.
  • ARKit-Sample-ObjC - Sample ARKit Objective-C implementation with features of Add, Remove, Scale, Move single or multiple objects along with plane detection.
  • ARBalloons - Sample ARKit Demo using SpriteKit to simulate balloons🎈
  • cARd - Simple demo of animated card made with ARKit + SceneKit.
  • FaceRecognition-in-ARKit - Detects faces using the Vision-API and runs the extracted face through a CoreML-model to identiy the specific persons.
  • pARtfolio - Rosberry Portfolio app made with Apple ARKit.
  • SceneKitVideoRecorder - Video and Audio recorder for ARKit projects.
  • ARKit Navigation Demo
  • ARKit-Sampler - A collection of ARKit samples, including a custom rendering sample using Metal.
  • Measure - Using ARKit to make calculate distance of real world objects
  • Ruler - An AR ruler app can measure length & area
  • Twilio Video chat w/ AR - Twilio Video chat with AR in scene
  • ARPlayer - Playback videos using ARKit and AVFoundation📺
  • ARVoxelKit - Lightweight Framework for Voxel graphic.
  • ARKitSpitfire - AR Spitfire that can orient itself towards then fly to geocoordinates.
  • ARInvaders - A port of Space Invaders using ARKit. Aliens will fly and chase you around your home. Can you shoot them before they shoot you?
  • ARKitAirport - Tap on map, plane will take off from an AR runway and fly to location you tapped.
  • AR-FlatWeatherDiplay - A live flat Weather Dashboard based on the user's location. ☀️⛈
  • AR-Planes - Visualize and discover the planes flying around you ✈️
  • ARVideoKit - Record and capture videos 📹, photos 🌄, Live Photos 🎇, and GIFs 🎆 with ARKit content.
  • uARKit - Framework to simplify and improve usage of ARKit for non-AR developers
  • NextLevel – Open Source ARKit Media Capture in Swift.
  • Findme – Using ARKit to find me.
  • SmileToUnlock – This library uses ARKit Face Tracking in order to catch a user's smile.
  • ARKitEnvironmentMapper - Create an environment map from the camera feed to achieve realistic lighting and reflections.
  • ARBottleJump - An ARKit version of WeChat Bottle Jump game.
  • ARKit-Virtual-Backdrop - Superimpose your image into a 3D rendered world using Metal.
  • Mokapp2017_World - With Mokapp2017 World you can explore the world around you, play a video, put objects in front of you or to a plane (with gravity), play Space Invaders 3D.
  • Mokapp2017_Face - With Mokapp2017 Face you can put objects and particles on your face.
  • ARBubble-blower - For creating stunning soap bubbles in your AR app, nothing is more fun than to pop bubbles in AR.
  • WallStreaming - Project demonstrating vertical surface detection and streaming/playing video on a virtual surface.
  • Poly - Unofficial Googly Poly SDK. A library for searching and displaying 3D models.
  • ARbusters - AR game in a pixel/billboard style. Created as a first steps project for newcorners.
  • HeavenMemoirs - AR相册 Photo Album For AR
  • SceneKit PortalMask - Pod to create a space that is occluded from the outside except through a rectangular or circular frame
  • AR Drawing - Drawing in real world.
  • AR Sections
    1. Plane Detection
    2. Put object on the floor
    3. Draw Planets
    4. AR Hit Game
  • ARBlockTower - Show a Block Tower to see how you can stack up against gravity
  • ARKit-Emperor - Power! Unlimited power for ARKit 2.0! (Samples)
  • iOS-Depth-Sampler - A collection of samples for Depth APIs, including ARKit+Depth sample.
  • ARTrailer - Augmented Reality Movie Trailer made with ARKit and SceneKit.
  • ARBusinessCard - Create and view fully interactive business cards.
  • ARStarter - get started with ARKit - a little exercise for beginners.
  • MarvelAR - MarvelAR is an iOS application that present Marvel Heroes 3D Models Using ARKit.
  • AR-Quick-Look - Rendering any 3d model in Augmented Reality using AR-Quick-Look, recently launched by Apple to view or share your 3d model.
  • ARInstagram - Placing 2D images on walls and applying Instagram-like filters on them.
  • Reality Shaders - Apply metal vertex and fragment shaders to real world surfaces.
  • SCNRecorder - Capture Video and Photo from SceneKit, ARKit and RealityKit projects at 60 fps.
  • ARCarGuidePoC - Detects parts under a hood of a motor vehicle, and tracks the detected parts in AR.
  • Blood cells AR - discover cells in augmented reality(Using Ar Quick look)

AppStore

  • Snake.AR - Classic Snake game in Augmented Reality! You can move around the snake by moving your phone. Be careful of the obstacles and have fun!
  • ARPiano - A augmented reality fine-tuned and professional piano app with 61 keys or 88 keys, which you can place every plane to play.
  • Sky Guide AR - A star app has never been more beautiful and easy to use.
  • StroodleDoodle AR - Digital Play-Dough. Fast and fun 3D sculpting on any surface, anywhere. Share directly to sketchfab.
  • Night Sky - Night Sky is a powerful augmented reality personal planetarium.
  • AR Dragon - Augmented Reality Virtual Pet Simulator!
  • MyTools · My AR Light & Ruler - 「My Ruler and Light」is a useful and delicately designed toolbox App for you.
  • Thomas & Friends Minis - Create your very own train set piece by piece and bring it to life with Thomas and all his friends.
  • Stack AR - Stack up the blocks as high as you can!
  • Euclidean Lands - A beautiful puzzle game with unique mechanics that blends isometric architecture and turn-based movement into an exciting medieval game world.
  • Homebrew Club - In augmented reality, you can always place the computer on your desk, floor or even bed. Then the computer can be observed in any orientations and distances. Anyway, this is just like a real computer!
  • Stik AR - People can stick stickers at where iPhone at in real space.
  • Zombie Gunship Revenant AR - ZOMBIE GUNSHIP REVENANT is the ultimate augmented reality zombie shooter where you take control of a heavily-armed helicopter gunship and obliterate zombies from the sky.
  • Human Anatomy Atlas 2018 - Human Anatomy Atlas 2018 Edition is the go-to 3D anatomy reference app for healthcare professionals, students, and professors.
  • Conduct AR! - Conduct AR! is an epic augmented reality game of explosive railway action.
  • AirMeasure AR - This app lets you place virtual objects in augmented reality.
  • IKEA Place - IKEA Place lets you virtually 'place' IKEA products in your space.
  • CARROT Weather - CARROT Weather is a crazy-powerful weather app that delivers hilariously twisted forecasts.
  • Holo - Holo lets you add holograms of real people and animals into your world and take photos & videos to share with friends.
  • Surreal - People can customize any surrounding environment into their wildest dreams: expressing themselves in a new mixed reality space, as well as sharing with family, friends and other social outlets.
  • Wallr - Add pictures from your phone to the wall and pan and scale to find the best size and position.
  • Magic Sudoku - Solve Sudoku puzzles in realtime (uses CoreML, Vision, and ARKit to create a seamless experience).
  • Arcane Maze - Find your way out of maze.
  • Wavy Music - Experience music in augmented reality.
  • Waazy - Waazy is an augmented reality short video clips shooting and sharing app, making it possible to bring virtual characters and objects to the real world
  • Gruesome Gotham - Murder! Mystery! Intrigue! Get a glimpse at New York City’s 19th century crime scenes using augmented reality. Travel between six murderous moments on the map and see the deadly deeds unfold right before your eyes.
  • Floto - Flotogram is a fully featured AR Photography and Video app that places your photos directly into an Augmented Reality scene around you.
  • Horizon Explorer - Point your camera at a hill, village or landmark on the horizon and Horizon Explorer tells you its name, distance and altitude.
  • Imagipets AR - Play, feed and talk with imaginary dragon pets.
  • Pocket Balloon - Fly an air balloon by blowing on the screen of your phone. Search for landing zones in flat surfaces around you and land on them to earn points and compete with your friends.
  • AR Candle - AR Candle is an augmented reality candle blessing app.
  • Hotstepper - Augmented Reality Animated Wayfinder using Mapkit
  • BBC Civilisations - AR Museum in your house
  • AR Label Maker - place text labels in the real world. Supports saving, loading, and sharing
  • Pemoji - AR video app which lets you place your Bitmoji in real space
  • Climbing AR - Augmented Reality climbing planner for climbers that pre-plan before ascending the rock climb.
  • Rikskit - Multiplayer AR space. Draw, place 3D models from Google Poly, add images, add text, and play a mini-game in Riksroom.
  • AR Search - This app lets you search in your physical surroundings for any printed text and track the results in real-time, to give you the best search experience possible.
  • In The Walls - Uses real time face tracking and AR to put your face in any real world wall.
  • ThingstAR - An iOS app to explore Thingiverse using AR. You can also share AR models as usdz files.
  • watAR - Distort any real world surface with wave and raindrop effects.
  • Paint the City - Create street art in augmented reality and see it appear on the map.
  • AR MultiPendulum - Transforms an iPhone into an affordable AR headset.
  • Blood cells AR - discover cells in augmented reality
  • Graphite 3D - A collaborative drawing tool for modeling precise shapes in real spaces.

Tutorials

Resources

Contributing

Your contributions are always welcome! To add, remove, or change things on the list: Submit a pull request. See contribution.md for guidelines.