Skip to content

Commit b068bcd

Browse files
Convert API definitions section headings to sentence case (#1441)
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Co-authored-by: Devin Logan <[email protected]>
1 parent f46941b commit b068bcd

File tree

16 files changed

+89
-60
lines changed

16 files changed

+89
-60
lines changed

.vale/styles/FernStyles/Headings.yml

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -80,3 +80,32 @@ exceptions:
8080
- CSS
8181
- HTML
8282
- JSON
83+
- OpenAPI
84+
- AsyncAPI
85+
- Fern Definition
86+
- WebSockets
87+
- MQTT
88+
- JSON-RPC
89+
- Protocol Buffers
90+
- TLS
91+
- JWT
92+
- OAuth2
93+
- API
94+
- CircleCI
95+
- GitLab CI
96+
- CI/CD
97+
- Kubernetes
98+
- Buf
99+
- FastAPI
100+
- PyPI
101+
- Maven
102+
- Spring Boot
103+
- Pydantic
104+
- Postman
105+
- HTTP
106+
- HTTPS
107+
- TCP
108+
- Protobuf
109+
- Proto
110+
- RBAC
111+
- YAML

fern/products/api-def/asyncapi-pages/auth.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ components:
5959
env: AUTH_TOKEN
6060
```
6161

62-
## API Key security scheme
62+
## API key security scheme
6363

6464
Start by defining an `apiKey` security scheme in your `asyncapi.yml`:
6565

@@ -81,7 +81,7 @@ const client = new Client({
8181
})
8282
```
8383

84-
### Custom API Key variable name
84+
### Custom API key variable name
8585

8686
If you want to control variable naming and the environment variable to scan,
8787
use the configuration below:
@@ -120,7 +120,7 @@ const client = new Client({
120120
})
121121
```
122122

123-
### Custom Basic Auth variable names
123+
### Custom basic auth variable names
124124

125125
If you want to control variable naming and the environment variables to scan,
126126
use the configuration below:

fern/products/api-def/asyncapi-pages/automation.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ api:
8585
version: 0.8.8
8686
```
8787
88-
### From Git repository
88+
### From git repository
8989
```yaml title="generators.yml" {3-7}
9090
api:
9191
specs:

fern/products/api-def/ferndef-pages/endpoints/multipart.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ service:
2424
2525
Within a given multipart request, a string parameter with `format:binary` will represent an arbitrary file.
2626

27-
## List of Files
27+
## List of files
2828

2929
If your endpoint supports a list of files, then your request body must indicate such.
3030

fern/products/api-def/ferndef-pages/types.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ types:
138138
value: '!='
139139
```
140140

141-
### Discriminated Unions
141+
### Discriminated unions
142142

143143
Fern supports tagged unions (a.k.a. discriminated unions). Unions are useful for
144144
polymorphism. This is similar to the `oneOf` concept in OpenAPI.
@@ -196,7 +196,7 @@ This corresponds to a JSON object like this:
196196
}
197197
```
198198

199-
### Undiscriminated Unions
199+
### Undiscriminated unions
200200

201201
Undiscriminated unions are similar to discriminated unions, however you don't
202202
need to define an explicit discriminant property.

fern/products/api-def/grpc-pages/auth.mdx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ class AuthServiceServicer(auth_service_pb2_grpc.AuthServiceServicer):
116116
)
117117
```
118118

119-
## Interceptors for Authentication
119+
## Interceptors for authentication
120120

121121
Use gRPC interceptors to handle authentication across all methods:
122122

@@ -173,7 +173,7 @@ class AuthInterceptor(grpc.ServerInterceptor):
173173
return grpc.unary_unary_rpc_method_handler(abort)
174174
```
175175

176-
## API Key Authentication
176+
## API key authentication
177177

178178
Implement API key-based authentication:
179179

@@ -226,7 +226,7 @@ class ApiKeyAuthInterceptor(grpc.ServerInterceptor):
226226
return continuation(handler_call_details)
227227
```
228228

229-
## OAuth2 Integration
229+
## OAuth2 integration
230230

231231
Integrate with OAuth2 providers:
232232

@@ -270,7 +270,7 @@ class OAuth2Interceptor(grpc.ServerInterceptor):
270270
return self._invalid_token_response()
271271
```
272272

273-
## Client-side Authentication
273+
## Client-side authentication
274274

275275
Configure authentication on the client side:
276276

@@ -309,7 +309,7 @@ def create_api_key_channel(server_address, api_key):
309309
return intercepted_channel
310310
```
311311

312-
## Role-Based Access Control
312+
## Role-based access control
313313

314314
Implement RBAC for fine-grained permissions:
315315

@@ -367,4 +367,4 @@ class RBACInterceptor(grpc.ServerInterceptor):
367367
return False
368368
```
369369

370-
gRPC's flexible authentication system allows you to implement secure, scalable authentication patterns that work across different environments and use cases.
370+
gRPC's flexible authentication system allows you to implement secure, scalable authentication patterns that work across different environments and use cases.

fern/products/api-def/grpc-pages/automation.mdx

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ jobs:
5555
FERN_TOKEN: ${{ secrets.FERN_TOKEN }}
5656
```
5757
58-
## Protocol Buffer validation
58+
## Protocol buffer validation
5959
6060
Add validation steps for your Protocol Buffer files:
6161
@@ -103,7 +103,7 @@ jobs:
103103
104104
Configure Fern to automatically pull Protocol Buffer files from various sources:
105105
106-
### From Git repository
106+
### From git repository
107107
```yaml title="generators.yml" {3-7}
108108
api:
109109
specs:
@@ -469,4 +469,4 @@ if __name__ == "__main__":
469469
sync_from_grpc_reflection("localhost:50051", "proto/")
470470
```
471471
472-
This ensures that any changes to your gRPC services are automatically reflected in your SDKs and documentation, maintaining consistency across your entire API ecosystem.
472+
This ensures that any changes to your gRPC services are automatically reflected in your SDKs and documentation, maintaining consistency across your entire API ecosystem.

