New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Reworked getting started experience #800
Conversation
OK, this is ready for review now! As discussed in email I keep everything setup as-is today to minimize risk. I will focus on the setup piece for beta 2. |
Just to be clear: The present PR is the subset I am hoping we can land this week so it's ready before first beta. |
Staging site: https://flutter-website-staging.firebaseapp.com/ |
_includes/setup/path-mac-linux.md
Outdated
@@ -8,7 +6,7 @@ The steps for modifying this variable permanently for all terminal sessions are | |||
Typically you add a line to a file that is executed whenever you open | |||
a new window. For example: | |||
|
|||
1. Determine the directory where you cloned Flutter's git repo. You will | |||
1. Determine the directory where where you placed the Flutter SDK. You will |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
double where
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
|
||
To automatically format the code in the current source code window, right-click | ||
in the code window and select `Reformat with Dart style`. You can add a keyboard | ||
shortcut to this in Keymap section of IntelliJ Preferences. | ||
|
||
### Automatically formatting code in VS Code |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
visual studio code , or vs code ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Well, color me wrong. I thought it was "VSCode", but I checked and it's "VS Code". I have to change my docs. :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Microsoft uses both 'Visual Studio Code' and 'VC Code'. I personally much prefer the latter as it's less likely to cause confusion with "big" Visual Studio.
formatting.md
Outdated
|
||
To automatically format the code in the current source code window, right-click | ||
in the code window and select `Reformat with Dart style`. You can add a keyboard | ||
shortcut to this in Keymap section of IntelliJ Preferences. | ||
|
||
### Automatically formatting code in VS Code | ||
|
||
Automatic formatting of code is supported in Visual Studio Code if you |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for future: try phrasing like "Install the Dart Code plugin to automatically format your Dart code."
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
I love the new suggested section titles from Filip, PR and staging updated to those! As for the overview and exit pages, see email I sent |
_includes/sidebar.html
Outdated
<li><a href="/getting-started/">Create and run your first app</a></li> | ||
<li><a href="/ide-setup/">Setting up the IDE</a></li> | ||
<li><a href="/bootstrap-into-dart/">Bootstrap into Dart</a></li> | ||
<li><a href="/get-started/">1: Overview</a></li> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I still think this should go. /get-started/
as a destination should stay (so that we can't send people to a place "of no escape"), but shouldn't be linked from sidenav. It's a very underwhelming destination page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
_includes/sidebar.html
Outdated
<li><a href="/ide-setup/">Setting up the IDE</a></li> | ||
<li><a href="/bootstrap-into-dart/">Bootstrap into Dart</a></li> | ||
<li><a href="/get-started/">1: Overview</a></li> | ||
<li><a href="/get-started/install/">2: Install Flutter</a></li> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remove 'Flutter'. It's implicit.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
_includes/sidebar.html
Outdated
<li><a href="/bootstrap-into-dart/">Bootstrap into Dart</a></li> | ||
<li><a href="/get-started/">1: Overview</a></li> | ||
<li><a href="/get-started/install/">2: Install Flutter</a></li> | ||
<li><a href="/get-started/editor-configuration/">3: Editor configuration</a></li> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"Configure editor". It's weird to have a noun when other steps are verbs. Verbs are better.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
_includes/sidebar.html
Outdated
<li><a href="/get-started/install/">2: Install Flutter</a></li> | ||
<li><a href="/get-started/editor-configuration/">3: Editor configuration</a></li> | ||
<li><a href="/get-started/test-drive/">4: Test drive</a></li> | ||
<li><a href="/get-started/codelab/">5: Core concepts codelab</a></li> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"Write your first Flutter app". I believe it's much more appealing than "Core concepts codelab", and it's a verb.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
_includes/sidebar.html
Outdated
<li><a href="/get-started/editor-configuration/">3: Editor configuration</a></li> | ||
<li><a href="/get-started/test-drive/">4: Test drive</a></li> | ||
<li><a href="/get-started/codelab/">5: Core concepts codelab</a></li> | ||
<li><a href="/get-started/learn-more/">6: Learn more</a></li> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we should lose this from the sidenav. Only link it from the end of the codelab.
For independent "learn more", we'll have flutter.io/docs
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm going to keep this for now, havn't fully understood how /docs plays into this.
firebase.json
Outdated
"type": 301 | ||
}, | ||
{ | ||
"source": "/setup-ide", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This page doesn't exist. You probably meant https://flutter.io/ide-setup/.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch, fixed
get-started/3-configure-editor.md
Outdated
@@ -0,0 +1,85 @@ | |||
--- | |||
layout: page | |||
title: "Get Started: Editor Configuration" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Configure Editor
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
get-started/4-test-drive.md
Outdated
@@ -0,0 +1,174 @@ | |||
--- | |||
layout: page | |||
title: "Get Started: Test Drive an App" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure if we want "an App" there. You're test driving the tooling here, the SDK.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changed to just Test Drive
get-started/6-learn-more.md
Outdated
@@ -0,0 +1,26 @@ | |||
--- |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FYI, much of this work is duplicated in the new flutter.io/docs page (#817).
If you want, we could just link to that, and set up Google Analytics to track the funnel strictly (only people coming from codelab to the docs page count to the funnel's last step).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have not heard of that page before now (and don't see it staged anywhere), so hard for me to comment on that. The goal of this last learn more
step is not to offer an list of all docs; it's to offer a short, opinionated list of likely next steps.
get-started/2-install.md
Outdated
title: Flutter installation & setup | ||
permalink: /setup/ | ||
title: "Get Started: Install Flutter" | ||
permalink: /get-started/install/ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we add a link to test-drive at the end of this file as well? I know in theory people will go to setup-<platform>
and continue to test-drive
from there, but I think there'll inevitably be people who will expect a "next step" link here as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
formatting.md
Outdated
Install the `Dart-Code` plugin (see [Editor setup](/get-started/editor/) | ||
to enable automatic formatting of code in VS Code. | ||
|
||
To automatically format the code in the current source code window, right-click |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
VS Code has some settings that are probably relevant here:
editor.formatOnSave
editor.formatOnType
editor.formatOnPaste
All of these should work with Dart Code and I think we should encourage people to turn them on (they can do so globally, or just for Dart by using language-specific settings).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done
get-started/test-drive.md
Outdated
1. Specify a location to place the project, and press the blue OK button | ||
1. Wait for the project creation to continue, and the `main.dart` file to appear | ||
|
||
The above command creates a Flutter project directory called `myapp` that contains a simple demo |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This says myapp
but a few lines up it says firstapp
; I think they're supposed to be the same?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good catch, fixed
get-started/test-drive.md
Outdated
The above command creates a Flutter project directory called `myapp` that contains a simple demo | ||
app that uses [Material Components](https://material.io/guidelines/). | ||
|
||
In the project directory, the code for your app is in `myapp/lib/main.dart`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In some places in this text the paths are relative to the project (eg. lib/main.dart
in the hot reload section) but this one includes the project folder; I think they should be consistent (I think without the project folder prefix may be best, but don't feel strongly).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
formatting.md
Outdated
|
||
Automatic formatting of code is supported in IntelliJ if you have the | ||
`Dart` plugin (see [IntelliJ setup](/ide-setup/)). | ||
Install the the `Dart` plugin (see [Editor setup](/get-started/editor/) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This line has an unclosed paren
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed
formatting.md
Outdated
|
||
To automatically format the code in the current source code window, right-click | ||
in the code window and select `Reformat with Dart style`. You can add a keyboard | ||
shortcut to this in Keymap section of IntelliJ Preferences. | ||
|
||
### Automatically formatting code in VS Code | ||
|
||
Install the `Dart-Code` plugin (see [Editor setup](/get-started/editor/) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This one has unclosed paren too (also, it suggests editor page has a section in enabling automatic formatting, but I can't see it; though the next paragraph explains how to sort-of-automatically-but-not-on-type format).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fidex
get-started/editor.md
Outdated
|
||
### Install VS Code | ||
|
||
* [VS Code](https://code.visualstudio.com/), version 1.19 or later. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Currently we need 1.20.1 but we also bump along with Code updates pretty frequently (since things in Code change quite frequently) so it might be best not to mention this (or encourage latest stable)? Unlike with some IDEs, I don't think updating Code is a big deal (it doesn't bring new versions of .NET, for ex like Visual Studio does) so users probably won't be reluctant to do it (I think it auto-updates by default on all platforms too?).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I just updated it to 1.20.1. Would be nice if you could help update this when you take a new version dependency.
It'd be good if the selected editor persisted across pages (eg. when going from Configure Editor to Test Drive); maybe we should drop something in localStorage/cookie/whatever and then re-select on page loads (this way it could be carried around the whole site easily)? |
@DanTup: I don't think we have time to do that before merging. Can you open an issue? @mit-mit: Thanks, this looks really good. I actually liked the step numbers in the side navigation. That way it looked more like a flow and less like an assorted bunch of pages. @mjohnsullivan: Could you review, please? https://flutter-website-staging.firebaseapp.com/ |
@DanTup: Yeah, the Flutter team has opted to only have one Issues repo, and that's flutter/flutter. |
Makes sense! Done @ flutter/flutter#14888 |
FYI: I just ran this with #816 (checks inbound links) and found no issues. |
Re-work the getting started flow to:
Staging link: https://flutter-website-staging.firebaseapp.com/