diff --git a/docs/index.md b/docs/index.md
index c7a9d66a8..688451360 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -13,27 +13,49 @@ Instructor makes it easy to get structured data like JSON from LLMs like GPT-3.5
It stands out for its simplicity, transparency, and user-centric design, built on top of Pydantic. Instructor helps you manage [validation context](./concepts/reask_validation.md), retries with [Tenacity](./concepts/retrying.md), and streaming [Lists](./concepts/lists.md) and [Partial](./concepts/partial.md) responses.
-- Instructor provides support for a wide range of programming languages, including:
- - [Python](https://python.useinstructor.com)
- - [TypeScript](https://js.useinstructor.com)
- - [Ruby](https://ruby.useinstructor.com)
- - [Go](https://go.useinstructor.com)
- - [Elixir](https://hex.pm/packages/instructor)
- - [Rust](https://rust.useinstructor.com/)
+[:material-star: Star the Repo](https://github.com/jxnl/instructor){: .md-button .md-button--primary } [:material-book-open-variant: Cookbooks](./examples/index.md){: .md-button } [:material-lightbulb: Prompting Guide](./prompting/index.md){: .md-button }
-## Want your logo on our website?
+## Why use Instructor?
-If your company use instructor a lot, we'd love to have your logo on our website! Please fill out [this form](https://q7gjsgfstrp.typeform.com/to/wluQlVVQ)
+
-## Why use Instructor?
+- :material-code-tags: __Simple API with Full Prompt Control__
+
+ Instructor provides a straightforward API that gives you complete ownership and control over your prompts. This allows for fine-tuned customization and optimization of your LLM interactions.
+
+ [:octicons-arrow-right-16: Explore Concepts](./concepts/models.md)
+
+- :material-translate: __Multi-Language Support__
+
+ Simplify structured data extraction from LLMs with type hints and validation.
+
+ [:simple-python: Python](https://python.useinstructor.com) · [:simple-typescript: TypeScript](https://js.useinstructor.com) · [:simple-ruby: Ruby](https://ruby.useinstructor.com) · [:simple-go: Go](https://go.useinstructor.com) · [:simple-elixir: Elixir](https://hex.pm/packages/instructor) · [:simple-rust: Rust](https://rust.useinstructor.com)
+
+- :material-refresh: __Reasking and Validation__
+
+ Automatically reask the model when validation fails, ensuring high-quality outputs. Leverage Pydantic's validation for robust error handling.
+
+ [:octicons-arrow-right-16: Learn about Reasking](./concepts/reask_validation.md)
+
+- :material-repeat-variant: __Streaming Support__
+
+ Stream partial results and iterables with ease, allowing for real-time processing and improved responsiveness in your applications.
+
+ [:octicons-arrow-right-16: Learn about Streaming](./concepts/partial.md)
+
+- :material-code-braces: __Powered by Type Hints__
-The question of using Instructor is fundamentally a question of why to use Pydantic.
+ Leverage Pydantic for schema validation, prompting control, less code, and IDE integration.
+
+ [:octicons-arrow-right-16: Learn more](https://docs.pydantic.dev/)
-1. **Powered by type hints** — Instructor is powered by Pydantic, which is powered by type hints. Schema validation, prompting is controlled by type annotations; less to learn, less code to write, and integrates with your IDE.
+- :material-lightning-bolt: __Simplified LLM Interactions__
-2. **Customizable** — Pydantic is highly customizable. You can define your own validators, custom error messages, and more.
+ Support for [OpenAI](./hub/openai.md), [Anthropic](./hub/anthropic.md), [Google](./hub/google.md), [Vertex AI](./hub/vertexai.md), [Mistral/Mixtral](./hub/together.md), [Anyscale](./hub/anyscale.md), [Ollama](./hub/ollama.md), [llama-cpp-python](./hub/llama-cpp-python.md), [Cohere](./hub/cohere.md), [LiteLLM](./hub/litellm.md).
+
+ [:octicons-arrow-right-16: See Hub](./hub/index.md)
-3. **Ecosystem** Pydantic is the most widely used data validation library for Python with over 100M downloads a month. It's used by FastAPI, Typer, and many other popular libraries.
+
## Getting Started