For sample applications using Project Rome, check out the SDK table below, or visit the Project Rome samples repo.
About Project Rome
Project Rome allows developers to write apps that can run on multiple devices and travel with the user as they switch between devices.
Project Rome includes features exposed via Microsoft Graph and platform-specific native SDKs. These features enable multiple cross-device and connected-device capabilities, allowing your apps to be centralized around a logged-in user identity. Features associated with Project Rome include but are not limited to user activities, notifications, device relay, and nearby share.
Choosing between native APIs and Graph APIs
Some scenarios are available through both the native platform SDKs and REST APIs via Microsoft Graph. In general, the REST APIs enable quick and simple implementation of the Project Rome features. However, there are some advantages to using platform-specific implementations:
The platform SDKs provide an object model in the native language, local storage, and a publish-subscribe pattern to update the app when server-side information changes.
If your app runs on Windows (UWP or Win32 apps), the platform SDK provides a number of additional features, such as using the users' default account and automatically tracking user engagement.
If you plan to use other Project Rome features that are only available through the platform SDKs, you may wish to implement each of the features in the same way.
Some other scenarios are enabled by using a combination of Microsoft Graph APIs and client SDKs. An example of this is Notifications. In this case, MS Graph API is used to publish notifications from app server side, and the native-platform client SDKs are utilized to receive and manage notifications in each client-side native apps.
SDK
Project Rome is currently implemented for the below platforms. Follow the links for samples and SDK downloads.
Learn how to build and distribute Microsoft Teams apps that retrieve user information using the Microsoft Graph API. Practice building and deploying apps in the guided project at the end of the learning path.