diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 101dfb2..0d6142e 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -2,7 +2,7 @@
 
 ## Ways you can contribute
 
-You can help the Dart project in many ways, in addition to contributing code. For example, you can [report bugs](http://dartbug.com), ask and answer [Dart questions on StackOverflow](http://stackoverflow.com/questions/tagged/dart), and improve the documentation.
+You can help the Dart project in many ways, in addition to contributing code. For example, you can [report bugs](https://dartbug.com), ask and answer [Dart questions on StackOverflow](https://stackoverflow.com/questions/tagged/dart), and improve the documentation.
 
 If you'd like to improve the documentation, you have three options:
 
@@ -69,7 +69,7 @@
 git cl upload -s
 ```
 
-The above command returns a URL for the review. Attach this review to your issue in http://dartbug.com
+The above command returns a URL for the review. Attach this review to your issue in https://dartbug.com
 
 If you have commit access, when the review is done and the patch is good to go, submit the patch on https://dart-review.googlesource.com:
 
@@ -84,7 +84,7 @@
 
 If you do not have commit access, a Dart engineer will commit on your behalf, assuming the patch is reviewed and accepted.
 
-More detailed instructions for the `git cl` tools available on http://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_creating_uploading_a_cl
+More detailed instructions for the `git cl` tools available on https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_creating_uploading_a_cl
 
 ## For committers: Merging external contributions
 
@@ -99,7 +99,7 @@
 The source code of Dart follows the:
 
   * [Google C++ style guide](https://google.github.io/styleguide/cppguide.html)
-  * [Dart style guide](https://www.dartlang.org/articles/style-guide/)
+  * [Dart style guide](https://dart.dev/guides/language/effective-dart/style)
 
 You should familiarize yourself with those guidelines.
 
@@ -114,6 +114,6 @@
 
 ## The small print
 
-Contributions made by corporations are covered by a different agreement than the one above, the [Software Grant and Corporate Contributor License Agreement](http://code.google.com/legal/corporate-cla-v1.0.html).
+Contributions made by corporations are covered by a different agreement than the one above, the [Software Grant and Corporate Contributor License Agreement](https://cla.developers.google.com/about/google-corporate).
 
 We pledge to maintain an open and welcoming environment. For details, see our [code of conduct](https://dart.dev/code-of-conduct).
diff --git a/README.md b/README.md
index 27cbb2b..4b4ee5b 100644
--- a/README.md
+++ b/README.md
@@ -57,8 +57,8 @@
 [website]: https://dart.dev
 [license]: https://github.com/dart-lang/sdk/blob/master/LICENSE
 [repo]: https://github.com/dart-lang/sdk
-[lang]: https://www.dartlang.org/docs/dart-up-and-running/ch02.html
-[tools]: https://www.dartlang.org/tools/
+[lang]: https://dart.dev/guides/language/language-tour
+[tools]: https://dart.dev/tools
 [codelab]: https://dart.dev/codelabs
 [dartbug]: http://dartbug.com
 [contrib]: https://github.com/dart-lang/sdk/blob/master/CONTRIBUTING.md
diff --git a/docs/language/informal/assert-in-initializer-list.md b/docs/language/informal/assert-in-initializer-list.md
index 38e523d..6fb33d6 100644
--- a/docs/language/informal/assert-in-initializer-list.md
+++ b/docs/language/informal/assert-in-initializer-list.md
@@ -7,7 +7,7 @@
 [`609d26a`](https://github.com/dart-lang/sdk/commit/609d26a2274ccde0f74725f4df7e081ebc8ea020);
 this document is now background material.
 
-(See: http://dartbug.com/24841, http://dartbug.com/27141)
+(See: https://dartbug.com/24841, https://dartbug.com/27141)
 
 In some cases, you want to validate your inputs before creating an instance, even in a const constructor. To allow that, we have tested the possibility of allowing assert statements in the initializer list of a generative constructor.
 
diff --git a/docs/language/informal/optional-new-const.md b/docs/language/informal/optional-new-const.md
index 8e100a7..e249a63 100644
--- a/docs/language/informal/optional-new-const.md
+++ b/docs/language/informal/optional-new-const.md
@@ -47,7 +47,7 @@
 This syntax will only apply to unprefixed constructor invocations (at least unless we also introduce type-instantiated generic method tear-offs).
 
 ### Prior discussion
-See http://dartbug.com/4046 and https://github.com/lrhn/dep-const/blob/master/proposal.md
+See https://dartbug.com/4046 and https://github.com/lrhn/dep-const/blob/master/proposal.md
 
 The syntax for a constructor call is less ambiguous now than when these proposals were drafted, because generic methods have since been added to the language. The language has already decided how to resolve parsing of the otherwise ambiguous `Bar(Foo<int, bar>(42))`.
 
@@ -103,7 +103,7 @@
 
 ### Prior discussion
 
-See: http://dartbug.com/5680, http://dartbug.com/18241, http://dartbug.com/20750.
+See: https://dartbug.com/5680, https://dartbug.com/18241, https://dartbug.com/20750.
 
 ### Informal specification
 
@@ -258,7 +258,7 @@
 
 ### Prior discussion
 
-See: [issue 18241](http://dartbug.com/18241)
+See: [issue 18241](https://dartbug.com/18241)
 
 ### Informal specification
 
@@ -338,7 +338,7 @@
 
 but doesn't allow `Foo<T>` by itself, not even for the non-named constructor.
 
-The syntax is available, and needs to be recognized in most settings anyway, so we could allow it as a type literal expression. That would allow the expression `List<int>` to evaluate to the *Type* object for the class *List<int>*. It's been a long time (refused) request: [issue 23221](http://dartbug.com/23221).
+The syntax is available, and needs to be recognized in most settings anyway, so we could allow it as a type literal expression. That would allow the expression `List<int>` to evaluate to the *Type* object for the class *List<int>*. It's been a long time (refused) request: [issue 23221](https://dartbug.com/23221).
 
 The syntax will also be useful for instantiated generic method tear-off like `var intContinuation = future.then<int>;`
 
diff --git a/docs/newsletter/20170728.md b/docs/newsletter/20170728.md
index d6a0c05..a49cdb0 100644
--- a/docs/newsletter/20170728.md
+++ b/docs/newsletter/20170728.md
@@ -93,7 +93,7 @@
 We will also be more aggressive in writing separate specs of features that aren't planned for immediate implementation, or store documents that aren't completely finished, yet.
 
 ### Resolved part-of
-Resolved "part of"s have been implemented. (http://dartbug.com/20792)
+Resolved "part of"s have been implemented. (https://dartbug.com/20792)
 
 In future versions of the Dart SDK it will be possible to use a URI to refer back from a part to its library:
 ``` dart
diff --git a/docs/process/breaking-changes.md b/docs/process/breaking-changes.md
index 2745872..b277e44 100644
--- a/docs/process/breaking-changes.md
+++ b/docs/process/breaking-changes.md
@@ -43,7 +43,7 @@
 
 Compatibility is only considered between stable releases (i.e. releases from the
 [Dart stable
-channel](https://www.dartlang.org/tools/sdk/archive#stable-channel)).
+channel](https://dart.dev/tools/sdk/archive#stable-channel)).
 
 ## Breaking change notification
 
diff --git a/docs/process/experimental-flags.md b/docs/process/experimental-flags.md
index e0af8b2..9d319b4 100644
--- a/docs/process/experimental-flags.md
+++ b/docs/process/experimental-flags.md
@@ -4,8 +4,8 @@
 
 The Dart SDK ships via a number of channels:
 
-- Via the [Dart SDK](https://www.dartlang.org/tools/sdk#install)
-- Via the [Flutter SDK](http://flutter.io)
+- Via the [Dart SDK](https://dart.dev/get-dart#install)
+- Via the [Flutter SDK](https://flutter.dev/)
 - Internally at Google via an internal channel
 
 Each of these channels use varying release calendars, and keeping these entirely
