Skip to content

Commit 0a95a66

Browse files
committed
Update homepage
1 parent a931e04 commit 0a95a66

2 files changed

Lines changed: 9 additions & 7 deletions

File tree

content/_index.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -59,19 +59,21 @@ At this stage, CGP is best suited for early adopters and potential [contributors
5959

6060
# Getting Started
6161

62-
There are several places where you can get started learning and using CGP.
62+
Even though CGP is officially still less than one year old, some of the documentation and resources available already become outdated, or get obsoleted by more intuitive patterns. Nevertheless, this section attempts to provide you with the best guidance on how to learn more about CGP.
63+
64+
## Blog Posts
65+
66+
The most up-to-date resources about CGP is available in the form of [blog posts](/blog). In particular, the blog posts from [v0.6.0 onward](/blog/v0-6-0-release/) give a more concise explanation of what CGP is about.
6367

6468
## Hello World Tutorial
6569

6670
The [Hello World Tutorial](/tutorials/hello) gives a high level walkthrough of various CGP features using a hello-world style example.
6771

6872
## Book
6973

70-
To better understand CGP, the best approach is to dive into our book, [Context-Generic Programming Patterns](https://patterns.contextgeneric.dev/). It provides a comprehensive guide to understanding and working with CGP.
71-
72-
## Applications
74+
If you would like to understand CGP from first principles, without relying on the [`cgp` crate](https://github.com/contextgeneric/cgp), the best approach is to dive into our book, [Context-Generic Programming Patterns](https://patterns.contextgeneric.dev/). It provides a comprehensive guide to understanding the inner working CGP.
7375

74-
You can also explore real-world applications and projects that use CGP, such as [Hermes SDK](https://github.com/informalsystems/hermes-sdk/), to gain a deeper understanding of its practical uses.
76+
Note that the book has not been updated for a while, and you might want to skip the book if you only want to start using CGP quickly with minimal learning curve!
7577

7678
## Resources
7779

content/tutorials/hello.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,9 @@ pub trait CanGreet {
2121

2222
The `cgp` crate provides common constructs through its `prelude` module, which should be imported in most cases. The first CGP construct we use here is the `#[cgp_component]` macro. This macro generates additional CGP constructs for the greeter component.
2323

24-
The target of this macro, `CanGreet`, is a _consumer trait_ used similarly to regular Rust traits. However, unlike traditional traits, we won't implement anything directly on this trait.
24+
The target of this macro, `CanGreet`, is a **consumer trait** used similarly to regular Rust traits. However, unlike traditional traits, we won't implement anything directly on this trait.
2525

26-
In its simplified form, the argument to the macro, `Greeter`, designates a _provider trait_ for the component. The `Greeter` provider is used to define the actual implementations for the greeter component. It has a similar structure to `CanGreet`, but with the implicit `Self` type replaced by a generic `Context` type.
26+
In its simplified form, the argument to the macro, `Greeter`, designates a **provider trait** for the component. The `Greeter` provider is used to define the actual implementations for the greeter component. It has a similar structure to `CanGreet`, but with the implicit `Self` type replaced by a generic `Context` type.
2727

2828
The macro also generates an empty `GreeterComponent` struct, which is used as the _name_ of the greeter component which can be used for the component wiring later on.
2929

0 commit comments

Comments
 (0)