diff --git a/README.md b/README.md index 238c8113e3..2e936469d8 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,106 @@ +# Project Reunion + +Project Reunion provides functionality that supports all your apps on Windows. + +## Roadmap + +We're following a [roadmap](docs/roadmap.md) that gets us to building a v1.0 of Reunion exploring +some basic common features. You can help by filing issues for features you'd like to see! + +## Documentation + +* [Roadmap](docs/roadmap.md) - where we're going +* [High-level overview](docs/overview.md) - why we're doing this, how you can use it +* [Using Reunion](docs/developer-guide.md) - how to use Reunion in your app +* [Contributor/developer Guide](docs/contributor-guide.md) - how to contribute to Reunion +* [Implementation/API design Guide](docs/implementation-guide.md) - how to define and implement + Reunion components. +* [FAQ](docs/faq.md) - frequently asked questions about Project Reunion + +## Features + +### Benefits + +_Windows and Reunion loves all your apps_ + +The Reunion Framework helps you use modern features of Windows across all your apps, across all your +users. You'll get access to modern features of the Windows Application Platform at your own pace. +Improve power use and uphold privacy requirements in your existing apps. Update your app to use +APIs that automatically switch to fill-in support on older versions of Windows. Get access to +more of Windows from your UWPs. Connect to notifications from your Win32 applications. + +1. Reunion stays up to date automatically as new versions are available without recompilation or +updates to your app. + +2. Reunion APIs are backwards-compatible across a range of Windows versions and provide a clear +message to you that an API might not be supported. + +3. Reunion works for packaged, unpackaged, UWP, Desktop Bridge, and bring-your-own identity apps. +Write your app or framework code once and use it everywhere. + +4. Reunion helps you incrementally adopt powerful Windows features like AppContainer, Desktop +Bridge, Identity, and more. + +### API Support + +Reunion supports many of the APIs in Windows already. See below for a list and links to both +definition and sample code. + +| Area | Description | IDL | Sample | +| ------------- | ------------------------------------------------------------- | --- | ------ | +| Startup Tasks | Schedule your app to run when the user logs in | | | +| App Lifecycle | Events tracking app start & stop requests, login/out, restart | | | +| Storage | Store your app's data in a central location per user | | | + + +### Version Support + +At this time, Reunion supports Windows `TargetPlatformVersion` >= 10.0.18362 (Windows 10 1809) or +greater. + +Your app's users can be on any of the following supported Windows 10 versions: + +* Windows Insider Previews +* May 2019 Update (18362 aka "19H1") +* October 2018 Update (17763 aka "Redstone 5") +* April 2018 Update (17134 aka "Redstone 4") +* Fall Creators Update (16299 aka "Redstone 3") + +When features have partial implementations on older versions of Windows they will have an +[`IsSupported`](docs/developer-guide.md) method indicating what level of support is present. + +## Data/Telemetry + +This project collects usage data and sends it to Microsoft to help improve our products and services. See the [privacy statement](privacy.md) for more details. + +For more information on telemetry implementation see the [developer guide](docs/developer-guide.md#Telemetry). + +# Quick Start + +## Using Reunion in Your Apps + +There are [multiple samples available](samples/README.md). Briefly the steps are: + +1. [Add a reference](docs/developer-guide.md#Packages) to the Microsoft.Reunion package +2. [Update your code](docs/developer-guide.md#UpdateYourApp) to use Reunion functionality +3. [Deploy your app](docs/developer-guide.md#DeployingReunion) with Reunion + +## Requesting Reunion Functionality + +File a [new issue!](https://github.com/microsoft/ProjectReunion/issues/new/choose) Tell us what problem you're +trying to solve, how you've tried to solve it so far, and what would be the ideal solution for your app. Bonus +points if there's a gist or existing repo we can look at with you. There's [a fuller description](docs/expanding-reunion.md) +of how this works, how you & the community can help, and more available. + +## Contributing to Union + +First, read the [Contributing](#Contributing) section. Then: + +1. Create a fork of this repo then clone it +1. Start Visual Studio 2019 on [ProjectReunion.sln](./ProjectReunion.sln) +1. [Modify the code](docs/implementation.md#UpdatingReunion) you'd like to see changed +1. [Add tests](docs/implementation.md#Testing) for your fix or functionality +1. [Create a pull request](docs/implementation.md#PullRequest) from your fork to this repo # Contributing