Although arguably on the low end of augmented reality experiences, mobile devices currently cover the largest market segment for augmented reality. Applications such as SnapchatInstagramYelp, and Pokémon Go have all offered rudimentary forms of augmented reality for some time now, though most users may not have realized it. Every time you found yourself adding bunny ears to your image on Snapchat or found Pikachu cavorting in your local park, you were using a primitive form of augmented reality on mobile. The image below displays a user video (the real world) augmented with a digital overlay within Instagram.

Though building augmented reality experiences on mobile devices was possible in the past, the release of ARKit and ARCore made doing so much easier for developers. ARKit and ARCore are the underlying development packages for building AR-based applications for iOS and Android, respectively. They have a similar feature set focused around making the digital holograms placed into a user’s environment simple for developers, and making these holograms appear more real to the end user — features such as plane detection (to allow objects to be placed correctly in space) or ambient light estimation (which detects the lighting of the real world and allows developers to mimic that lighting on their digital holograms).

ARKit and ARCore are not hardware devices; they’re software development packages that developers use to write applications for specific hardware. They interact with iOS and Android devices, but neither technology is hardware itself, and that’s a good thing. Instead of having to purchase a separate device to experience Apple’s and Google’s augmented reality mobile implementations, you can experience it using your existing mobile device, provided it meets ARCore or ARKit minimum technical requirements.