diff --git a/docs/blog/elysia-02.md b/docs/blog/elysia-02.md
index 06631ee6..3929bed2 100644
--- a/docs/blog/elysia-02.md
+++ b/docs/blog/elysia-02.md
@@ -38,16 +38,17 @@ head:
date="29 Jan 2023"
>
-「[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.
+
+「[Blessing](https://youtu.be/3eytpBOkOFA)」brings many improvements, mainly in TypeScript performance, type-inference, better auto-completion, and new features to reduce boilerplate.
Named after YOASOBI's song「祝福」, an opening for Witch from "Mobile Suit Gundam: The Witch from Mercury".
## Defers / Lazy Loading Module
-With Elysia 0.2 now add support for the lazy loading module and async plugin.
+Elysia 0.2 now adds support for lazy loading modules and async plugins.
-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.
+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.
-To create defers module, simply mark the plugin as async:
+To create a deferred module, simply mark the plugin as async:
```typescript
const plugin = async (app: Elysia) => {
const stuff = await doSomeHeavyWork()
@@ -68,13 +69,12 @@ app.use(import('./some-heavy-module'))
This will register the module after the import is finished making the module lazy-load.
-Defers Plugin and lazy loading module will have all type-inference available right out of the box.
-
+Deferred plugins and lazy loading modules will have full type-inference available right out of the box.
## Reference Model
-Now Elysia can memorize schema and reference the schema directly in Schema fields, without creating an import file via `Elysia.setModel`
+Now Elysia can memorize schemas and reference them directly in Schema fields, without creating an import file via `Elysia.setModel`.
-This list of schema available, brings auto-completion, complete type-inference, and validation as you expected from inline schema.
+This list of available schemas brings auto-completion, complete type-inference, and validation as you would expect from inline schemas.
To use a reference model, first, register the model with `setModel`, then write a model name to reference a model in `schema`
```typescript
@@ -93,34 +93,34 @@ const app = new Elysia()
})
```
-This will bring auto-completion of known models.
+This will provide auto-completion of known models.
-And type reference stopping you from accidentally returning invalid type.
+And type references prevent you from accidentally returning an invalid type.
-Using `@elysiajs/swagger` will also create a separate `Model` section for listing available models.
+Using `@elysiajs/swagger` will also create a separate `Model` section to list available models.
-Reference also handles validation as you expected.
+References also handle validation as you would expect.
-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.
+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.
## OpenAPI Detail field
-Introducing new field `schema.detail` for customizing detail for the route following the standard of OpenAPI Schema V2 with auto-completion.
+Introducing a new field, `schema.detail`, for customizing details for the route, following the standard of OpenAPI Schema V2 with auto-completion.
-This allows you to write better documentation and fully editable Swagger as you want:
+This allows you to write better documentation and have a fully editable Swagger as you want:
## Union Type
-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.
+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.
-Results in invalidation of possible types,
+This resulted in invalidation of possible types.
## Union Response
-Made possible by Union Type, now returning multiple response status for `schema` now available using `schema.response[statusCode]`
+Made possible by Union Type, returning multiple response statuses for `schema` is now available using `schema.response[statusCode]`.
```typescript
app
@@ -148,43 +148,43 @@ app
)
```
-Elysia will try to validate all schema in `response` allowing one of the types to be returned.
+Elysia will try to validate all schemas in `response`, allowing one of the types to be returned.
-Return types are also supported report in Swagger's response.
+Return types are also supported and reported in Swagger's response.
## Faster Type Inference
-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.
+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.
-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.
+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.
## Ecosystem
-With Elysia 0.2 enabling async plugin and deferred module many new plugins that isn't possible before became reality.
+With Elysia 0.2 enabling async plugins and deferred modules, many new plugins that weren't possible before have become a reality.
-Like:
-- Elysia Static plugin with the non-blocking capability
+For example:
+- Elysia Static plugin with non-blocking capability
- Eden with union-type inference for multiple responses
- New Elysia Apollo Plugin for Elysia
-### Notable Improvement:
-- `onRequest` and `onParse` now can access `PreContext`
+### Notable Improvements:
+- `onRequest` and `onParse` can now access `PreContext`
- Support `application/x-www-form-urlencoded` by default
-- body parser now parse `content-type` with extra attribute eg. `application/json;charset=utf-8`
-- Decode URI parameter path parameter
+- Body parser now parses `content-type` with extra attributes, e.g., `application/json;charset=utf-8`
+- Decode URI path parameters
- Eden now reports an error if Elysia is not installed
-- Skip declaration of existing model and decorators
+- Skip declaration of existing models and decorators
### Breaking Changes:
- `onParse` now accepts `(context: PreContext, contentType: string)` instead of `(request: Request, contentType: string)`
- To migrate, add `.request` to context to access `Request`
### Afterward
-Thank you for supporting Elysia and being interested in this project.
+Thank you for supporting Elysia and for your interest in this project.
-This release brings better DX and hopefully all you need to write great software with Bun.
+This release brings better DX and hopefully everything you need to write great software with Bun.
-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.
+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.
-With the wonderful tools, we are happy to see what wonderful software you will build.
+With these wonderful tools, we are excited to see what amazing software you will build.
> Not to be part of those images someone paints
>