From ac0e2350fb88af0ad7f3cd820417077a2955dcc1 Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Fri, 26 Feb 2021 00:30:35 +0100 Subject: [PATCH 01/21] use the wording of the Figma file --- docs/pages/branding/pricing.tsx | 40 +++++++++++++-------------------- 1 file changed, 16 insertions(+), 24 deletions(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index 5fd098fc41a086..04733ecc23b776 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -27,7 +27,7 @@ const startMaterialUi = [ src: '/static/branding/pricing/essential.svg', title: 'Essential', content: - 'Get started with the most popular and industry-standard UI libraries to build interfaces with React. Licensed MIT.', + 'Get started with the most popular and industry-standard UI library to build interfaces with React. MIT licensed.', actualPrice: 0, price: 0, priceFor: 'Free forever!', @@ -36,8 +36,8 @@ const startMaterialUi = [ isPriorityButton: false, featureTitle: 'Includes', features: [ - { id: 1, detail: 'Material-UI lifetime access and lifetime updates', isLink: false }, - { id: 2, detail: 'Community/StackOverflow', isLink: false }, + { id: 1, detail: 'Material-UI lifetime access and lifetime updates', isLink: false }, + { id: 2, detail: 'Access to the contributions of the community', isLink: false }, ], }, { @@ -49,13 +49,14 @@ const startMaterialUi = [ actualPrice: 249, price: 129, priceFor: 'per developer', - priceDescription: 'Capped after 10 developer/project', + priceDescription: 'Capped at 10 developers', buttonTitle: 'Learn More', - featureTitle: 'Everything in Essentials, plus', + featureTitle: 'Includes', isPriorityButton: false, features: [ + { id: 1, detail: 'Everything in Community edition', isLink: false }, { - id: 1, + id: 2, detail: ( Material-UI X package (grid and date picker included){' '} @@ -66,7 +67,7 @@ const startMaterialUi = [ isLink: true, href: 'https://material-ui.com', }, - { id: 2, detail: 'Perpetual license', isLink: true, href: 'https://material-ui.com' }, + { id: 3, detail: 'Perpetual license', isLink: true, href: 'https://material-ui.com' }, ], }, { @@ -78,7 +79,7 @@ const startMaterialUi = [ actualPrice: 0, price: 599, priceFor: 'per developer', - priceDescription: 'Capped after 10 developer/project', + priceDescription: 'Capped at 10 developers per project', buttonTitle: 'Learn More', featureTitle: 'Everything in Pro, plus Advanced support options', isPriorityButton: true, @@ -120,31 +121,22 @@ const benefits = [ image: '/static/branding/pricing/fast.svg', color: undefined, description: 'Faster development process with pre-built elements.', - order: { xs: 1, sm: 2, lg: 1 }, }, { - image: '/static/branding/pricing/customizable.svg', + image: '/static/branding/pricing/documentation.svg', color: 'info', - description: 'Highly customisable components.', - order: { xs: 2, sm: 1, lg: 2 }, + description: 'Outstanding documentation and support.', }, { - image: '/static/branding/pricing/community.svg', + image: '/static/branding/pricing/customizable.svg', color: undefined, - description: 'Strong community numbering 1M developers.', - order: { xs: 3 }, + description: 'Highly customisable components.', + order: { xs: 0, sm: 1, md: 0 }, }, { - image: '/static/branding/pricing/documentation.svg', + image: '/static/branding/pricing/community.svg', color: 'info', - description: ( - - Structured support documentation to help you{' '} - - Get started. - - ), - order: { xs: 4 }, + description: 'Strong community numbering 2m developers.', }, ]; From 8ef0c842d08359d1ac066a59c4ed98e90232ce6f Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Fri, 26 Feb 2021 00:58:22 +0100 Subject: [PATCH 02/21] add faq content --- docs/pages/branding/pricing.tsx | 119 +++++++++++++++++++++++++++++--- 1 file changed, 108 insertions(+), 11 deletions(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index 04733ecc23b776..1be1fe655e1a0e 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -430,29 +430,126 @@ function WhyEnterprises() { const faqData = [ { - summary: 'Why are you calling it early access?', - detail: - "We think you’ll love the components we've built so far, but we're planning to release more. We opened it up as soon as we had something useful, so that you can start getting value from it right away, and we'll be adding new features and components based on our own ideas, and on suggestions from early access customers.", + summary: 'Why are you calling it "early access"?', + detail: ( + + We think you’ll love the features we've built so far, but we're planning to release more. We + opened it up as soon as we had something useful so that you can start getting value from it + right away, and we'll be adding new features and components based on our own ideas, and on + suggestions from early access customers. + + ), }, { summary: 'How many licenses do I need?', - detail: - 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus exsit amet blandit leo lobortis eget.', + detail: ( + + The number of licenses purchased must correspond to the number of concurrent developers + contributing changes to the front-end code of a project that uses Material-UI X. However, + the number of developers required is capped at 10 developers for the Pro plan and 10 + developers/project for the Premium plan, developers above this limit don't need to be + licensed. +
+
+ Example 1. Company ‘A’ is developing an application named ‘AppA’. The app needs to render + 10K rows of data in a table and allow users to group, filter, and sort. The dev team adds + Material-UI X to the project to satisfy that requirement. 5 front-end and 10 back-end + developers are working on ‘AppA’. Only 1 developer is tasked with configuring and modifying + the data grid. The front-end developers and only are contributing code to the front-end. + Company ‘A’ purchases 5 licenses. +
+
+ Example 2. A UI development team at Company ‘A’ creates its own UI library for internal + development and includes Material-UI-X as a component. The team working on ‘AppA’ uses the + new library and so does the team working on ‘AppB’. ‘AppA’ has 5 front-end developers and + ‘AppB’ has 3. There are 2 front-end developers on the UI development team. Company ‘B’ + purchases 10 licenses. +
+ ), + }, + { + summary: 'How to remove the "Unlicensed product" watermark?', + detail: ( + + After you purchase a license, you'll receive a license key by email (if you didn't, check + the spam folder). Once you have the license key, you need to follow the{' '} + + instructions + {' '} + necessary to set it up. + + ), + }, + { + summary: 'Do developers have to be named?', + detail: ( + + No. We trust that you will not go over the number of licensed developers. Developers moving + on and off projects is expected occasionally, and the license can be transferred between + developers at that time. + + ), }, { summary: 'Am I allowed to use the product after 1-year subscription expires?', - detail: - 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus exsit amet blandit leo lobortis eget.', + detail: ( + + The licenses are perpetual, you are allowed to continue using the products even after the + 1-year subscription expires. However, you will be using the last product version released + before your license expired. You will lose access to new functionality and updates, as well + as technical support. +
+
+ If you wish to preserve your access to product updates (new features and fixes) and + dedicated support, you need to renew your license, please contact sales. +
+ ), }, { summary: 'What is the policy on redistributing the software?', - detail: - 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus exsit amet blandit leo lobortis eget.', + detail: ( + + Our developer licenses are royalty-free - the licensed entity can use our tools in: +
    +
  • Solutions for internal company use
  • +
  • Hosted applications
  • +
  • Commercial solutions deployed for end-customers by our customers
  • +
+ There are only 2 limitations that require additional discussion with our sales team: +
    +
  • + A product that exposes the components in a form that allows for using them to build + applications, for example, in a CMS or a design-builder. +
  • +
  • + Modules/components that DO NOT add significant primary functionality. Example: a theme + for a set of components that is sold as a separate product and includes the XGrid + components. In such cases, we offer reseller arrangements so that everyone has an + incentive to enter into a relationship. +
  • +
+ If your desired use falls under any of the three categories listed above, please contact + sales. We will be happy to discuss your needs and see what we can do to accommodate your + case. +
+ ), }, { summary: 'Do you offer discounts to educational and non-profit organizations?', - detail: - 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse malesuada lacus exsit amet blandit leo lobortis eget.', + detail: ( + + Yes, we offer a 50% discount on any product license to educational, non-profit, and charity + entities. This special discount cannot be combined with any other type of discount. +
+
+ To qualify for the discount, you need to send us a document clearly indicating that you are + a member of the respective institution. An email from your official account which bears your + signature is sufficient in most cases. +
+
+ For more information on how to qualify for a discount, please contact sales. +
+ ), }, ]; From a4a95c19d419f21bb659749d113c13a285f2b252 Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Fri, 26 Feb 2021 01:00:39 +0100 Subject: [PATCH 03/21] fix more content from Figma file --- docs/pages/branding/pricing.tsx | 21 +++++---------------- 1 file changed, 5 insertions(+), 16 deletions(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index 1be1fe655e1a0e..9c76931289eb6d 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -294,7 +294,7 @@ function WhatToExpect() { When you make a purchase{' '} @@ -319,23 +319,12 @@ function WhatToExpect() { - At the end of your subscription period, you will no longer be able to license the - latest versions or access support without renewing. This could range from 366 days - up to a 5-year term.{' '} - - Renewal pricing is substantially lower than first-year subscription costs - - . -
-
- Please note that while the use of the software is perpetual, access to new features, - support and corrective maintenance are not. We do not provide issue resolution to - versions older than 12 months. We roll bug fixes, performance enhancements, and - other improvements into new releases; we don't patch, fix or in any way alter older - versions. + While the use of the software is perpetual, access to new features, support and corrective maintenance are not. At the end of your subscription period, you will need to renew your license to access updates and support. Renewal pricing is 50% than first-year subscription costs. The renewal can range from 366 days up to a five-year term. +

+ We roll bug fixes, performance enhancements, and other improvements from the latest version. We don't patch, fix or cherry-pick fixes on older versions.
From 87df08f34df324be2e10e5ece0fe6e045a86e13c Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Fri, 26 Feb 2021 01:05:41 +0100 Subject: [PATCH 04/21] fix rendering of nasa logo --- docs/public/static/branding/pricing/nasa.svg | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/public/static/branding/pricing/nasa.svg b/docs/public/static/branding/pricing/nasa.svg index 0ff21549bbfd11..e0008638894192 100644 --- a/docs/public/static/branding/pricing/nasa.svg +++ b/docs/public/static/branding/pricing/nasa.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file From 4eb242d5a94713b38f1ab046a1e346ac09327fb2 Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Fri, 26 Feb 2021 01:08:02 +0100 Subject: [PATCH 05/21] the page should have a h1 --- docs/pages/branding/pricing.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index 9c76931289eb6d..4620d4c357e700 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -90,10 +90,11 @@ const startMaterialUi = [ ], }, ]; + function StartMaterialUi() { return ( - + Start using Material-UI for free! Date: Fri, 26 Feb 2021 01:12:04 +0100 Subject: [PATCH 06/21] polish --- docs/pages/branding/pricing.tsx | 2 +- docs/src/modules/branding/StartMaterialCard.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index 4620d4c357e700..54283fbba1b3fb 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -132,7 +132,7 @@ const benefits = [ image: '/static/branding/pricing/customizable.svg', color: undefined, description: 'Highly customisable components.', - order: { xs: 0, sm: 1, md: 0 }, + order: { xs: 0, sm: 1, lg: 0 }, }, { image: '/static/branding/pricing/community.svg', diff --git a/docs/src/modules/branding/StartMaterialCard.tsx b/docs/src/modules/branding/StartMaterialCard.tsx index 79c30cf09a4c39..5441fb1c81bed2 100644 --- a/docs/src/modules/branding/StartMaterialCard.tsx +++ b/docs/src/modules/branding/StartMaterialCard.tsx @@ -134,7 +134,7 @@ export default function StartMaterialCard(props: StartMaterialCardProps) { alt="" sx={{ height: 60, position: 'absolute', left: 40, top: -30, zIndex: 1 }} /> - + {title} From df45d1fab7c1ad84e555a6c6f32a2dc1c52ede22 Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Fri, 26 Feb 2021 01:13:10 +0100 Subject: [PATCH 07/21] prefer shorthands --- docs/pages/branding/pricing.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index 54283fbba1b3fb..11e65dd50cad20 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -192,7 +192,7 @@ function ComparePlans() { maxWidth: 670, mx: 'auto', textAlign: 'center', - padding: { xs: '0 15px', md: 0, lg: 0 }, + p: { xs: '0 15px', md: 0, lg: 0 }, mb: { sm: 6, xs: 0, lg: 10 }, fontSize: '18px', }} From ac71debf106576b6aaabc2d25168cc3de714ddf2 Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Fri, 26 Feb 2021 01:13:34 +0100 Subject: [PATCH 08/21] values are going up, lg adds nothing --- docs/pages/branding/pricing.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index 11e65dd50cad20..c466edf454e3ff 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -192,7 +192,7 @@ function ComparePlans() { maxWidth: 670, mx: 'auto', textAlign: 'center', - p: { xs: '0 15px', md: 0, lg: 0 }, + p: { xs: '0 15px', md: 0 }, mb: { sm: 6, xs: 0, lg: 10 }, fontSize: '18px', }} From 64084c9fd8d64c7fc27b9d0887fdbd9f96cd8f5e Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Fri, 26 Feb 2021 01:15:08 +0100 Subject: [PATCH 09/21] there are no margin by default --- docs/pages/branding/pricing.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index c466edf454e3ff..613e2119a7f2c1 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -183,7 +183,7 @@ function Benefits() { function ComparePlans() { return ( - + Compare Plans Date: Fri, 26 Feb 2021 01:15:58 +0100 Subject: [PATCH 10/21] this is shorter --- docs/pages/branding/pricing.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index 613e2119a7f2c1..9400f73662a884 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -679,7 +679,7 @@ const Support = () => { sx={{ color: 'grey5A', mt: { sm: 3, lg: 7 }, mb: { xs: 10, sm: 10, lg: 15 } }} > From startups to Fortune 500s, the world's - + best product teams use Material-UI. From 933c648fa1b97abc86146ab1e49cb85875e55445 Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Fri, 26 Feb 2021 01:16:42 +0100 Subject: [PATCH 11/21] values are going up (breakpoints), this has no effect --- docs/pages/branding/pricing.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index 9400f73662a884..a808ca02dd57b8 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -668,7 +668,7 @@ const Support = () => { sm={4} lg={2} key={customer.image} - sx={{ justifyContent: 'center', my: { xs: 4, sm: 4, lg: 0 } }} + sx={{ justifyContent: 'center', my: { xs: 4, lg: 0 } }} > From 6b41b0c5f45be4c8cd6ab2f69b3f8786c1ff70e8 Mon Sep 17 00:00:00 2001 From: Olivier Tassinari Date: Fri, 26 Feb 2021 01:17:01 +0100 Subject: [PATCH 12/21] shorter --- docs/pages/branding/pricing.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pages/branding/pricing.tsx b/docs/pages/branding/pricing.tsx index a808ca02dd57b8..d19e5312000f5d 100644 --- a/docs/pages/branding/pricing.tsx +++ b/docs/pages/branding/pricing.tsx @@ -644,7 +644,7 @@ const Support = () => { From community help to premium business support, - + we’re here to help.