# Snap for Developers > Documentation for Snap developer tools. Each platform has different capabilities — do not assume a feature on one platform exists on another. > > **Lens Studio** — Desktop application for creating AR Lenses. Supports face tracking, body tracking, hand tracking, world tracking, 3D objects, animations, materials, scripting (JavaScript/TypeScript), and the VFX and Material Editor. > > **Camera Kit** — SDK for integrating Snap AR Lenses into third-party iOS, Android, and Web apps. Provides camera session management, lens rendering, and lens scheduling. Does not support all Lens Studio features (e.g. no Spectacles-specific APIs and certain Snapchat-specific APIs). > > **Spectacles** — AR glasses platform. Supports hand tracking, spatial anchors, world query, depth sensing, voice input (ASR), Bluetooth, location, WebView, and multiplayer (Sync Kit). Uses TypeScript with Spectacles Interaction Kit (SIK) and UI Kit. Many APIs are Spectacles-only. > > **Snap Kit** — SDKs for social integration: Login Kit (OAuth), Creative Kit (sharing to Snapchat). > > **Marketing API** — Snapchat ads ecosystem APIs: Ads API, Ads Gallery API, Conversions API, and Public Profile API. Includes tutorials, business onboarding info, and full reference docs. > > **API Reference** — Lens Studio scripting API and Snapchat for Web embeds. > > Use this file as an index. To get full content for a page, fetch the linked .md file (e.g. /spectacles/get-started/introduction.md). ## API Reference - [Overview](/api/home.md): Find API references for each product. - [Lens API Deprecation](/api/lens-api-deprecation.md): Guide to deprecated Lens Studio APIs, their modern replacements, and the timeline for when deprecated APIs will be blocked. - [Assets](/api/lens-studio/Classes/Assets.md): Assets are resources imported into Lens Studio. See also: Importing and Updating Resources Guide - [Components](/api/lens-studio/Classes/Components.md): Components are attached to SceneObjects and define object behavior. See also: Inspector Panel - [Events](/api/lens-studio/Classes/Events.md): Events are triggered by certain criteria and can be bound in scripts to execute code. See also: Script Events Guide - [Other Classes](/api/lens-studio/Classes/OtherClasses.md) - [Providers](/api/lens-studio/Classes/Providers.md): Providers supply and control various resources within Lens Studio. - [Script Objects](/api/lens-studio/Classes/ScriptObjects.md): Script Objects represent script data. - [Enumerations](/api/lens-studio/Enumerations.md) - [Subscribe to events](/api/lens-studio/EventClass.md): The Event class allows you to register and unregister callbacks that are triggered when specific events occur in your Lens. - [Full API List](/api/lens-studio/Full-API-List.md): Find every Lens Studio class in the Full API List below. Explore different types in the Classes folder in the sidebar. - [Global Methods](/api/lens-studio/GlobalMethods.md): Methods available in the global scope. These methods can be called from anywhere. - [Global Properties](/api/lens-studio/GlobalProperties.md): Properties accessible from the global object. - [Scripting Input Types](/api/lens-studio/InputTypes.md): These are the basic property types usable in scripts with //@input. - [API Reference for Unity](/api/snap-kit/unity.md): First time here? Visit the Snap Kit developer portal to add your application, exchange keys, and get set up with the proper API credentials. - [Introduction](/api/snapchat-for-web/social-plugins/embedding-web-content.md): Every day, people use Snapchat to express themselves, live in the moment, and learn about the world around them — whether that’s adding a Lens to a Snap, posting to Stories, Spotlight, or the Snap Map, and more. Web Embeds for Lenses, Spotlight videos, Public Stories, and Public Profiles enable Snapchat experiences to be embedded into articles or websites. - [Introduction](/api/snapchat-for-web/social-plugins/how-to-backlink-for-developers.md): Sharing your public Snapchat profile allows visitors to discover your content organically and helps grow your audience. Here’s a step-by-step guide on linking to your profile from your own website to maximize visibility. - [Introduction](/api/snapchat-for-web/social-plugins/introduction.md): Welcome to Snapchat for Web Social Plugins! This documentation offers a detailed guide on integrating Snapchat features into your website or application. Share content from your site to Snapchat and embed Lenses, Spotlights, Stories, or Profiles into your web pages. - [Share Sheet API](/api/snapchat-for-web/social-plugins/share-link-to-snapchat.md): Introduction ## Camera Kit - [Communication And Marketing Guidelines](/camera-kit/app-review/communication-guidelines.md): Guidelines - [Design Guidelines and Branding Requirements](/camera-kit/app-review/design-guide.md): Depending on how Camera Kit is used, Snap attribution may be required or optional. See the Attribution Requirements Overview below for details. - [Releasing Your Camera Kit App](/camera-kit/app-review/release-app.md): Congratulations, you've completed your Camera Kit integration, published some Lenses, and are now ready to release your app to the world! - [Terms of Service Notice](/camera-kit/app-review/terms-of-service-notice.md): To comply with privacy laws in various territories, it is required that customers of your Camera Kit integration review and accept Snap's terms of service. - [AR Content For Camera Kit](/camera-kit/ar-content/ar-overview.md): Through the Camera Kit SDK, you gain the power and capabilities of the Snap AR platform in your app, but please note that you are responsible for creating or acquiring the AR content. This is your opportunity to customize or build the AR content that best matches the interests and goals of your community. - [Build Lenses in Lens Studio](/camera-kit/ar-content/build-lenses.md): Lens Studio - [Buy Lenses from Creator Marketplace](/camera-kit/ar-content/buy-lenses.md): Creator Marketplace - [Communicating Between App and Lenses](/camera-kit/ar-content/guides/communicating-between-lenses-and-app.md): Overview - [Calling HTTP Endpoints From a Lens](/camera-kit/ar-content/guides/lens-http-requests.md): Overview - [Camera Kit Lens Templates](/camera-kit/ar-content/guides/templates.md): Overview - [Manage Lenses for Camera Kit](/camera-kit/ar-content/lens-scheduler.md): Lens Scheduler for Camera Kit enables you to manage and schedule Lenses for delivery to your application. - [Lens Studio Compatibility](/camera-kit/ar-content/lens-studio-compatibility.md): As new versions of Lens Studio are released you will need to be mindful of which version of Camera Kit your customers are using and which version of Lens Studio your Lenses were published from. - [Upload Lenses for Camera Kit](/camera-kit/ar-content/upload-lenses.md): Whether you have chosen to get Lenses through a Lens Pack or create your own Lenses, they will need to be published from Lens Studio into your Camera Kit application. For publishing your Lenses for Camera Kit usage, the Lens will need to be submitted to a Lens Folder.. - [Camera Kit Changelog](/camera-kit/getting-started/changelog.md): Long Term Support Versions - [Frequently Asked Questions](/camera-kit/getting-started/faq.md): Content Creation and Upload - [Long Term Support](/camera-kit/getting-started/lts.md): Long Term Support (LTS) SDK versions are a commitment from Camera Kit to provide fixes for 1 year after initial release, including critical bug fixes and security patches. - [Portal and Project Setup](/camera-kit/getting-started/setting-up-accounts.md): This page covers the steps to setup the accounts required to enable Camera Kit for your application. This page includes information on: - [Camera Kit](/camera-kit/getting-started/what-is-camera-kit.md): Camera Kit brings the power of Snap's AR platform to your app, letting you integrate Lenses and AR experiences on iOS, Android, and Web. - [Camera Kit](/camera-kit/home.md): Camera Kit SDK documentation—integrate Snap's AR platform into your iOS, Android, or Web application. - [Android SDK Setup](/camera-kit/integrate-sdk/android/android-configuration.md): This short guide will walk through the basics of the Camera Kit Android SDK. We recommend reading this entire page as you follow along to add a simple Camera Kit integration to your app! - [Android Reference UI Integration](/camera-kit/integrate-sdk/android/guides/android-reference-ui.md): There are multiple options to integrate Camera Kit in your Android application. We are discussing some of the common techniques here. For more options and detailed code examples, check out our sample app repository on Snapchat GitHub account here. - [Send Image from App to Lens](/camera-kit/integrate-sdk/android/guides/import-image-tutorial.md): Overview - [Preview Your Lenses on Device](/camera-kit/integrate-sdk/android/guides/in-app-lens-testing.md): Overview - [Inclusive Camera](/camera-kit/integrate-sdk/android/guides/inclusive-camera.md): Overview - [Portrait Mode](/camera-kit/integrate-sdk/android/guides/portrait-mode.md): Overview - [Customize Attribution to Snap](/camera-kit/integrate-sdk/android/guides/powered-by-snap.md): Overview - [Prefetch Lenses](/camera-kit/integrate-sdk/android/guides/prefetch-lenses.md): Overview - [Present Single Lens in Camera Kit](/camera-kit/integrate-sdk/android/guides/present-single-lens.md): Overview - [Send Image from App to Lens](/camera-kit/integrate-sdk/ios/guides/import-image-tutorial.md): Overview - [Preview Your Lenses on Device](/camera-kit/integrate-sdk/ios/guides/in-app-lens-testing.md): Overview - [Inclusive Camera](/camera-kit/integrate-sdk/ios/guides/inclusive-camera.md): Overview - [Building Mirrors](/camera-kit/integrate-sdk/ios/guides/mirrors.md): If you're interested in building AR Mirrors, there are a couple of important considerations to keep in mind. - [Portrait Mode](/camera-kit/integrate-sdk/ios/guides/portrait-mode.md): Overview - [Customize Attribution to Snap](/camera-kit/integrate-sdk/ios/guides/powered-by-snap.md): Overview - [Prefetch Lenses](/camera-kit/integrate-sdk/ios/guides/prefetch-lenses.md): Overview - [Present Single Lens in Camera Kit](/camera-kit/integrate-sdk/ios/guides/present-single-lens.md): Overview - [iOS SDK Setup](/camera-kit/integrate-sdk/ios/ios-configuration.md): Camera Kit brings Snap's augmented reality platform to your application. This section covers the steps for importing and integrating the SDK into your app. - [Amazon IVS Integration](/camera-kit/integrate-sdk/web/guides/amazon-ivs-integration.md): Overview - [Camera Kit Web for Beginners](/camera-kit/integrate-sdk/web/guides/camera-kit-web-for-beginners.md): Overview - [Lens and Camera Selectors](/camera-kit/integrate-sdk/web/guides/lens-and-camera-selectors.md): In your web application, you may want to implement a lens selector as well as a camera selector for users who have more than one camera available to them. In this example, lenses and video devices are rendered into their own select menus. - [Preview Your Lenses on Web](/camera-kit/integrate-sdk/web/guides/push-2-web.md): Overview - [React Camera Kit](/camera-kit/integrate-sdk/web/guides/react-camera-kit.md): @snap/react-camera-kit is the official React wrapper for the Camera Kit Web SDK. Instead of managing SDK bootstrapping, sessions, and sources imperatively, you get declarative React components and hooks that handle the lifecycle for you. - [Recording Video](/camera-kit/integrate-sdk/web/guides/recording-video.md): This guide serves as an example of how you may record video of your Camera Kit session's output canvas. - [Remote API](/camera-kit/integrate-sdk/web/guides/remote-api.md): Overview - [Switching Between Front and Back Cameras](/camera-kit/integrate-sdk/web/guides/switching-between-front-and-back-cameras.md): When your web application is used on mobile devices, you might want to allow the user to switch between the front and back camera. - [Web Considerations](/camera-kit/integrate-sdk/web/guides/web-considerations.md): Performance Considerations & Limitations - [Web SDK Setup](/camera-kit/integrate-sdk/web/web-configuration.md): This short guide will walk through the basics of the Camera Kit Web SDK. We recommend reading this entire page as you follow along to add a simple Camera Kit integration to your application. - [Need Help?](/camera-kit/support.md): Looking for Support? Start with the Snap AR Discord! ## Lens Studio - [2D Animation](/lens-studio/assets-pipeline/2d/2d-animation.md): Lens Studio allows you to import a sequence of textures or animated GIFs for 2D animations. The texture sequence is converted to an optimized sprite sheet and can be used as a texture asset in your project. Playback can be controlled by enabling Always Play or scripting when and how often the animation plays. - [GIPHY Import](/lens-studio/assets-pipeline/2d/giphy-import.md): You can directly import content from GIPHY inside Lens Studio. This guide walks you through the steps for importing a GIPHY GIF as a Face Image, Screen Image, World Image, or a Resource. - [Image](/lens-studio/assets-pipeline/2d/image.md): Images are 2D planes that can be added to your Lens. They can be added to the 3D scene, attached to the screen, attached to the face and more. - [Media Picker Texture](/lens-studio/assets-pipeline/2d/media-picker-texture.md): The Media Picker Texture asset allows you to use images or videos from your device's camera roll it as a texture in your Lens. You can have the picker show all images, all videos, all images with faces in them, or a combination of these options. You can use the texture anywhere you can use a regular imported texture: on an Image component, on a material, and elsewhere. - [Video](/lens-studio/assets-pipeline/2d/video.md): Lens Studio supports video import. This guide will walk you through how to work with videos in Lens Studio. - [3D Animation](/lens-studio/assets-pipeline/3d/animation/3d-animation.md): The animation system in Lens Studio supports skeletal, transform, and blend shape animations for bringing 3D content to life. - [Vertex Animation](/lens-studio/assets-pipeline/3d/animation/vertex-animation.md): Vertex animation or PLA (Point Level Animation) allows you to animate the individual vertices of an object. Vertex animation can be useful for creating complex or simulated animations. For example, it can be used to create a flag waving animation using cloth simulation. - [Vertex Animation Textures Guide](/lens-studio/assets-pipeline/3d/animation/vertex-animation-textures-guide.md): The Vertex Animation Textures asset, commonly known as VAT, enables you to render simulations from SideFX's Houdini and import them into Lens Studio. This asset is useful for dynamic simulations that would be difficult to animate, such as fluids, or require a lot of data to store and render, such as softbody or rigidbody simulations. - [3ds Max, 3D Object Export](/lens-studio/assets-pipeline/3d/exporting-content/3ds-max-3d-object-export.md): This guide will walk through how to use 3ds Max to export a 3D model to the FBX format so that it can be imported into Lens Studio. For the purposes of this guide, we're using 3ds Max 2017. That said, any 3D tool that can export to FBX should be able to export models that can be imported into Lens Studio. - [Blender, 3D Object Export](/lens-studio/assets-pipeline/3d/exporting-content/blender-3d-object-export.md): Blender - [Cinema 4D, 3D Object Export](/lens-studio/assets-pipeline/3d/exporting-content/cinema-4d-3d-object-export.md): This guide will walk through how to export a 3D model from Cinema4D to the FBX format, so that it can be imported into Lens Studio. For the purposes of this guide we're using Maxon's Cinema 4D R17. That said, any 3D tool that can export to FBX should be able to export models that can be imported into Lens Studio. - [Maya, 3D Object Export](/lens-studio/assets-pipeline/3d/exporting-content/maya-3d-object-export.md): This guide will walk through how to export a 3D model to the FBX format, so that it can be imported into Lens Studio. For the purposes of this guide, we're using Autodesk's Maya 2016. That said, any 3D tool that can export to FBX should be able to export models that can be imported into Lens Studio. - [3D Object Export](/lens-studio/assets-pipeline/3d/exporting-content/overview.md): Introduction - [Qlone, 3D Object Export](/lens-studio/assets-pipeline/3d/exporting-content/qlone-3d-object-export.md): Qlone allows you to scan an object in 3D using your phone. You can directly export a Lens Studio Project within the app and then publish it as a Lens using Lens Studio. - [FBX, 3D Object Import](/lens-studio/assets-pipeline/3d/importing-content/fbx-3d-object-import.md): Lens Studio supports the import of 3D models in the FBX format. This guide covers how to import an FBX file into a Lens Studio project. - [glTF, 3D Object Import](/lens-studio/assets-pipeline/3d/importing-content/gltf-import.md): Lens Studio supports importing the glTF file format for 3D models. This guide covers how to import a glTF file into a Lens Studio Project. - [OBJ, 3D Object Import](/lens-studio/assets-pipeline/3d/importing-content/obj-3d-object-import.md): Lens Studio supports importing the OBJ file format for 3D models. The OBJ file format supports 3D geometry and texture but does not support animation. Generally speaking, if you're exporting your own models, it's recommended to use the FBX format by following our 3D Object Export guides. - [3D Object Import](/lens-studio/assets-pipeline/3d/importing-content/overview.md): Introduction - [Photoshop Texturing](/lens-studio/assets-pipeline/3d/texturing/photoshop-texturing.md): Material is a resource in Lens Studio that can be applied to a 3D model to control and customize its visual look. Lens Studio has some preset materials that you can add to your 3D model to change the way your model looks. - [Substance Texturing](/lens-studio/assets-pipeline/3d/texturing/substance-texturing.md): Using Substance Painter - [Asset Library](/lens-studio/assets-pipeline/asset-library/asset-library-overview.md): The Asset Library is a repository of a wide variety of assets and helpers that you can use to build your unique Lens Experiences or to refine your Lenses. - [Asset Library Publishing Guide](/lens-studio/assets-pipeline/asset-library/asset-library-publishing-guide.md): This guide walks you through preparing assets for the Lens Studio Asset Library—from how to structure your resources to exporting and submitting them. Following these guidelines improves the chance your asset is approved and useful to other creators. - [Importing and Exporting Resources](/lens-studio/assets-pipeline/importing-and-exporting-resources.md): This guide details how to import resources into your Lens Studio project and export resources, including hierarchies from the scene. - [Lens Studio University](/lens-studio/education-resources/lens-studio-university.md): Each summer, the Lens Studio team recruits talented interns for various roles, including graphics engineering, game engine development, desktop development, AR engineering, and more. Explore these exciting internship opportunities and learn how you can be part of our innovative team by visiting Snap Careers. - [Body Parallax Component](/lens-studio/examples/components/body-parallax-component.md): The Body Parallax Component brings static images to life by adding subtle background motion that creates a sense of depth and movement behind the character’s body. - [Text3D Animator](/lens-studio/examples/components/text3d-animator.md):