diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..939e534
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,28 @@
+# How to Contribute
+
+We'd love to accept your patches and contributions to this project. There are
+just a few small guidelines you need to follow.
+
+## Contributor License Agreement
+
+Contributions to this project must be accompanied by a Contributor License
+Agreement. You (or your employer) retain the copyright to your contribution;
+this simply gives us permission to use and redistribute your contributions as
+part of the project. Head over to <https://cla.developers.google.com/> to see
+your current agreements on file or to sign a new one.
+
+You generally only need to submit a CLA once, so if you've already submitted one
+(even if it was for a different project), you probably don't need to do it
+again.
+
+## Code reviews
+
+All submissions, including submissions by project members, require review. We
+use GitHub pull requests for this purpose. Consult
+[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more
+information on using pull requests.
+
+## Community Guidelines
+
+This project follows [Google's Open Source Community
+Guidelines](https://opensource.google.com/conduct/).
diff --git a/README.md b/README.md
new file mode 100644
index 0000000..1ae74b3
--- /dev/null
+++ b/README.md
@@ -0,0 +1,36 @@
+# C++ rules for Bazel
+
+This repository contains Starlark implementation of C++ rules in Bazel.
+
+The rules are being incrementally converted from their native implementations in the [Bazel source tree](https://source.bazel.build/bazel/+/master:src/main/java/com/google/devtools/build/lib/rules/cpp/).
+
+For the list of C++ rules, see the Bazel
+[documentation](https://docs.bazel.build/versions/master/be/overview.html).
+
+# Getting Started
+
+There is no need to use rules from this repository just yet. If you want to use
+rules\_cc anyway, add the following to your WORKSPACE file:
+
+```
+load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
+http_archive(
+    name = "rules_cc",
+    urls = ["https://github.com/bazelbuild/rules_cc/archive/TODO"],
+    sha256 = "TODO",
+)
+```
+
+Then, in your BUILD files, import and use the rules:
+
+```
+load("@rules_cc//cc:rules.bzl", "cc_library")
+cc_library(
+    ...
+)
+```
+
+# Migration Tools
+
+This repository also contains migration tools that can be used to migrate your
+project for Bazel incompatible changes.
diff --git a/cc/BUILD b/cc/BUILD
new file mode 100644
index 0000000..9a01f92
--- /dev/null
+++ b/cc/BUILD
@@ -0,0 +1 @@
+# Intentionally left empty
diff --git a/cc/rules.bzl b/cc/rules.bzl
new file mode 100644
index 0000000..48b8926
--- /dev/null
+++ b/cc/rules.bzl
@@ -0,0 +1,85 @@
+# Copyright 2018 The Bazel Authors. All rights reserved.
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#    http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+"""Starlark rules for building C++ projects."""
+
+def cc_binary(**attrs):
+    """Bazel cc_binary rule.
+
+    https://docs.bazel.build/versions/master/be/c-cpp.html#cc_binary
+
+    Args:
+      **attrs: Rule attributes
+    """
+    native.cc_binary(**attrs)
+
+def cc_test(**attrs):
+    """Bazel cc_test rule.
+
+    https://docs.bazel.build/versions/master/be/c-cpp.html#cc_test
+
+    Args:
+      **attrs: Rule attributes
+    """
+    native.cc_test(**attrs)
+
+def cc_library(**attrs):
+    """Bazel cc_library rule.
+
+    https://docs.bazel.build/versions/master/be/c-cpp.html#cc_library
+
+    Args:
+      **attrs: Rule attributes
+    """
+    native.cc_library(**attrs)
+
+def cc_import(**attrs):
+    """Bazel cc_import rule.
+
+    https://docs.bazel.build/versions/master/be/c-cpp.html#cc_import
+
+    Args:
+      **attrs: Rule attributes
+    """
+    native.cc_import(**attrs)
+
+def cc_proto_library(**attrs):
+    """Bazel cc_proto_library rule.
+
+    https://docs.bazel.build/versions/master/be/c-cpp.html#cc_proto_library
+
+    Args:
+      **attrs: Rule attributes
+    """
+    native.cc_proto_library(**attrs)
+
+def fdo_prefetch_hints(**attrs):
+    """Bazel fdo_prefetch_hints rule.
+
+    https://docs.bazel.build/versions/master/be/c-cpp.html#fdo_prefetch_hints
+
+    Args:
+      **attrs: Rule attributes
+    """
+    native.fdo_prefetch_hints(**attrs)
+
+def fdo_profile(**attrs):
+    """Bazel fdo_profile rule.
+
+    https://docs.bazel.build/versions/master/be/c-cpp.html#fdo_profile
+
+    Args:
+      **attrs: Rule attributes
+    """
+    native.fdo_profile(**attrs)
