From bd1b8ae73a22b95fd8a05625b3d7c1d542f2ab12 Mon Sep 17 00:00:00 2001 From: danielkko <54288772+danielkko@users.noreply.github.com> Date: Fri, 21 May 2021 16:47:39 -0700 Subject: [PATCH] Create PRINCIPLES.MD (#696) Creating a page to communicate agreed-upon FURN principles --- PRINCIPLES.MD | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 PRINCIPLES.MD diff --git a/PRINCIPLES.MD b/PRINCIPLES.MD new file mode 100644 index 0000000000..a26cddf0e1 --- /dev/null +++ b/PRINCIPLES.MD @@ -0,0 +1,15 @@ +> THIS DOCUMENT IS A DRAFT + +# Operating Principles of Fluent UI React Native (FURN) +- FURN is multi modal – give customers what they want + - Some controls are JS + - Some are wrapped-native + - Some offer both implementations +- Cross-platform consistency is an important appeal, but exceptions should be made to account for uniqueness in native platforms – let the platform shines + - Align on names and props whenever appropriate, but don't be dogmatic + - Use Fluent UI Web as inspiration, but don't be blocked if full alignment is yet achievable + - Make local per-platform decisions when appropriate +- Some platforms are more similar than the others, and we should set expectations accordingly – drive higher consistency within a class than across classes + - Desktop OSes belong to a class + - Mobile OSes belong to another class + - Web is yet another class