Skip to content

Commit c7cc39f

Browse files
authored
docs: improve grammar in blog/elysia-02.md (#635)
1 parent 44a35ed commit c7cc39f

File tree

1 file changed

+34
-34
lines changed

1 file changed

+34
-34
lines changed

docs/blog/elysia-02.md

Lines changed: 34 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -38,16 +38,17 @@ head:
3838
date="29 Jan 2023"
3939
>
4040
41-
[Blessing](https://youtu.be/3eytpBOkOFA)」brings more improvement, mainly on TypeScript performance, type-inference, and better auto-completion and some new features to reduce boilerplate.
41+
42+
[Blessing](https://youtu.be/3eytpBOkOFA)」brings many improvements, mainly in TypeScript performance, type-inference, better auto-completion, and new features to reduce boilerplate.
4243

4344
Named after YOASOBI's song「祝福」, an opening for Witch from "Mobile Suit Gundam: The Witch from Mercury".
4445

4546
## Defers / Lazy Loading Module
46-
With Elysia 0.2 now add support for the lazy loading module and async plugin.
47+
Elysia 0.2 now adds support for lazy loading modules and async plugins.
4748

48-
This made it possible to defer plugin registration and incrementally apply after the Elysia server is started to achieve the fastest possible start-up time in Serverless/Edge environments.
49+
This makes it possible to defer plugin registration and incrementally apply plugins after the Elysia server has started, achieving the fastest possible start-up time in Serverless/Edge environments.
4950

50-
To create defers module, simply mark the plugin as async:
51+
To create a deferred module, simply mark the plugin as async:
5152
```typescript
5253
const plugin = async (app: Elysia) => {
5354
const stuff = await doSomeHeavyWork()
@@ -68,13 +69,12 @@ app.use(import('./some-heavy-module'))
6869

6970
This will register the module after the import is finished making the module lazy-load.
7071

71-
Defers Plugin and lazy loading module will have all type-inference available right out of the box.
72-
72+
Deferred plugins and lazy loading modules will have full type-inference available right out of the box.
7373

7474
## Reference Model
75-
Now Elysia can memorize schema and reference the schema directly in Schema fields, without creating an import file via `Elysia.setModel`
75+
Now Elysia can memorize schemas and reference them directly in Schema fields, without creating an import file via `Elysia.setModel`.
7676

77-
This list of schema available, brings auto-completion, complete type-inference, and validation as you expected from inline schema.
77+
This list of available schemas brings auto-completion, complete type-inference, and validation as you would expect from inline schemas.
7878

7979
To use a reference model, first, register the model with `setModel`, then write a model name to reference a model in `schema`
8080
```typescript
@@ -93,34 +93,34 @@ const app = new Elysia()
9393
})
9494
```
9595

96-
This will bring auto-completion of known models.
96+
This will provide auto-completion of known models.
9797
<img width="1624" alt="Screenshot 2566-01-23 at 13 24 28" src="https://user-images.githubusercontent.com/35027979/213980696-8f20a934-c500-4f97-884c-ff2dd2efadfe.png">
9898

99-
And type reference stopping you from accidentally returning invalid type.
99+
And type references prevent you from accidentally returning an invalid type.
100100
<img width="1624" alt="Screenshot 2566-01-23 at 13 26 00" src="https://user-images.githubusercontent.com/35027979/213980738-0e99cb25-a50f-4888-8879-f00d4ad04363.png">
101101

102-
Using `@elysiajs/swagger` will also create a separate `Model` section for listing available models.
102+
Using `@elysiajs/swagger` will also create a separate `Model` section to list available models.
103103
<img width="1624" alt="Screenshot 2566-01-23 at 13 23 41" src="https://user-images.githubusercontent.com/35027979/213980936-5857e30b-fd4b-4fc3-8aff-fdb9054980d3.png">
104104

105-
Reference also handles validation as you expected.
105+
References also handle validation as you would expect.
106106

107-
In short, it's as same as inline schema but now you only need to type the name of the schema to handle validation and typing instead of a long list of imports.
107+
In short, it's the same as using inline schemas, but now you only need to type the name of the schema to handle validation and typing, instead of a long list of imports.
108108

109109
## OpenAPI Detail field
110-
Introducing new field `schema.detail` for customizing detail for the route following the standard of OpenAPI Schema V2 with auto-completion.
110+
Introducing a new field, `schema.detail`, for customizing details for the route, following the standard of OpenAPI Schema V2 with auto-completion.
111111

112112
<img width="1624" alt="Screenshot 2566-01-23 at 13 54 11" src="https://user-images.githubusercontent.com/35027979/213981321-5717e514-aa4b-492a-b45a-9e69099dc8a8.png">
113113

114-
This allows you to write better documentation and fully editable Swagger as you want:
114+
This allows you to write better documentation and have a fully editable Swagger as you want:
115115
<img width="1624" alt="Screenshot 2566-01-23 at 13 23 41" src="https://user-images.githubusercontent.com/35027979/213981545-46efc6cc-34bc-4db2-86ed-530d27d7ba97.png">
116116

117117
## Union Type
118-
The previous version of Elysia sometime has a problem with distinct Union types, as Elysia tries to catch the response to create a full type reference for Eden.
118+
The previous version of Elysia sometimes had problems with distinct Union types, as Elysia tried to catch the response to create a full type reference for Eden.
119119

120-
Results in invalidation of possible types,
120+
This resulted in invalidation of possible types.
121121

122122
## Union Response
123-
Made possible by Union Type, now returning multiple response status for `schema` now available using `schema.response[statusCode]`
123+
Made possible by Union Type, returning multiple response statuses for `schema` is now available using `schema.response[statusCode]`.
124124

125125
```typescript
126126
app
@@ -148,43 +148,43 @@ app
148148
)
149149
```
150150

151-
Elysia will try to validate all schema in `response` allowing one of the types to be returned.
151+
Elysia will try to validate all schemas in `response`, allowing one of the types to be returned.
152152

153-
Return types are also supported report in Swagger's response.
153+
Return types are also supported and reported in Swagger's response.
154154

155155
## Faster Type Inference
156-
As Elysia 0.1 explore the possibility of using type inference for improving better Developer Experience, we found that sometimes it takes a long time to update type inference because of heavy type inference and in-efficient custom generic.
156+
As Elysia 0.1 explored the possibility of using type inference to improve Developer Experience, we found that sometimes it took a long time to update type inference because of heavy type inference and inefficient custom generics.
157157

158-
With Elysia 0.2 now optimized for faster type-inference, preventing duplication of heavy type unwrap, results in better performance for updating type and inference.
158+
With Elysia 0.2, type inference is now optimized for speed, preventing duplication of heavy type unwrapping, resulting in better performance for updating types and inference.
159159

160160
## Ecosystem
161-
With Elysia 0.2 enabling async plugin and deferred module many new plugins that isn't possible before became reality.
161+
With Elysia 0.2 enabling async plugins and deferred modules, many new plugins that weren't possible before have become a reality.
162162

163-
Like:
164-
- Elysia Static plugin with the non-blocking capability
163+
For example:
164+
- Elysia Static plugin with non-blocking capability
165165
- Eden with union-type inference for multiple responses
166166
- New Elysia Apollo Plugin for Elysia
167167

168-
### Notable Improvement:
169-
- `onRequest` and `onParse` now can access `PreContext`
168+
### Notable Improvements:
169+
- `onRequest` and `onParse` can now access `PreContext`
170170
- Support `application/x-www-form-urlencoded` by default
171-
- body parser now parse `content-type` with extra attribute eg. `application/json;charset=utf-8`
172-
- Decode URI parameter path parameter
171+
- Body parser now parses `content-type` with extra attributes, e.g., `application/json;charset=utf-8`
172+
- Decode URI path parameters
173173
- Eden now reports an error if Elysia is not installed
174-
- Skip declaration of existing model and decorators
174+
- Skip declaration of existing models and decorators
175175

176176
### Breaking Changes:
177177
- `onParse` now accepts `(context: PreContext, contentType: string)` instead of `(request: Request, contentType: string)`
178178
- To migrate, add `.request` to context to access `Request`
179179

180180
### Afterward
181-
Thank you for supporting Elysia and being interested in this project.
181+
Thank you for supporting Elysia and for your interest in this project.
182182

183-
This release brings better DX and hopefully all you need to write great software with Bun.
183+
This release brings better DX and hopefully everything you need to write great software with Bun.
184184

185-
Now we have [Discord server](https://discord.gg/eaFJ2KDJck) where you can ask any questions about Elysia or just hang out and chill around is also welcome.
185+
We now have a [Discord server](https://discord.gg/eaFJ2KDJck) where you can ask any questions about Elysia or just hang out and chill—everyone is welcome.
186186

187-
With the wonderful tools, we are happy to see what wonderful software you will build.
187+
With these wonderful tools, we are excited to see what amazing software you will build.
188188

189189
> Not to be part of those images someone paints
190190
>

0 commit comments

Comments
 (0)