diff --git a/docs/README.md b/docs/README.md
index 180acdcb9..0ed3aaec9 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -1,14 +1,28 @@
-Here lies our documentation. After making edits, run:
+# Tendermint
-```
-pip install -r requirements.txt
-make html
-```
+Welcome to the Tendermint Core documentation! The introduction below provides
+an overview to help you navigate to your area of interest.
-to build the docs locally then open the file `_build/html/index.html` in your browser.
+## Introduction
-**WARNING:** This documentation is intended to be viewed at:
+Tendermint Core is Byzantine Fault Tolerant (BFT) middleware that takes a state
+transition machine - written in any programming language - and securely
+replicates it on many machines. In other words, a blockchain.
-https://tendermint.readthedocs.io
+Tendermint requires an application running over the Application Blockchain
+Interface (ABCI) - and comes packaged with an example application to do so.
+Follow the [installation instructions](./install) to get up and running
+quickly. For more details on [using tendermint](./using-tendermint) see that
+and the following sections.
-and may contain broken internal links when viewed from Github.
+## Networks
+
+Testnets can be setup manually on one or more machines, or automatically on one
+or more machine, using a variety of methods described in the [deploy testnets
+section](./deploy-testnets). For more information (and to join) about the
+Cosmos Network testnets, see [here](/getting-started/full-node.md).
+
+## Application Development
+
+The first step to building application on Tendermint is to [install
+ABCI-CLI](./getting-started) and play with the example applications.
diff --git a/docs/_static/custom_collapsible_code.css b/docs/_static/custom_collapsible_code.css
deleted file mode 100644
index 695268a83..000000000
--- a/docs/_static/custom_collapsible_code.css
+++ /dev/null
@@ -1,17 +0,0 @@
-.toggle {
- padding-bottom: 1em ;
-}
-
-.toggle .header {
- display: block;
- clear: both;
- cursor: pointer;
-}
-
-.toggle .header:after {
- content: " ▼";
-}
-
-.toggle .header.open:after {
- content: " ▲";
-}
\ No newline at end of file
diff --git a/docs/_static/custom_collapsible_code.js b/docs/_static/custom_collapsible_code.js
deleted file mode 100644
index f4ff22adc..000000000
--- a/docs/_static/custom_collapsible_code.js
+++ /dev/null
@@ -1,10 +0,0 @@
-let makeCodeBlocksCollapsible = function() {
- $(".toggle > *").hide();
- $(".toggle .header").show();
- $(".toggle .header").click(function() {
- $(this).parent().children().not(".header").toggle({"duration": 400});
- $(this).parent().children(".header").toggleClass("open");
- });
-};
-// we could use the }(); way if we would have access to jQuery in HEAD, i.e. we would need to force the theme
-// to load jQuery before our custom scripts
diff --git a/docs/_templates/layout.html b/docs/_templates/layout.html
deleted file mode 100644
index 736460bc0..000000000
--- a/docs/_templates/layout.html
+++ /dev/null
@@ -1,20 +0,0 @@
-{% extends "!layout.html" %}
-
-{% set css_files = css_files + ["_static/custom_collapsible_code.css"] %}
-
-# sadly, I didn't find a css style way to add custom JS to a list that is automagically added to head like CSS (above) #}
-{% block extrahead %}
-
-{% endblock %}
-
-{% block footer %}
-
-{% endblock %}
-
-
diff --git a/docs/abci-cli.md b/docs/abci-cli.md
index d1ab696eb..246e8b1a2 100644
--- a/docs/abci-cli.md
+++ b/docs/abci-cli.md
@@ -323,6 +323,6 @@ connects to the app using three separate connections, each with its own
pattern of messages.
For more information, see the [application developers
-guide](./app-development.html). For examples of running an ABCI app with
-Tendermint, see the [getting started guide](./getting-started.html).
+guide](./app-development.md). For examples of running an ABCI app with
+Tendermint, see the [getting started guide](./getting-started.md).
Next is the ABCI specification.
diff --git a/docs/deploy-testnets.md b/docs/deploy-testnets.md
index 0c74b2c5e..e5b300836 100644
--- a/docs/deploy-testnets.md
+++ b/docs/deploy-testnets.md
@@ -35,7 +35,7 @@ Here are the steps to setting up a testnet manually:
After a few seconds, all the nodes should connect to each other and
start making blocks! For more information, see the Tendermint Networks
-section of [the guide to using Tendermint](using-tendermint.html).
+section of [the guide to using Tendermint](./using-tendermint.md).
But wait! Steps 3 and 4 are quite manual. Instead, use [this
script](https://github.com/tendermint/tendermint/blob/develop/docs/examples/init_testnet.sh),
diff --git a/docs/getting-started.md b/docs/getting-started.md
index 8294d1e9b..2d2c77b16 100644
--- a/docs/getting-started.md
+++ b/docs/getting-started.md
@@ -7,7 +7,7 @@ application you want to run. So, to run a complete blockchain that does
something useful, you must start two programs: one is Tendermint Core,
the other is your application, which can be written in any programming
language. Recall from [the intro to
-ABCI](introduction.html#ABCI-Overview) that Tendermint Core handles all
+ABCI](./introduction.md#ABCI-Overview) that Tendermint Core handles all
the p2p and consensus stuff, and just forwards transactions to the
application when they need to be validated, or when they're ready to be
committed to a block.
@@ -58,7 +58,7 @@ Tendermint before, use:
If you have used Tendermint, you may want to reset the data for a new
blockchain by running `tendermint unsafe_reset_all`. Then you can run
`tendermint node` to start Tendermint, and connect to the app. For more
-details, see [the guide on using Tendermint](./using-tendermint.html).
+details, see [the guide on using Tendermint](./using-tendermint.md).
You should see Tendermint making blocks! We can get the status of our
Tendermint node as follows:
@@ -224,7 +224,7 @@ But if we send a `1`, it works again:
}
For more details on the `broadcast_tx` API, see [the guide on using
-Tendermint](./using-tendermint.html).
+Tendermint](./using-tendermint.md).
## CounterJS - Example in Another Language
@@ -243,7 +243,7 @@ devs, we keep all our code under the `$GOPATH`, so run:
Kill the previous `counter` and `tendermint` processes. Now run the app:
- node example/app.js
+ node example/counter.js
In another window, reset and start `tendermint`:
diff --git a/docs/how-to-read-logs.md b/docs/how-to-read-logs.md
index dd59d1848..2b019e549 100644
--- a/docs/how-to-read-logs.md
+++ b/docs/how-to-read-logs.md
@@ -53,8 +53,8 @@ Next follows a standard block creation cycle, where we enter a new
round, propose a block, receive more than 2/3 of prevotes, then
precommits and finally have a chance to commit a block. For details,
please refer to [Consensus
-Overview](introduction.html#consensus-overview) or [Byzantine Consensus
-Algorithm](specification.html).
+Overview](./introduction.md#consensus-overview) or [Byzantine Consensus
+Algorithm](./spec/consensus).
I[10-04|13:54:30.393] enterNewRound(91/0). Current: 91/0/RoundStepNewHeight module=consensus
I[10-04|13:54:30.393] enterPropose(91/0). Current: 91/0/RoundStepNewRound module=consensus
@@ -100,7 +100,7 @@ Algorithm](specification.html).
Here is the list of modules you may encounter in Tendermint's log and a
little overview what they do.
-- `abci-client` As mentioned in [Application Development Guide](app-development.md#abci-design), Tendermint acts as an ABCI
+- `abci-client` As mentioned in [Application Development Guide](./app-development.md), Tendermint acts as an ABCI
client with respect to the application and maintains 3 connections:
mempool, consensus and query. The code used by Tendermint Core can
be found [here](https://github.com/tendermint/tendermint/tree/develop/abci/client).
@@ -115,13 +115,13 @@ little overview what they do.
found
[here](https://github.com/tendermint/tendermint/blob/master/types/events.go).
You can subscribe to them by calling `subscribe` RPC method. Refer
- to [RPC docs](specification/rpc.html) for additional information.
+ to [RPC docs](./specification/rpc.md) for additional information.
- `mempool` Mempool module handles all incoming transactions, whenever
they are coming from peers or the application.
- `p2p` Provides an abstraction around peer-to-peer communication. For
more details, please check out the
[README](https://github.com/tendermint/tendermint/blob/master/p2p/README.md).
-- `rpc` [Tendermint's RPC](specification/rpc.html).
+- `rpc` [Tendermint's RPC](./specification/rpc.md).
- `rpc-server` RPC server. For implementation details, please read the
[README](https://github.com/tendermint/tendermint/blob/master/rpc/lib/README.md).
- `state` Represents the latest state and execution submodule, which
diff --git a/docs/index.rst b/docs/index.rst
index e7d86bc2b..b3158c219 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -6,68 +6,10 @@
Welcome to Tendermint!
======================
+This location for our documentation has been deprecated, please see:
-.. image:: assets/tmint-logo-blue.png
- :height: 200px
- :width: 200px
- :align: center
+- https://tendermint.com/docs
-Introduction
-------------
+The last version built by Read The Docs will still be available at:
-.. toctree::
- :maxdepth: 1
-
- introduction.md
- install.md
- getting-started.md
- using-tendermint.md
- deploy-testnets.md
- ecosystem.md
-
-Tendermint Tools
-----------------
-
-.. the tools/ files are pulled in from the tools repo
-.. see the bottom of conf.py
-.. toctree::
- :maxdepth: 1
-
- tools/docker.md
- terraform-and-ansible.md
- tools/benchmarking.md
- tools/monitoring.md
-
-ABCI, Apps, Logging, Etc
-------------------------
-
-.. toctree::
- :maxdepth: 1
-
- abci-cli.md
- abci-spec.md
- app-architecture.md
- app-development.md
- subscribing-to-events-via-websocket.md
- indexing-transactions.md
- how-to-read-logs.md
- running-in-production.md
- metrics.md
-
-Research & Specification
-------------------------
-
-.. toctree::
- :maxdepth: 1
-
- determinism.md
- transactional-semantics.md
-
-.. specification.md ## keep this file for legacy purpose. needs to be fixed though
-
-* For a deeper dive, see `this thesis `__.
-* There is also the `original whitepaper `__, though it is now quite outdated.
-* Readers might also be interested in the `Cosmos Whitepaper `__ which describes Tendermint, ABCI, and how to build a scalable, heterogeneous, cryptocurrency network.
-* For example applications and related software built by the Tendermint team and other, see the `software ecosystem `__.
-
-Join the `community `__ to ask questions and discuss projects.
+- https://tendermint.readthedocs.io/projects/tools/en/v0.21.0/
diff --git a/docs/specification.rst b/docs/specification.rst
deleted file mode 100644
index 70ebf633f..000000000
--- a/docs/specification.rst
+++ /dev/null
@@ -1,21 +0,0 @@
-#############
-Specification
-#############
-
-Here you'll find details of the Tendermint specification. Tendermint's types are produced by `godoc `__.
-
-.. toctree::
- :maxdepth: 2
-
- specification/block-structure.rst
- specification/byzantine-consensus-algorithm.rst
- specification/configuration.rst
- specification/corruption.rst
- specification/fast-sync.rst
- specification/genesis.rst
- specification/light-client-protocol.rst
- specification/merkle.rst
- specification/rpc.rst
- specification/secure-p2p.rst
- specification/validators.rst
- specification/wire-protocol.rst
diff --git a/docs/using-tendermint.md b/docs/using-tendermint.md
index 9e83683be..1cd910821 100644
--- a/docs/using-tendermint.md
+++ b/docs/using-tendermint.md
@@ -129,7 +129,7 @@ new blockchain will not make any blocks.
## Configuration
Tendermint uses a `config.toml` for configuration. For details, see [the
-config specification](./specification/configuration.html).
+config specification](./specification/configuration.md).
Notable options include the socket address of the application
(`proxy_app`), the listening address of the Tendermint peer
@@ -260,7 +260,7 @@ but must be positive, thus the range is: 0 through 9223372036854775807.
Because of how the current proposer selection algorithm works, we do not
recommend having voting powers greater than 10\^12 (ie. 1 trillion) (see
[Proposals section of Byzantine Consensus
-Algorithm](./specification/byzantine-consensus-algorithm.html#proposals)
+Algorithm](./specification/byzantine-consensus-algorithm.md#proposals)
for details).
If we want to add more nodes to the network, we have two choices: we can
@@ -398,7 +398,7 @@ failing, you need at least four validator nodes (e.g., 2/3).
Updating validators in a live network is supported but must be
explicitly programmed by the application developer. See the [application
-developers guide](./app-development.html) for more details.
+developers guide](./app-development.md) for more details.
### Local Network