Exploring the Visual Studio App Center Data Roadmap
At Build 2019, we released App Center Data in public preview after starting development earlier this year. The App Center Data service enables you to easily scale, persist, and sync your data in the cloud for your mobile applications. App Center Data takes the work out of managing your data across different devices and platforms. Segmenting your data and associating it with a user’s identity can be easily done in a few steps. You can easily curate an offline experience in your app, performing both offline reads and writes with our easy-to-use modular App Center client SDKs.
App Center Data combines the mobile focus and “magic” of App Center with the scalability and power of Microsoft’s NoSQL database service known as Cosmos DB. You can completely control your data with the confidence it will always be available.
How it All Works
The App Center Data service includes both a portal experience and client SDKs, which empowers you to take control of your data and sync it in the cloud.
Using the App Center portal, you can easily provision a new, or connect and existing, Cosmo DB database with just a few steps. Our portal wizard simplifies the process of creating a Cosmos DB database and enables you to get started with just a few quick steps.
Our client SDKs are where most of the magic happens. Using the client SDKs, you can create, read, update, delete, and list, with pagination, your documents. We give you complete control over both your public and user data using the SDKs. Our SDK supports offline reads and writes on your data, which allows you to create highly responsive and available applications. You can even tie your data to a user’s identity using App Center Auth in tandem with App Center Data, which makes managing data on a user-level extremely easy. Whether you’re trying to manage global configuration settings in your app, tie content to your users, or curate an offline experience in your app, it’s all possible using the App Center Data SDKs.
Using the SDK is simple. You define a model, instantiate it, and create a document. From there, you can read, update, or delete the document.
We currently support Android, iOS, and Xamarin. We’re currently working on React Native and have started investigating potential .NET and Unity support as well. If there’s a platform you would like to see us support, shoot us a feature request on the App Center Repo.
As mentioned earlier, we are in public preview and have several great features on our roadmap, which we’re planning on implementing before GA. One huge addition coming soon to our SDK is offline list functionality, which gives offline persistence to the list command. This will bring offline persistence to all API calls in our SDK. I’ll be detailing the additional items in this post as well. We have many exciting changes afoot in App Center Data.
Currently our roadmap has a few items I would like to outline in this post:
1. Offline List Support
Today, we support offline persistence with document creation, reading, updating, and deletion. We’re bringing this functionality to our list command as well, which will enable you to have offline persistence when fetching a list of documents. If connectivity is lost, your list will be stored locally on the client for offline reads.
2. Metrics Explorer
Monitor your data. The Metrics explorer is an in-portal dashboard that gives you various metrics associated with your data such as write latency, ready latency, traffic, and pricing data.
3. Bring Your Own Identity
Identity can be tied to users via App Center Auth, which is how you utilize the user document functionality. Currently, we only support Azure Active Directory B2C. We’re working on introducing Bring your own Identity functionality. This will enable developers to connect and use other popular identity and access management providers such as Auth0, Firebase Authentication, Ping Identity, and Azure Active Directory with App Center Auth and Data.
4. Data Explorer
View, update, and query your data directly in the App Center portal. The Data explorer gives you CRUD access over public documents and user documents.
5. Free Tier
We’re working on introducing a free tier that will enable you to use App Center Data without worrying about cost. Currently, our “Getting Started” tier today starts at about $23 USD/month. We would like to eliminate the up-front cost for users who would like to try App Center Data.
6. Shared Documents
Today we only have two types of documents: Public documents, which are read-only by all users, and User documents, which are read-write by an authenticated user. Shared Documents would enable different authenticated users or groups to write to the same document.
7. SDK Improvements
We have several improvements planned for our SDK, such enhancing our conflict resolution, implementing subscriptions & listeners, real-time updates, and query support.
One of the biggest goals the App Center team has in our public preview is to get feedback. Managing your data is often looked at as a black box, where the scenarios to account for are endless. The App Center team aims to fix that with our Data service. We know that some scenarios are more important than others and we need your help! We want to ensure we’re solving the real problems you have every day in your development life cycle. Our roadmap is completely public, and we encourage developers to post feature requests, feedback, or any bugs you may come across. Even if there’s something on our roadmap that you want to see done, let us know! This helps us prioritize the existing items we plan on executing.
One important thing to note is that our roadmap isn’t fixed. We aim to be transparent with our planning and want you to help us shape the work we do. We triage and investigate every single feature request we get in the App Center repo. Given enough interest, we do our best to get it prioritized. We want to empower you to help us fill the gaps and create an experience that you love.
Getting Started is easy. Head over to App Center. If you’re not a current App Center user, signing up and getting everything up and running doesn’t take much time. We look forward to hearing from you!