mirror of
https://github.com/foomo/foomo-docs.git
synced 2025-10-16 12:35:40 +00:00
feat: add more gotsrpc docs
This commit is contained in:
parent
e3b9042f6e
commit
fdfec49869
@ -1,6 +1,6 @@
|
|||||||
# CMS
|
# CMS
|
||||||
|
|
||||||
The foomo team has extensive experience with a wide range of CMS systems. Our long journey in the field has brought us very close to the https://jamstack.org . We almost exclusively work with https://app.contentful.com/ but we are watching others like https://www.stripe.com/ very closely.
|
The foomo team has extensive experience with a wide range of CMS systems. Our long journey in the field has brought us very close to the https://jamstack.org . We almost exclusively work with https://app.contentful.com/ but we are watching others like https://strapi.io/ and https://directus.io/ very closely.
|
||||||
|
|
||||||
## Expectations and challenges
|
## Expectations and challenges
|
||||||
|
|
||||||
@ -28,12 +28,12 @@ Let us take a look at a real world example:
|
|||||||
|
|
||||||
| application route / ingress | app developers view | SEO URL requirement |
|
| application route / ingress | app developers view | SEO URL requirement |
|
||||||
|:----------------------------|:---------------------|:-----------------------------------|
|
|:----------------------------|:---------------------|:-----------------------------------|
|
||||||
| /content:id | /content/1 | / |
|
| /content/:id | /content/1 | / |
|
||||||
| | /content/2 | /mens |
|
| | /content/2 | /mens |
|
||||||
| /category:id | /category/1 | /mens/shirts |
|
| /category/:id | /category/1 | /mens/shirts |
|
||||||
| | /category/2 | /mens/shirts/business |
|
| | /category/2 | /mens/shirts/business |
|
||||||
| /product:id | /product/1 | /mens-shirt-awesome-blue-medium |
|
| /product/:id | /product/1 | /mens-shirt-awesome-blue-medium |
|
||||||
| /store:id | /store/1 | /mens/stores/london-perfect-shirts |
|
| /store/:id | /store/1 | /mens/stores/london-perfect-shirts |
|
||||||
| | /store/2 | /kids/stores/lego-paradise |
|
| | /store/2 | /kids/stores/lego-paradise |
|
||||||
|
|
||||||
## our approach
|
## our approach
|
||||||
|
|||||||
@ -1,5 +0,0 @@
|
|||||||
# Getting started
|
|
||||||
|
|
||||||
- install `gotsrpc` [cli](cli)
|
|
||||||
- clone and play with the [playground](playground)
|
|
||||||
- follow [workflow](workflow) instructions
|
|
||||||
3
foomo/docs/projects/gotsrpc/cli/_category_.json
Normal file
3
foomo/docs/projects/gotsrpc/cli/_category_.json
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"position" : 2
|
||||||
|
}
|
||||||
20
foomo/docs/projects/gotsrpc/getting-started.md
Normal file
20
foomo/docs/projects/gotsrpc/getting-started.md
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 1
|
||||||
|
---
|
||||||
|
# Getting started
|
||||||
|
|
||||||
|
|
||||||
|
- clone and play with the [playground](playground)
|
||||||
|
- follow [workflow](workflow) instructions
|
||||||
|
- understanding the very simple [RPC protocol](protocol) will not hurt
|
||||||
|
|
||||||
|
|
||||||
|
## When using TypeScript clients
|
||||||
|
|
||||||
|
- implement a [TypeScript client transport](client-transport)
|
||||||
|
|
||||||
|
## When writing Go services
|
||||||
|
|
||||||
|
- install `gotsrpc` [cli](cli)
|
||||||
|
- define and implement [services interfaces](service-interfaces)
|
||||||
|
- configure your code generation [gotsrpc.yaml](cli/gotsrpc.yaml)
|
||||||
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"position" : 4
|
||||||
|
}
|
||||||
@ -1,3 +1,6 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 1
|
||||||
|
---
|
||||||
# Value Objects
|
# Value Objects
|
||||||
|
|
||||||
Typically value objects will be serialized / marshalled as JSON. Please refer to this documentation:
|
Typically value objects will be serialized / marshalled as JSON. Please refer to this documentation:
|
||||||
@ -1,15 +1,18 @@
|
|||||||
|
---
|
||||||
|
sidebar_position: 3
|
||||||
|
---
|
||||||
# Workflow
|
# Workflow
|
||||||
|
|
||||||
## Initial setup in a project
|
## Initial setup in a project
|
||||||
|
|
||||||
- define a central place for your Go service interface definitions
|
- define a central place for your Go service interface definitions
|
||||||
- define a central place where your TypeScript client code will be generated to
|
- define a central place where your TypeScript client code will be generated to
|
||||||
- create one central [`gotsrpc.yaml`](gotsrpc.yaml)
|
- create one central [`gotsrpc.yaml`](cli/gotsrpc.yaml)
|
||||||
- implement a TypeScript [`transport`](client-transport) for your project
|
- implement a TypeScript [`transport`](client-transport) for your project
|
||||||
|
|
||||||
## Per service
|
## Per service
|
||||||
|
|
||||||
1. define [service interfaces](service-interfaces) in Go
|
1. define [service interfaces](service-interfaces) in Go
|
||||||
2. configure code generation in [`gotsrpc.yaml`](gotsrpc.yaml)
|
2. configure code generation in [`gotsrpc.yaml`](cli/gotsrpc.yaml)
|
||||||
3. generate service proxies and client with [`gotsrpc` cli](cli)
|
3. generate service proxies and client with [`gotsrpc` cli](cli)
|
||||||
4. go to 1.
|
4. go to 1.
|
||||||
@ -25,7 +25,7 @@ const config = {
|
|||||||
({
|
({
|
||||||
docs: {
|
docs: {
|
||||||
sidebarPath: require.resolve('./sidebars.js'),
|
sidebarPath: require.resolve('./sidebars.js'),
|
||||||
sidebarCollapsed: false,
|
sidebarCollapsed: true,
|
||||||
editUrl: 'https://github.com/foomo/foomo-docs/tree/main/foomo',
|
editUrl: 'https://github.com/foomo/foomo-docs/tree/main/foomo',
|
||||||
},
|
},
|
||||||
blog: {
|
blog: {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user