# Key-Value Store

- [Getting Started](https://berkeley-cs162.gitbook.io/hw-6/tcp/getting-started.md)
- [Your Tasks](https://berkeley-cs162.gitbook.io/hw-6/tcp/your-tasks.md)
- [Part A](https://berkeley-cs162.gitbook.io/hw-6/tcp/your-tasks/part-a.md): Part A implements the basic functionality of the Two Phase Commit protocol.
- [Part B](https://berkeley-cs162.gitbook.io/hw-6/tcp/your-tasks/part-b.md): Part B implements error handling and persistence in the Two Phase Commit protocol. It also digs deeper into gRPC and how it's used as the form of communication between the leader and followers.
- [References](https://berkeley-cs162.gitbook.io/hw-6/tcp/references.md)
- [Two Phase Commit](https://berkeley-cs162.gitbook.io/hw-6/tcp/references/two-phase-commit.md)
- [Important Existing Code](https://berkeley-cs162.gitbook.io/hw-6/tcp/references/important-existing-code.md)
- [Testing](https://berkeley-cs162.gitbook.io/hw-6/tcp/references/testing.md)
- [Submitting](https://berkeley-cs162.gitbook.io/hw-6/tcp/submitting.md)