fern/products/api-def/grpc-pages/servers.mdx

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ subtitle: Set up and configure gRPC servers for production deployments
66

77
gRPC servers can be configured with various options for security, performance, and scalability. Proper server configuration is crucial for production deployments.
88

9-
## Basic Server Setup
9+
## Basic server setup
1010

1111
Set up a basic gRPC server with multiple services:
1212

@@ -41,7 +41,7 @@ if __name__ == '__main__':
4141
server.wait_for_termination()
4242
```
4343

44-
## TLS Configuration
44+
## TLS configuration
4545

4646
Configure TLS for secure production deployments:
4747

@@ -78,7 +78,7 @@ def create_secure_server():
7878
return server
7979
```
8080

81-
## Server Options
81+
## Server options
8282

8383
Configure various server options for performance and behavior:
8484

@@ -111,7 +111,7 @@ def create_configured_server():
111111
return server
112112
```
113113

114-
## Health Checking
114+
## Health checking
115115

116116
Implement health checking for load balancer integration:
117117

@@ -208,7 +208,7 @@ def create_server_with_reflection():
208208
return server
209209
```
210210

211-
## Load Balancing
211+
## Load balancing
212212

213213
Configure client-side load balancing:
214214

@@ -244,7 +244,7 @@ def create_multi_target_channel():
244244
return channel
245245
```
246246

247-
## Kubernetes Deployment
247+
## Kubernetes deployment
248248

249249
Deploy gRPC services on Kubernetes:
250250

@@ -295,7 +295,7 @@ spec:
295295
type: ClusterIP
296296
```
297297
298-
## Monitoring and Observability
298+
## Monitoring and observability
299299
300300
Add monitoring and tracing to your gRPC server:
301301
@@ -354,7 +354,7 @@ def create_monitored_server():
354354
return server
355355
```
356356

357-
## Environment-specific Configuration
357+
## Environment-specific configuration
358358

359359
Configure servers for different environments:
360360

@@ -424,4 +424,4 @@ def create_server_from_config(config: ServerConfig):
424424
return server
425425
```
426426

427-
Proper server configuration ensures your gRPC services are secure, performant, and ready for production workloads.
427+
Proper server configuration ensures your gRPC services are secure, performant, and ready for production workloads.

fern/products/api-def/grpc-pages/services/errors.mdx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ enum ErrorCode {
5353
}
5454
```
5555

56-
## Standard Error Handling
56+
## Standard error handling
5757

5858
Implement standard gRPC error responses:
5959

@@ -202,7 +202,7 @@ class ErrorDemoServiceServicer(errors_pb2_grpc.ErrorDemoServiceServicer):
202202
])
203203
```
204204

205-
## Custom Error Types
205+
## Custom error types
206206

207207
Define custom error types for domain-specific errors:
208208

@@ -342,7 +342,7 @@ class UserService(user_pb2_grpc.UserServiceServicer):
342342
# Continue with user creation...
343343
```
344344

345-
## Error Interceptors
345+
## Error interceptors
346346

347347
Implement global error handling with interceptors:
348348

@@ -404,7 +404,7 @@ class ErrorInterceptor(grpc.ServerInterceptor):
404404
return None
405405
```
406406

407-
## Client-side Error Handling
407+
## Client-side error handling
408408

409409
Handle errors on the client side:
410410

@@ -497,7 +497,7 @@ def create_user_with_error_handling(stub, user_data):
497497
return response
498498
```
499499

500-
## Error Response Patterns
500+
## Error response patterns
501501

502502
Define consistent error response patterns:
503503

fern/products/api-def/grpc-pages/services/grpc-services.mdx

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ subtitle: Define gRPC services with RPCs, messages, and Protocol Buffer schemas
55

66
gRPC services are the core building blocks of your API. Each service defines a collection of remote procedure calls (RPCs) that clients can invoke, along with the message types used for requests and responses.
77

8-
## Service Definition
8+
## Service definition
99

1010
Define a gRPC service in a `.proto` file:
1111

@@ -79,7 +79,7 @@ enum ThemeMode {
7979
}
8080
```
8181

82-
## Request and Response Messages
82+
## Request and response messages
8383

8484
Define clear request and response message types:
8585

@@ -147,7 +147,7 @@ message SearchMetadata {
147147
}
148148
```
149149

150-
## Service Implementation
150+
## Service implementation
151151

152152
Implement the service in your preferred language:
153153

@@ -335,9 +335,9 @@ class UserServiceServicer(user_service_pb2_grpc.UserServiceServicer):
335335
return user_service_pb2.SearchUsersResponse()
336336
```
337337

338-
## Protocol Buffer Best Practices
338+
## Protocol buffer best practices
339339

340-
### Field Numbers
340+
### Field numbers
341341
- Use field numbers 1-15 for frequently used fields (more efficient encoding)
342342
- Reserve field numbers for removed fields to maintain compatibility
343343
- Never reuse field numbers
@@ -359,7 +359,7 @@ message User {
359359
}
360360
```
361361

362-
### Naming Conventions
362+
### Naming conventions
363363
- Use `snake_case` for field names
364364
- Use `PascalCase` for message and service names
365365
- Use `UPPER_SNAKE_CASE` for enum values
@@ -392,7 +392,7 @@ package userservice.v1; // Version in package name
392392
option go_package = "example.com/userservice/v1";
393393
```
394394

395-
## Multiple Services
395+
## Multiple services
396396

397397
Organize related functionality into separate services:
398398

0 commit comments

Comments
 (0)