This is an automated email from the ASF dual-hosted git repository.

xushiyan pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/hudi.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new bb05a71d47bf chore(site): add blog author cards (#17756)
bb05a71d47bf is described below

commit bb05a71d47bf65baccc16961b2007e16fdf2ec46
Author: Shiyan Xu <[email protected]>
AuthorDate: Tue Dec 30 13:35:01 2025 -0600

    chore(site): add blog author cards (#17756)
---
 website/blog/2019-03-07-batch-vs-incremental.md    |   2 +-
 .../blog/2019-05-14-registering-dataset-to-hive.md |   2 +-
 .../blog/2019-09-09-ingesting-database-changes.md  |   2 +-
 website/blog/2020-01-15-delete-support-in-hudi.md  |   2 +-
 .../blog/2020-01-20-change-capture-using-aws.md    |   2 +-
 website/blog/2020-03-22-exporting-hudi-datasets.md |   2 +-
 ...0-05-28-monitoring-hudi-metrics-with-datadog.md |   2 +-
 .../blog/2020-11-11-hudi-indexing-mechanisms.md    |   2 +-
 website/blog/2021-02-13-hudi-key-generators.md     |   2 +-
 website/blog/2021-03-01-hudi-file-sizing.md        |   2 +-
 .../2021-07-21-streaming-data-lake-platform.md     |   2 +-
 .../blog/2021-08-18-improving-marker-mechanism.md  |   2 +-
 website/blog/2021-08-18-virtual-keys.md            |   2 +-
 website/blog/2021-08-23-async-clustering.md        |   2 +-
 website/blog/2021-08-23-s3-events-source.md        |   2 +-
 ...e-concurrency-control-are-we-too-optimistic.mdx |   2 +-
 ...022-01-06-apache-hudi-2021-a-year-in-review.mdx |   2 +-
 ...-data-capture-with-debezium-and-apache-hudi.mdx |   2 +-
 ...irst-Hudi-Lakehouse-with-AWS-Glue-and-AWS-S3.md |   2 +-
 ...022-12-29-Apache-Hudi-2022-A-Year-In-Review.mdx |   2 +-
 ...incrementally-process-data-with-apache-hudi.mdx |   3 +-
 .../2023-08-28-Apache-Hudi-From-Zero-To-One.mdx    |   2 +-
 ...3-09-06-Apache-Hudi-From-Zero-To-One-blog-2.mdx |   2 +-
 ...3-09-15-Apache-Hudi-From-Zero-To-One-blog-3.mdx |   2 +-
 ...ide-to-Apache-Hudi-with-PySpark-Part-1-of-2.mdx |   2 +-
 ...3-09-27-Apache-Hudi-From-Zero-To-One-blog-4.mdx |   2 +-
 ...3-10-18-Apache-Hudi-From-Zero-To-One-blog-5.mdx |   2 +-
 ...0-Its-Time-for-the-Universal-Data-Lakehouse.mdx |   2 +-
 website/blog/2023-11-01-record-level-index.md      |   2 +-
 ...3-11-13-Apache-Hudi-From-Zero-To-One-blog-6.mdx |   2 +-
 ...-Apache-Hudi-Part-1-History-Getting-Started.mdx |   2 +-
 ...3-12-06-Apache-Hudi-From-Zero-To-One-blog-7.mdx |   2 +-
 ...023-12-28-apache-hudi-2023-a-year-in-review.mdx |   2 +-
 ...4-01-05-Apache-Hudi-From-Zero-To-One-blog-8.mdx |   2 +-
 ...4-03-05-Apache-Hudi-From-Zero-To-One-blog-9.mdx |   2 +-
 ...-04-13-Apache-Hudi-From-Zero-To-One-blog-10.mdx |   2 +-
 ...-lakehouse-using-apache-hudi-daft-streamlit.mdx |   2 +-
 .../blog/2024-05-19-apache-hudi-on-aws-glue.mdx    |   2 +-
 ...6-18-how-to-use-apache-hudi-with-databricks.mdx |   2 +-
 .../blog/2024-07-11-what-is-a-data-lakehouse.md    |   2 +-
 website/blog/2024-07-30-data-lake-cdc.md           |   2 +-
 .../2024-11-19-automated-small-file-handling.md    |   2 +-
 .../2024-12-06-non-blocking-concurrency-control.md |   2 +-
 website/blog/2024-12-16-announcing-hudi-1-0-0.mdx  |   2 +-
 ...024-12-29-apache-hudi-2024-a-year-in-review.mdx |   2 +-
 .../2025-01-15-outofbox-key-generators-in-hudi.mdx |   2 +-
 website/blog/2025-01-28-concurrency-control.md     |   2 +-
 website/blog/2025-03-03-record-mergers-in-hudi.mdx |   2 +-
 .../2025-03-05-hudi-21-unique-differentiators.mdx  |   2 +-
 website/blog/2025-03-26-acid-transactions.mdx      |   2 +-
 website/blog/2025-03-26-clustering.mdx             |   2 +-
 website/blog/2025-03-26-dedupe.mdx                 |   2 +-
 website/blog/2025-04-02-secondary-index.md         |   2 +-
 website/blog/2025-05-29-lsm-timeline.md            |   2 +-
 .../blog/2025-06-16-Apache-Hudi-does-XYZ-110.mdx   |   2 +-
 ...5-07-10-building-a-rag-based-ai-recommender.mdx |   2 +-
 website/blog/2025-07-21-mor-comparison.md          |   2 +-
 ...08-29-building-a-rag-based-ai-recommender-2.mdx |   2 +-
 website/blog/2025-09-17-hudi-auto-gen-keys.mdx     |   2 +-
 ...ion_Stats_Enhancing_Column_Stats_in_Hudi_1.0.md |   2 +-
 ...ve-into-hudis-indexing-subsystem-part-1-of-2.md |   2 +-
 ...ve-into-hudis-indexing-subsystem-part-2-of-2.md |   2 +-
 ...5-11-25-apache-hudi-release-1-1-announcement.md |   2 +-
 ...ve-optimizing-streaming-ingestion-with-flink.md |   2 +-
 .../blog/2025-12-16-maximizing-throughput-nbcc.md  |   2 +-
 ...025-12-29-apache-hudi-2025-a-year-in-review.mdx |   2 +-
 website/blog/authors.yml                           |  59 +++++++++++++++++++++
 website/docusaurus.config.js                       |   4 +-
 website/src/components/BlogsSlider/index.js        |   2 +-
 .../src/theme/BlogPostItem/Header/Authors/index.js |  37 +++++++------
 .../BlogPostItem/Header/Authors/styles.module.css  |  27 +++++-----
 .../BlogPostItem/Header/Info/styles.module.css     |   1 +
 .../static/assets/images/authors/aditya-goenka.jpg | Bin 0 -> 17567 bytes
 .../static/assets/images/authors/danny-chan.jpg    | Bin 0 -> 84025 bytes
 .../assets/images/authors/dipankar-mazumdar.jpg    | Bin 0 -> 30770 bytes
 website/static/assets/images/authors/ethan-guo.jpg | Bin 0 -> 47365 bytes
 .../static/assets/images/authors/nadine-farah.png  | Bin 0 -> 722576 bytes
 .../assets/images/authors/rajesh-mahindra.jpg      | Bin 0 -> 103928 bytes
 .../assets/images/authors/sagar-lakshmipathy.jpg   | Bin 0 -> 85354 bytes
 .../static/assets/images/authors/sagar-sumit.jpg   | Bin 0 -> 85068 bytes
 .../static/assets/images/authors/shuo-cheng.jpg    | Bin 0 -> 100977 bytes
 website/static/assets/images/authors/sivabalan.jpg | Bin 0 -> 24022 bytes
 .../assets/images/authors/vinoth-chandar.png       | Bin 0 -> 382564 bytes
 website/static/assets/images/authors/xushiyan.jpg  | Bin 0 -> 1288871 bytes
 84 files changed, 161 insertions(+), 102 deletions(-)

diff --git a/website/blog/2019-03-07-batch-vs-incremental.md 
b/website/blog/2019-03-07-batch-vs-incremental.md
index aaec1d25e6c0..b08e15cd5b7a 100644
--- a/website/blog/2019-03-07-batch-vs-incremental.md
+++ b/website/blog/2019-03-07-batch-vs-incremental.md
@@ -1,6 +1,6 @@
 ---
 title: "Big Batch vs Incremental Processing"
-author: vinoth
+authors: [vinoth-chandar]
 category: blog
 image: /assets/images/blog/batch_vs_incremental.png
 ---
diff --git a/website/blog/2019-05-14-registering-dataset-to-hive.md 
b/website/blog/2019-05-14-registering-dataset-to-hive.md
index 0e8e20215129..02df299b0b1b 100644
--- a/website/blog/2019-05-14-registering-dataset-to-hive.md
+++ b/website/blog/2019-05-14-registering-dataset-to-hive.md
@@ -1,7 +1,7 @@
 ---
 title: "Registering sample dataset to Hive via beeline"
 excerpt: "How to manually register HUDI dataset into Hive using beeline"
-author: vinoth
+authors: [vinoth-chandar]
 category: blog
 tags:
 - how-to
diff --git a/website/blog/2019-09-09-ingesting-database-changes.md 
b/website/blog/2019-09-09-ingesting-database-changes.md
index 79373fd77681..ae54541b3c64 100644
--- a/website/blog/2019-09-09-ingesting-database-changes.md
+++ b/website/blog/2019-09-09-ingesting-database-changes.md
@@ -1,7 +1,7 @@
 ---
 title: "Ingesting Database changes via Sqoop/Hudi"
 excerpt: "Learn how to ingesting changes from a HUDI dataset using Sqoop/Hudi"
-author: vinoth
+authors: [vinoth-chandar]
 category: blog
 tags:
 - how-to
diff --git a/website/blog/2020-01-15-delete-support-in-hudi.md 
b/website/blog/2020-01-15-delete-support-in-hudi.md
index cacf5b428303..3e3215c10fe1 100644
--- a/website/blog/2020-01-15-delete-support-in-hudi.md
+++ b/website/blog/2020-01-15-delete-support-in-hudi.md
@@ -1,7 +1,7 @@
 ---
 title: "Delete support in Hudi"
 excerpt: "Deletes are supported at a record level in Hudi with 0.5.1 release. 
This blog is a “how to” blog on how to delete records in hudi."
-author: shivnarayan
+authors: [sivabalan]
 category: blog
 tags:
 - how-to
diff --git a/website/blog/2020-01-20-change-capture-using-aws.md 
b/website/blog/2020-01-20-change-capture-using-aws.md
index 29b2589174d7..df97d93d57e2 100644
--- a/website/blog/2020-01-20-change-capture-using-aws.md
+++ b/website/blog/2020-01-20-change-capture-using-aws.md
@@ -1,7 +1,7 @@
 ---
 title: "Change Capture Using AWS Database Migration Service and Hudi"
 excerpt: "In this blog, we will build an end-end solution for capturing 
changes from a MySQL instance running on AWS RDS to a Hudi table on S3, using 
capabilities in the Hudi 0.5.1 release."
-author: vinoth
+authors: [vinoth-chandar]
 category: blog
 image: /assets/images/blog/change-capture-architecture.png
 tags:
diff --git a/website/blog/2020-03-22-exporting-hudi-datasets.md 
b/website/blog/2020-03-22-exporting-hudi-datasets.md
index 47b9435f6d3f..7a922ad34cde 100644
--- a/website/blog/2020-03-22-exporting-hudi-datasets.md
+++ b/website/blog/2020-03-22-exporting-hudi-datasets.md
@@ -1,7 +1,7 @@
 ---
 title: "Export Hudi datasets as a copy or as different formats"
 excerpt: "Learn how to copy or export HUDI dataset in various formats."
-author: rxu
+authors: [xushiyan]
 category: blog
 tags:
 - how-to
diff --git a/website/blog/2020-05-28-monitoring-hudi-metrics-with-datadog.md 
b/website/blog/2020-05-28-monitoring-hudi-metrics-with-datadog.md
index 5a9058f6fdba..a5a559729a4d 100644
--- a/website/blog/2020-05-28-monitoring-hudi-metrics-with-datadog.md
+++ b/website/blog/2020-05-28-monitoring-hudi-metrics-with-datadog.md
@@ -1,7 +1,7 @@
 ---
 title: "Monitor Hudi metrics with Datadog"
 excerpt: "Introducing the feature of reporting Hudi metrics via Datadog HTTP 
API"
-author: rxu
+authors: [xushiyan]
 category: blog
 tags:
 - how-to
diff --git a/website/blog/2020-11-11-hudi-indexing-mechanisms.md 
b/website/blog/2020-11-11-hudi-indexing-mechanisms.md
index a25c81756c61..7340368f24a6 100644
--- a/website/blog/2020-11-11-hudi-indexing-mechanisms.md
+++ b/website/blog/2020-11-11-hudi-indexing-mechanisms.md
@@ -1,7 +1,7 @@
 ---
 title: "Employing the right indexes for fast updates, deletes in Apache Hudi"
 excerpt: "Detailing different indexing mechanisms in Hudi and when to use each 
of them"
-author: vinoth
+authors: [vinoth-chandar]
 category: blog
 image: /assets/images/blog/hudi-indexes/with-and-without-index.png
 tags:
diff --git a/website/blog/2021-02-13-hudi-key-generators.md 
b/website/blog/2021-02-13-hudi-key-generators.md
index 18781cf74c04..f58111160afb 100644
--- a/website/blog/2021-02-13-hudi-key-generators.md
+++ b/website/blog/2021-02-13-hudi-key-generators.md
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi Key Generators"
 excerpt: "Different key generators available with Apache Hudi"
-author: shivnarayan
+authors: [sivabalan]
 category: blog
 tags:
 - blog
diff --git a/website/blog/2021-03-01-hudi-file-sizing.md 
b/website/blog/2021-03-01-hudi-file-sizing.md
index 808688b37339..618ef8b2ab09 100644
--- a/website/blog/2021-03-01-hudi-file-sizing.md
+++ b/website/blog/2021-03-01-hudi-file-sizing.md
@@ -1,7 +1,7 @@
 ---
 title: "Streaming Responsibly - How Apache Hudi maintains optimum sized files"
 excerpt: "Maintaining well-sized files can improve query performance 
significantly"
-author: shivnarayan
+authors: [sivabalan]
 category: blog
 image: /assets/images/blog/2021-03-01-hudi-file-sizing.png
 tags:
diff --git a/website/blog/2021-07-21-streaming-data-lake-platform.md 
b/website/blog/2021-07-21-streaming-data-lake-platform.md
index b59870323e3f..ae742997c07f 100644
--- a/website/blog/2021-07-21-streaming-data-lake-platform.md
+++ b/website/blog/2021-07-21-streaming-data-lake-platform.md
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi - The Data Lake Platform"
 excerpt: "It's been called many things. But, we have always been building a 
data lake platform"
-author: vinoth
+authors: [vinoth-chandar]
 category: blog
 image: /assets/images/blog/hudi_streaming.png
 tags:
diff --git a/website/blog/2021-08-18-improving-marker-mechanism.md 
b/website/blog/2021-08-18-improving-marker-mechanism.md
index db10831e8c35..2a97a7ea6284 100644
--- a/website/blog/2021-08-18-improving-marker-mechanism.md
+++ b/website/blog/2021-08-18-improving-marker-mechanism.md
@@ -1,7 +1,7 @@
 ---
 title: "Improving Marker Mechanism in Apache Hudi"
 excerpt: "We introduce a new marker mechanism leveraging the timeline server 
to address performance bottlenecks due to rate-limiting on cloud storage like 
AWS S3."
-author: yihua
+authors: [ethan-guo]
 category: blog
 image: 
/assets/images/blog/marker-mechanism/timeline-server-based-marker-mechanism.png
 tags:
diff --git a/website/blog/2021-08-18-virtual-keys.md 
b/website/blog/2021-08-18-virtual-keys.md
index 20b090114f12..eb40c013d602 100644
--- a/website/blog/2021-08-18-virtual-keys.md
+++ b/website/blog/2021-08-18-virtual-keys.md
@@ -1,7 +1,7 @@
 ---
 title: "Adding support for Virtual Keys in Hudi"
 excerpt: "Supporting Virtual keys in Hudi for reducing storage overhead"
-author: shivnarayan
+authors: [sivabalan]
 category: blog
 tags:
 - design
diff --git a/website/blog/2021-08-23-async-clustering.md 
b/website/blog/2021-08-23-async-clustering.md
index 64cadd9e413f..f9ae37bbbcf9 100644
--- a/website/blog/2021-08-23-async-clustering.md
+++ b/website/blog/2021-08-23-async-clustering.md
@@ -1,7 +1,7 @@
 ---
 title: "Asynchronous Clustering using Hudi"
 excerpt: "How to setup Hudi for asynchronous clustering"
-author: codope
+authors: [sagar-sumit]
 category: blog
 image: /assets/images/blog/clustering/example_perf_improvement.png
 tags:
diff --git a/website/blog/2021-08-23-s3-events-source.md 
b/website/blog/2021-08-23-s3-events-source.md
index 682543aa3d72..7605788797e1 100644
--- a/website/blog/2021-08-23-s3-events-source.md
+++ b/website/blog/2021-08-23-s3-events-source.md
@@ -1,7 +1,7 @@
 ---
 title: "Reliable ingestion from AWS S3 using Hudi"
 excerpt: "From listing to log-based approach, a reliable way of ingesting data 
from AWS S3 into Hudi."
-author: codope
+authors: [sagar-sumit]
 category: blog
 image: /assets/images/blog/s3_events_source_design.png
 tags:
diff --git 
a/website/blog/2021-12-16-lakehouse-concurrency-control-are-we-too-optimistic.mdx
 
b/website/blog/2021-12-16-lakehouse-concurrency-control-are-we-too-optimistic.mdx
index aa25490b268f..5c7f7a8570ac 100644
--- 
a/website/blog/2021-12-16-lakehouse-concurrency-control-are-we-too-optimistic.mdx
+++ 
b/website/blog/2021-12-16-lakehouse-concurrency-control-are-we-too-optimistic.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Lakehouse Concurrency Control: Are we too optimistic?"
 excerpt: "Vinoth Chandar, original creator of Apache Hudi, dives into 
concurrency control mechanisms"
-author: vinoth
+authors: [vinoth-chandar]
 category: blog
 image: /assets/images/blog/concurrency/MultiWriter.gif
 tags:
diff --git a/website/blog/2022-01-06-apache-hudi-2021-a-year-in-review.mdx 
b/website/blog/2022-01-06-apache-hudi-2021-a-year-in-review.mdx
index f56f50ed19e3..7e9102a00362 100644
--- a/website/blog/2022-01-06-apache-hudi-2021-a-year-in-review.mdx
+++ b/website/blog/2022-01-06-apache-hudi-2021-a-year-in-review.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi - 2021 a Year in Review"
 excerpt: "A reflection on the growth and momentum of Apache Hudi in 2021"
-author: vinoth
+authors: [vinoth-chandar]
 category: blog
 image: /assets/images/Hudi_community.png
 tags:
diff --git 
a/website/blog/2022-01-14-change-data-capture-with-debezium-and-apache-hudi.mdx 
b/website/blog/2022-01-14-change-data-capture-with-debezium-and-apache-hudi.mdx
index 8cac6e2918a3..3fc1e2002159 100644
--- 
a/website/blog/2022-01-14-change-data-capture-with-debezium-and-apache-hudi.mdx
+++ 
b/website/blog/2022-01-14-change-data-capture-with-debezium-and-apache-hudi.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Change Data Capture with Debezium and Apache Hudi"
 excerpt: "A review of new Debezium source connector for Apache Hudi"
-author: Rajesh Mahindra
+authors: [rajesh-mahindra]
 category: blog
 image: /assets/images/blog/debezium.png
 tags:
diff --git 
a/website/blog/2022-12-19-Build-Your-First-Hudi-Lakehouse-with-AWS-Glue-and-AWS-S3.md
 
b/website/blog/2022-12-19-Build-Your-First-Hudi-Lakehouse-with-AWS-Glue-and-AWS-S3.md
index b4f7b2c5ec61..2357f2351675 100644
--- 
a/website/blog/2022-12-19-Build-Your-First-Hudi-Lakehouse-with-AWS-Glue-and-AWS-S3.md
+++ 
b/website/blog/2022-12-19-Build-Your-First-Hudi-Lakehouse-with-AWS-Glue-and-AWS-S3.md
@@ -1,7 +1,7 @@
 ---
 title: "Build Your First Hudi Lakehouse with AWS S3 and AWS Glue"
 excerpt: "Follow this tutorial on building your first hudi lakehouse with AWS 
S3 & AWS Glue"
-author: Nadine Farah
+authors: [nadine-farah]
 category: blog
 image: /assets/images/blog/DataCouncil.jpg
 tags:
diff --git a/website/blog/2022-12-29-Apache-Hudi-2022-A-Year-In-Review.mdx 
b/website/blog/2022-12-29-Apache-Hudi-2022-A-Year-In-Review.mdx
index b9572cabf0d4..f79117afbb31 100644
--- a/website/blog/2022-12-29-Apache-Hudi-2022-A-Year-In-Review.mdx
+++ b/website/blog/2022-12-29-Apache-Hudi-2022-A-Year-In-Review.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi 2022 - A year in Review"
 excerpt: "2022 was the best year for Apache Hudi yet! Huge thank you to 
everyone who contributed!"
-author: Sivabalan Narayanan
+authors: [sivabalan]
 category: blog
 image: /assets/images/blog/Apache-Hudi-2022-Review.png
 tags:
diff --git 
a/website/blog/2023-04-18-getting-started-incrementally-process-data-with-apache-hudi.mdx
 
b/website/blog/2023-04-18-getting-started-incrementally-process-data-with-apache-hudi.mdx
index 4fc3b4398817..38cfabf25647 100644
--- 
a/website/blog/2023-04-18-getting-started-incrementally-process-data-with-apache-hudi.mdx
+++ 
b/website/blog/2023-04-18-getting-started-incrementally-process-data-with-apache-hudi.mdx
@@ -1,7 +1,6 @@
 ---
 title: "Getting Started: Incrementally process data with Apache Hudi"
-authors:
-- name: Raymond Xu
+authors: [xushiyan]
 category: blog
 image: 
/assets/images/blog/2023-04-18-getting-started-incrementally-process-data-with-apache-hudi.png
 tags:
diff --git a/website/blog/2023-08-28-Apache-Hudi-From-Zero-To-One.mdx 
b/website/blog/2023-08-28-Apache-Hudi-From-Zero-To-One.mdx
index d674e02ff947..b0797a460b89 100644
--- a/website/blog/2023-08-28-Apache-Hudi-From-Zero-To-One.mdx
+++ b/website/blog/2023-08-28-Apache-Hudi-From-Zero-To-One.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi: From Zero To One (1/10)"
 excerpt: "A first glance at Hudi's storage format"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2023-08-28-Apache-Hudi-From-Zero-To-One-blog-1.png
 tags:
diff --git a/website/blog/2023-09-06-Apache-Hudi-From-Zero-To-One-blog-2.mdx 
b/website/blog/2023-09-06-Apache-Hudi-From-Zero-To-One-blog-2.mdx
index e1049c052448..6a3f7a8a9b8a 100644
--- a/website/blog/2023-09-06-Apache-Hudi-From-Zero-To-One-blog-2.mdx
+++ b/website/blog/2023-09-06-Apache-Hudi-From-Zero-To-One-blog-2.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi: From Zero To One (2/10)"
 excerpt: "Dive into read operation flow and query types"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2023-09-06-Apache-Hudi-From-Zero-To-One-blog-2.png
 tags:
diff --git a/website/blog/2023-09-15-Apache-Hudi-From-Zero-To-One-blog-3.mdx 
b/website/blog/2023-09-15-Apache-Hudi-From-Zero-To-One-blog-3.mdx
index 9fc5651d9e02..e6f4f8ce7316 100644
--- a/website/blog/2023-09-15-Apache-Hudi-From-Zero-To-One-blog-3.mdx
+++ b/website/blog/2023-09-15-Apache-Hudi-From-Zero-To-One-blog-3.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi: From Zero To One (3/10)"
 excerpt: "Understand write flows and operations"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2023-09-15-Apache-Hudi-From-Zero-To-One-blog-3.png
 tags:
diff --git 
a/website/blog/2023-09-19-A-Beginners-Guide-to-Apache-Hudi-with-PySpark-Part-1-of-2.mdx
 
b/website/blog/2023-09-19-A-Beginners-Guide-to-Apache-Hudi-with-PySpark-Part-1-of-2.mdx
index 863d6f51f5b8..3b674cedab50 100644
--- 
a/website/blog/2023-09-19-A-Beginners-Guide-to-Apache-Hudi-with-PySpark-Part-1-of-2.mdx
+++ 
b/website/blog/2023-09-19-A-Beginners-Guide-to-Apache-Hudi-with-PySpark-Part-1-of-2.mdx
@@ -1,6 +1,6 @@
 ---
 title: "A Beginner’s Guide to Apache Hudi with PySpark — Part 1 of 2"
-author: Sagar Lakshmipathy
+authors: [sagar-lakshmipathy]
 category: blog
 image: 
/assets/images/blog/2023-09-19-A-Beginners-Guide-to-Apache-Hudi-with-PySpark-Part-1-of-2.png
 tags:
diff --git a/website/blog/2023-09-27-Apache-Hudi-From-Zero-To-One-blog-4.mdx 
b/website/blog/2023-09-27-Apache-Hudi-From-Zero-To-One-blog-4.mdx
index 7caaa1d062d5..74b1fbc053e5 100644
--- a/website/blog/2023-09-27-Apache-Hudi-From-Zero-To-One-blog-4.mdx
+++ b/website/blog/2023-09-27-Apache-Hudi-From-Zero-To-One-blog-4.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi: From Zero To One (4/10)"
 excerpt: "All about writer indexes"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2023-09-27-Apache-Hudi-From-Zero-To-One-blog-4.png
 tags:
diff --git a/website/blog/2023-10-18-Apache-Hudi-From-Zero-To-One-blog-5.mdx 
b/website/blog/2023-10-18-Apache-Hudi-From-Zero-To-One-blog-5.mdx
index 2f7ab2a074a1..876f1907a92f 100644
--- a/website/blog/2023-10-18-Apache-Hudi-From-Zero-To-One-blog-5.mdx
+++ b/website/blog/2023-10-18-Apache-Hudi-From-Zero-To-One-blog-5.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi: From Zero To One (5/10)"
 excerpt: "Introduce table services: compaction, cleaning, and indexing"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2023-10-18-Apache-Hudi-From-Zero-To-One-blog-5.png
 tags:
diff --git 
a/website/blog/2023-10-20-Its-Time-for-the-Universal-Data-Lakehouse.mdx 
b/website/blog/2023-10-20-Its-Time-for-the-Universal-Data-Lakehouse.mdx
index 3373e0d7f980..ee0aae712e52 100644
--- a/website/blog/2023-10-20-Its-Time-for-the-Universal-Data-Lakehouse.mdx
+++ b/website/blog/2023-10-20-Its-Time-for-the-Universal-Data-Lakehouse.mdx
@@ -1,7 +1,7 @@
 ---
 title: "It's Time for the Universal Data Lakehouse"
 excerpt: "Universal Lakehouse"
-author: Vinoth Chandar
+authors: [vinoth-chandar]
 category: blog
 image: 
/assets/images/blog/2023-10-20-Its-Time-for-the-Universal-Data-Lakehouse.png
 tags:
diff --git a/website/blog/2023-11-01-record-level-index.md 
b/website/blog/2023-11-01-record-level-index.md
index 66089dce5d91..c3bc2e3d5cc5 100644
--- a/website/blog/2023-11-01-record-level-index.md
+++ b/website/blog/2023-11-01-record-level-index.md
@@ -1,7 +1,7 @@
 ---
 title: "Record Level Index: Hudi's blazing fast indexing for large-scale 
datasets"
 excerpt: "Announcing the Record Level Index in Apache Hudi"
-author: Shiyan Xu and Sivabalan Narayanan
+authors: [xushiyan, sivabalan]
 category: blog
 image: /assets/images/blog/record-level-index/03.RLI_bulkinsert.png
 tags:
diff --git a/website/blog/2023-11-13-Apache-Hudi-From-Zero-To-One-blog-6.mdx 
b/website/blog/2023-11-13-Apache-Hudi-From-Zero-To-One-blog-6.mdx
index c9d6f65cefd6..6849136962ad 100644
--- a/website/blog/2023-11-13-Apache-Hudi-From-Zero-To-One-blog-6.mdx
+++ b/website/blog/2023-11-13-Apache-Hudi-From-Zero-To-One-blog-6.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi: From Zero To One (6/10)"
 excerpt: "Demystify clustering and space-filling curves"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2023-11-13-Apache-Hudi-From-Zero-To-One-blog-6.png
 tags:
diff --git 
a/website/blog/2023-11-28-Apache-Hudi-Part-1-History-Getting-Started.mdx 
b/website/blog/2023-11-28-Apache-Hudi-Part-1-History-Getting-Started.mdx
index f58d561acc88..a6cb38e505cd 100644
--- a/website/blog/2023-11-28-Apache-Hudi-Part-1-History-Getting-Started.mdx
+++ b/website/blog/2023-11-28-Apache-Hudi-Part-1-History-Getting-Started.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi (Part 1): History, Getting Started"
 excerpt: "Apache Hudi (Part 1): History, Getting Started"
-author: Dipankar Mazumdar
+authors: [dipankar-mazumdar]
 category: blog
 image: 
/assets/images/blog/2023-11-28-Apache-Hudi-Part-1-History-Getting-Started.png
 tags:
diff --git a/website/blog/2023-12-06-Apache-Hudi-From-Zero-To-One-blog-7.mdx 
b/website/blog/2023-12-06-Apache-Hudi-From-Zero-To-One-blog-7.mdx
index 37c03aeeffbc..a157bdb062a5 100644
--- a/website/blog/2023-12-06-Apache-Hudi-From-Zero-To-One-blog-7.mdx
+++ b/website/blog/2023-12-06-Apache-Hudi-From-Zero-To-One-blog-7.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi: From Zero To One (7/10)"
 excerpt: "Concurrently run writers and table services"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2023-12-06-Apache-Hudi-From-Zero-To-One-blog-7.png
 tags:
diff --git a/website/blog/2023-12-28-apache-hudi-2023-a-year-in-review.mdx 
b/website/blog/2023-12-28-apache-hudi-2023-a-year-in-review.mdx
index 644f44130f5c..88b766c762cf 100644
--- a/website/blog/2023-12-28-apache-hudi-2023-a-year-in-review.mdx
+++ b/website/blog/2023-12-28-apache-hudi-2023-a-year-in-review.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi 2023: A Year In Review"
 excerpt: "Reflect on and celebrate the myriad of exciting developments and 
accomplishments that have defined the year 2023 for the Hudi community."
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2023-12-28-a-year-in-review-2023/00.cover.png
 tags:
diff --git a/website/blog/2024-01-05-Apache-Hudi-From-Zero-To-One-blog-8.mdx 
b/website/blog/2024-01-05-Apache-Hudi-From-Zero-To-One-blog-8.mdx
index ef8b3419b587..daeae15b1f4f 100644
--- a/website/blog/2024-01-05-Apache-Hudi-From-Zero-To-One-blog-8.mdx
+++ b/website/blog/2024-01-05-Apache-Hudi-From-Zero-To-One-blog-8.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi: From Zero To One (8/10)"
 excerpt: "Read and process incrementally"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2024-01-05-Apache-Hudi-From-Zero-To-One-blog-8.png
 tags:
diff --git a/website/blog/2024-03-05-Apache-Hudi-From-Zero-To-One-blog-9.mdx 
b/website/blog/2024-03-05-Apache-Hudi-From-Zero-To-One-blog-9.mdx
index 806df01b461e..e47849d82c68 100644
--- a/website/blog/2024-03-05-Apache-Hudi-From-Zero-To-One-blog-9.mdx
+++ b/website/blog/2024-03-05-Apache-Hudi-From-Zero-To-One-blog-9.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi: From Zero To One (9/10)"
 excerpt: "Hudi Streamer - a Swiss Army knife for ingestion"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2024-03-05-Apache-Hudi-From-Zero-To-One-blog-9.png
 tags:
diff --git a/website/blog/2024-04-13-Apache-Hudi-From-Zero-To-One-blog-10.mdx 
b/website/blog/2024-04-13-Apache-Hudi-From-Zero-To-One-blog-10.mdx
index 35ddfed8911d..63fb59759af5 100644
--- a/website/blog/2024-04-13-Apache-Hudi-From-Zero-To-One-blog-10.mdx
+++ b/website/blog/2024-04-13-Apache-Hudi-From-Zero-To-One-blog-10.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi: From Zero To One (10/10)"
 excerpt: "Becoming 'One' - the upcoming 1.0 highlights"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2024-04-13-Apache-Hudi-From-Zero-To-One-blog-10.jpg
 tags:
diff --git 
a/website/blog/2024-05-10-building-analytical-apps-on-the-lakehouse-using-apache-hudi-daft-streamlit.mdx
 
b/website/blog/2024-05-10-building-analytical-apps-on-the-lakehouse-using-apache-hudi-daft-streamlit.mdx
index 15f1523053bd..4096fecc2709 100644
--- 
a/website/blog/2024-05-10-building-analytical-apps-on-the-lakehouse-using-apache-hudi-daft-streamlit.mdx
+++ 
b/website/blog/2024-05-10-building-analytical-apps-on-the-lakehouse-using-apache-hudi-daft-streamlit.mdx
@@ -1,6 +1,6 @@
 ---
 title: "Building Analytical Apps on the Lakehouse using Apache Hudi, Daft & 
Streamlit"
-author: Dipankar Mazumdar
+authors: [dipankar-mazumdar]
 category: blog
 image: 
/assets/images/blog/2024-05-10-building-analytical-apps-on-the-lakehouse-using-apache-hudi-daft-streamlit.png
 tags:
diff --git a/website/blog/2024-05-19-apache-hudi-on-aws-glue.mdx 
b/website/blog/2024-05-19-apache-hudi-on-aws-glue.mdx
index 51095f7f03df..c59111f61879 100644
--- a/website/blog/2024-05-19-apache-hudi-on-aws-glue.mdx
+++ b/website/blog/2024-05-19-apache-hudi-on-aws-glue.mdx
@@ -1,6 +1,6 @@
 ---
 title: "Apache Hudi on AWS Glue"
-author: Sagar Lakshmipathy
+authors: [sagar-lakshmipathy]
 category: blog
 image: /assets/images/blog/2024-05-19-apache-hudi-on-aws-glue.png
 tags:
diff --git a/website/blog/2024-06-18-how-to-use-apache-hudi-with-databricks.mdx 
b/website/blog/2024-06-18-how-to-use-apache-hudi-with-databricks.mdx
index 850e93b94e2d..4a4ca3b2cd88 100644
--- a/website/blog/2024-06-18-how-to-use-apache-hudi-with-databricks.mdx
+++ b/website/blog/2024-06-18-how-to-use-apache-hudi-with-databricks.mdx
@@ -1,6 +1,6 @@
 ---
 title: "How to use Apache Hudi with Databricks"
-author: Sagar Lakshmipathy
+authors: [sagar-lakshmipathy]
 category: blog
 image: 
/assets/images/blog/2024-06-18-how-to-use-apache-hudi-with-databricks.jpeg
 tags:
diff --git a/website/blog/2024-07-11-what-is-a-data-lakehouse.md 
b/website/blog/2024-07-11-what-is-a-data-lakehouse.md
index c8c7eabf5653..2e43a6487958 100644
--- a/website/blog/2024-07-11-what-is-a-data-lakehouse.md
+++ b/website/blog/2024-07-11-what-is-a-data-lakehouse.md
@@ -1,7 +1,7 @@
 ---
 title: "What is a Data Lakehouse & How does it Work?"
 excerpt: "Explains the concept of the lakehouse architecture"
-author: Dipankar Mazumdar
+authors: [dipankar-mazumdar]
 category: blog
 image: /assets/images/blog/dlh_1200.png
 tags:
diff --git a/website/blog/2024-07-30-data-lake-cdc.md 
b/website/blog/2024-07-30-data-lake-cdc.md
index 7207b9164f71..a3e4fd9760de 100644
--- a/website/blog/2024-07-30-data-lake-cdc.md
+++ b/website/blog/2024-07-30-data-lake-cdc.md
@@ -1,7 +1,7 @@
 ---
 title: "Understanding Data Lake Change Data Capture"
 excerpt: "Explains the concept of CDC in data lakes"
-author: Sagar Lakshmipathy
+authors: [sagar-lakshmipathy]
 category: blog
 image: /assets/images/blog/data-lake-cdc/hudi-cdc.jpg
 tags:
diff --git a/website/blog/2024-11-19-automated-small-file-handling.md 
b/website/blog/2024-11-19-automated-small-file-handling.md
index c49c7064768d..0d592d080057 100644
--- a/website/blog/2024-11-19-automated-small-file-handling.md
+++ b/website/blog/2024-11-19-automated-small-file-handling.md
@@ -1,7 +1,7 @@
 ---
 title: "Hudi’s Automatic File Sizing Delivers Unmatched Performance"
 excerpt: "Explains how Hudi handles small files during ingestion and its 
benefits"
-author: Aditya Goenka
+authors: [aditya-goenka]
 category: blog
 image: 
/assets/images/blog/2024-06-07-apache-hudi-a-deep-dive-with-python-code-examples.png
 tags:
diff --git a/website/blog/2024-12-06-non-blocking-concurrency-control.md 
b/website/blog/2024-12-06-non-blocking-concurrency-control.md
index 685c010d5adc..5b63e04347a1 100644
--- a/website/blog/2024-12-06-non-blocking-concurrency-control.md
+++ b/website/blog/2024-12-06-non-blocking-concurrency-control.md
@@ -1,7 +1,7 @@
 ---
 title: "Introducing Hudi's Non-blocking Concurrency Control for streaming, 
high-frequency writes"
 excerpt: "Announcing the Non-blocking Concurrency Control in Apache Hudi"
-author: Danny Chan
+authors: [danny-chan]
 category: blog
 image: 
/assets/images/blog/non-blocking-concurrency-control/lsm_archive_timeline.png
 tags:
diff --git a/website/blog/2024-12-16-announcing-hudi-1-0-0.mdx 
b/website/blog/2024-12-16-announcing-hudi-1-0-0.mdx
index e4f470a29e5d..d6bd9e74b452 100644
--- a/website/blog/2024-12-16-announcing-hudi-1-0-0.mdx
+++ b/website/blog/2024-12-16-announcing-hudi-1-0-0.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Announcing Apache Hudi 1.0 and the Next Generation of Data Lakehouses"
 excerpt: "game-changing major release, that reimagines Hudi and Data 
Lakehouses."
-author: Vinoth Chandar
+authors: [vinoth-chandar]
 category: blog
 image: /assets/images/blog/dlms-hierarchy.png
 tags:
diff --git a/website/blog/2024-12-29-apache-hudi-2024-a-year-in-review.mdx 
b/website/blog/2024-12-29-apache-hudi-2024-a-year-in-review.mdx
index 0ace1231068a..961a80754a5d 100644
--- a/website/blog/2024-12-29-apache-hudi-2024-a-year-in-review.mdx
+++ b/website/blog/2024-12-29-apache-hudi-2024-a-year-in-review.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi 2024: A Year In Review"
 excerpt: "Reflect on and celebrate the myriad of exciting developments and 
accomplishments that have defined the year 2024 for the Hudi community."
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2024-12-29-a-year-in-review-2024/cover.jpg
 tags:
diff --git a/website/blog/2025-01-15-outofbox-key-generators-in-hudi.mdx 
b/website/blog/2025-01-15-outofbox-key-generators-in-hudi.mdx
index 2752e7722f3d..2cfa06ee8a10 100644
--- a/website/blog/2025-01-15-outofbox-key-generators-in-hudi.mdx
+++ b/website/blog/2025-01-15-outofbox-key-generators-in-hudi.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Out of the box Key Generators in Apache Hudi"
 excerpt: "Explain need for key gerators and out of box key generators in 
Apache Hudi"
-author: Aditya Goenka
+authors: [aditya-goenka]
 category: blog
 image: 
/assets/images/blog/2024-06-07-apache-hudi-a-deep-dive-with-python-code-examples.png
 tags:
diff --git a/website/blog/2025-01-28-concurrency-control.md 
b/website/blog/2025-01-28-concurrency-control.md
index a81416ed6196..6788449f1d8c 100644
--- a/website/blog/2025-01-28-concurrency-control.md
+++ b/website/blog/2025-01-28-concurrency-control.md
@@ -1,7 +1,7 @@
 ---
 title: "Concurrency Control in Open Data Lakehouse"
 excerpt: "How various concurrency control techniques works in Apache Hudi, 
Apache Iceberg & Delta Lake"
-author: Dipankar Mazumdar
+authors: [dipankar-mazumdar]
 category: blog
 image: /assets/images/blog/concurrency_control/concurrency_blog_thumb.jpg
 tags:
diff --git a/website/blog/2025-03-03-record-mergers-in-hudi.mdx 
b/website/blog/2025-03-03-record-mergers-in-hudi.mdx
index 6ee14571eed6..171a2109c384 100644
--- a/website/blog/2025-03-03-record-mergers-in-hudi.mdx
+++ b/website/blog/2025-03-03-record-mergers-in-hudi.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Record Mergers in Apache Hudi"
 excerpt: "Explain need for record mergers in Apache Hudi and implemenation 
details"
-author: Aditya Goenka
+authors: [aditya-goenka]
 category: blog
 image: /assets/images/blog/2025-03-03-record-mergers-in-apache-hudi.png
 tags:
diff --git a/website/blog/2025-03-05-hudi-21-unique-differentiators.mdx 
b/website/blog/2025-03-05-hudi-21-unique-differentiators.mdx
index 2bd1825e4ca8..ff52c4d447d4 100644
--- a/website/blog/2025-03-05-hudi-21-unique-differentiators.mdx
+++ b/website/blog/2025-03-05-hudi-21-unique-differentiators.mdx
@@ -1,7 +1,7 @@
 ---
 title: "21 Unique Reasons Why Apache Hudi Should Be Your Next Data Lakehouse"
 excerpt: "Unique Differentiators of Apache Hudi, that stand out from other 
projects"
-author: Vinoth Chandar
+authors: [vinoth-chandar]
 category: blog
 image: /assets/images/blog/2025-03-05-21-reasons-why.png
 tags:
diff --git a/website/blog/2025-03-26-acid-transactions.mdx 
b/website/blog/2025-03-26-acid-transactions.mdx
index 927611cc41c3..2bbd11b6abe2 100644
--- a/website/blog/2025-03-26-acid-transactions.mdx
+++ b/website/blog/2025-03-26-acid-transactions.mdx
@@ -1,6 +1,6 @@
 ---
 title: "ACID Transactions in an Open Data Lakehouse"
-author: Dipankar Mazumdar
+authors: [dipankar-mazumdar]
 category: blog
 image: /assets/images/blog/acid.png
 tags:
diff --git a/website/blog/2025-03-26-clustering.mdx 
b/website/blog/2025-03-26-clustering.mdx
index d8bdaaab3663..d807afa48ba9 100644
--- a/website/blog/2025-03-26-clustering.mdx
+++ b/website/blog/2025-03-26-clustering.mdx
@@ -1,6 +1,6 @@
 ---
 title: "What is Clustering in an Open Data Lakehouse?"
-author: Dipankar Mazumdar
+authors: [dipankar-mazumdar]
 category: blog
 image: /assets/images/blog/cluster.png
 tags:
diff --git a/website/blog/2025-03-26-dedupe.mdx 
b/website/blog/2025-03-26-dedupe.mdx
index 9307326bba80..6c77b27b65c3 100644
--- a/website/blog/2025-03-26-dedupe.mdx
+++ b/website/blog/2025-03-26-dedupe.mdx
@@ -1,6 +1,6 @@
 ---
 title: "Data Deduplication Strategies in an Open Lakehouse Architecture"
-author: Dipankar Mazumdar, Aditya Goenka
+authors: [dipankar-mazumdar, aditya-goenka]
 category: blog
 image: /assets/images/blog/dedupe.png
 tags:
diff --git a/website/blog/2025-04-02-secondary-index.md 
b/website/blog/2025-04-02-secondary-index.md
index 6dd1309644f8..35c9400cf79e 100644
--- a/website/blog/2025-04-02-secondary-index.md
+++ b/website/blog/2025-04-02-secondary-index.md
@@ -1,7 +1,7 @@
 ---
 title: "Introducing Secondary Index in Apache Hudi Lakehouse Platform"
 excerpt: "What's & How's of Secondary indexes in Hudi 1.0"
-author: Dipankar Mazumdar, Aditya Goenka
+authors: [dipankar-mazumdar, aditya-goenka]
 category: blog
 image: /assets/images/blog/sec-thumb.jpg
 tags:
diff --git a/website/blog/2025-05-29-lsm-timeline.md 
b/website/blog/2025-05-29-lsm-timeline.md
index 6af7496cc32c..26b91d9d7f7f 100644
--- a/website/blog/2025-05-29-lsm-timeline.md
+++ b/website/blog/2025-05-29-lsm-timeline.md
@@ -1,7 +1,7 @@
 ---
 title: "Exploring Apache Hudi’s New Log-Structured Merge (LSM) Timeline"
 excerpt: "What is the new LSM timeline in Hudi & how is it implemented"
-author: Dipankar Mazumdar
+authors: [dipankar-mazumdar]
 category: blog
 image: /assets/images/blog/lsm-1200x600.jpg
 tags:
diff --git a/website/blog/2025-06-16-Apache-Hudi-does-XYZ-110.mdx 
b/website/blog/2025-06-16-Apache-Hudi-does-XYZ-110.mdx
index 5d2c70a2a7ac..5e3fa6f2f59f 100644
--- a/website/blog/2025-06-16-Apache-Hudi-does-XYZ-110.mdx
+++ b/website/blog/2025-06-16-Apache-Hudi-does-XYZ-110.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi does XYZ (1/10): File pruning with multi-modal index"
 excerpt: "File pruning with multi-modal index"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2025-06-16-Apache-Hudi-does-XYZ-110-cover.jpg
 tags:
diff --git a/website/blog/2025-07-10-building-a-rag-based-ai-recommender.mdx 
b/website/blog/2025-07-10-building-a-rag-based-ai-recommender.mdx
index 5316d7e65d2e..5d657a6f64f7 100644
--- a/website/blog/2025-07-10-building-a-rag-based-ai-recommender.mdx
+++ b/website/blog/2025-07-10-building-a-rag-based-ai-recommender.mdx
@@ -1,6 +1,6 @@
 ---
 title: "Building a RAG-based AI Recommender (Part 1/2)"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2025-07-10-building-a-rag-based-ai-recommender.png
 tags:
diff --git a/website/blog/2025-07-21-mor-comparison.md 
b/website/blog/2025-07-21-mor-comparison.md
index dd24acabd692..ea175c28a6df 100644
--- a/website/blog/2025-07-21-mor-comparison.md
+++ b/website/blog/2025-07-21-mor-comparison.md
@@ -1,7 +1,7 @@
 ---
 title: "A Deep Dive on Merge-on-Read (MoR) in Lakehouse Table Formats"
 excerpt: "How is MoR implemented in Hudi, Iceberg, Delta and how it impacts 
workloads"
-author: Dipankar Mazumdar
+authors: [dipankar-mazumdar]
 category: blog
 image: /assets/images/blog/2025-07-21-mor-comparison/mor-1200x600.jpg
 tags:
diff --git a/website/blog/2025-08-29-building-a-rag-based-ai-recommender-2.mdx 
b/website/blog/2025-08-29-building-a-rag-based-ai-recommender-2.mdx
index b3ace2773e0d..4f6099905c87 100644
--- a/website/blog/2025-08-29-building-a-rag-based-ai-recommender-2.mdx
+++ b/website/blog/2025-08-29-building-a-rag-based-ai-recommender-2.mdx
@@ -1,6 +1,6 @@
 ---
 title: "Building a RAG-based AI Recommender (2/2)"
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: /assets/images/blog/2025-08-29-building-a-rag-based-ai-recommender-2.jpg
 tags:
diff --git a/website/blog/2025-09-17-hudi-auto-gen-keys.mdx 
b/website/blog/2025-09-17-hudi-auto-gen-keys.mdx
index 335169726863..4f0090a28099 100644
--- a/website/blog/2025-09-17-hudi-auto-gen-keys.mdx
+++ b/website/blog/2025-09-17-hudi-auto-gen-keys.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Automatic Record Key Generation in Apache Hudi"
 excerpt: ""
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: 
/assets/images/blog/2025-09-17-hudi-auto-gen-keys/2025-09-17-hudi-auto-gen-keys.fig2.jpg
 tags:
diff --git 
a/website/blog/2025-10-22-Partition_Stats_Enhancing_Column_Stats_in_Hudi_1.0.md 
b/website/blog/2025-10-22-Partition_Stats_Enhancing_Column_Stats_in_Hudi_1.0.md
index 3c922bfaaa60..9d8574bedb51 100644
--- 
a/website/blog/2025-10-22-Partition_Stats_Enhancing_Column_Stats_in_Hudi_1.0.md
+++ 
b/website/blog/2025-10-22-Partition_Stats_Enhancing_Column_Stats_in_Hudi_1.0.md
@@ -1,7 +1,7 @@
 ---
 title: "Partition Stats: Enhancing Column Stats in Hudi 1.0"
 excerpt: ""
-author: Aditya Goenka and Shiyan Xu
+authors: [aditya-goenka, xushiyan]
 category: blog
 image: 
/assets/images/blog/2025-10-22-Partition_Stats_Enhancing_Column_Stats_in_Hudi_1.0/fig1.jpg
 tags:
diff --git 
a/website/blog/2025-10-29-deep-dive-into-hudis-indexing-subsystem-part-1-of-2.md
 
b/website/blog/2025-10-29-deep-dive-into-hudis-indexing-subsystem-part-1-of-2.md
index eac1c111e83a..231cf83aadc7 100644
--- 
a/website/blog/2025-10-29-deep-dive-into-hudis-indexing-subsystem-part-1-of-2.md
+++ 
b/website/blog/2025-10-29-deep-dive-into-hudis-indexing-subsystem-part-1-of-2.md
@@ -1,7 +1,7 @@
 ---
 title: "Deep Dive Into Hudi’s Indexing Subsystem (Part 1 of 2)"
 excerpt: ""
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: 
/assets/images/blog/2025-10-29-deep-dive-into-hudis-indexing-subsystem-part-1-of-2/fig1.png
 tags:
diff --git 
a/website/blog/2025-11-12-deep-dive-into-hudis-indexing-subsystem-part-2-of-2.md
 
b/website/blog/2025-11-12-deep-dive-into-hudis-indexing-subsystem-part-2-of-2.md
index 83170d4cfa25..2068a26e7287 100644
--- 
a/website/blog/2025-11-12-deep-dive-into-hudis-indexing-subsystem-part-2-of-2.md
+++ 
b/website/blog/2025-11-12-deep-dive-into-hudis-indexing-subsystem-part-2-of-2.md
@@ -1,7 +1,7 @@
 ---
 title: Deep Dive Into Hudi's Indexing Subsystem (Part 2 of 2)
 excerpt: 'Explore advanced indexing in Apache Hudi: record and secondary 
indexes for fast point lookups, expression indexes for transformed predicates, 
and async indexing for building indexes without blocking writes.'
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: 
/assets/images/blog/2025-11-12-deep-dive-into-hudis-indexing-subsystem-part-2-of-2/fig1.png
 tags:
diff --git a/website/blog/2025-11-25-apache-hudi-release-1-1-announcement.md 
b/website/blog/2025-11-25-apache-hudi-release-1-1-announcement.md
index b349a902d466..42de9804838e 100644
--- a/website/blog/2025-11-25-apache-hudi-release-1-1-announcement.md
+++ b/website/blog/2025-11-25-apache-hudi-release-1-1-announcement.md
@@ -1,7 +1,7 @@
 ---
 title: Apache Hudi 1.1 is Here—Building the Foundation for the Next Generation 
of Lakehouse
 excerpt: ''
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: 
/assets/images/blog/2025-11-25-apache-hudi-release-1-1-announcement/1-pluggable-TF.png
 tags:
diff --git 
a/website/blog/2025-12-10-apache-hudi-11-deep-dive-optimizing-streaming-ingestion-with-flink.md
 
b/website/blog/2025-12-10-apache-hudi-11-deep-dive-optimizing-streaming-ingestion-with-flink.md
index 73737d4dd033..ff2d662db7c8 100644
--- 
a/website/blog/2025-12-10-apache-hudi-11-deep-dive-optimizing-streaming-ingestion-with-flink.md
+++ 
b/website/blog/2025-12-10-apache-hudi-11-deep-dive-optimizing-streaming-ingestion-with-flink.md
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi 1.1 Deep Dive: Optimizing Streaming Ingestion with Apache 
Flink"
 excerpt: ''
-author: 'Shuo Cheng'
+authors: [shuo-cheng]
 category: blog
 image: 
/assets/images/blog/2025-12-10-apache-hudi-11-deep-dive-optimizing-streaming-ingestion-with-flink/benchmark-string-schemas.png
 tags:
diff --git a/website/blog/2025-12-16-maximizing-throughput-nbcc.md 
b/website/blog/2025-12-16-maximizing-throughput-nbcc.md
index 29480c0b6455..ebe63198a1a2 100644
--- a/website/blog/2025-12-16-maximizing-throughput-nbcc.md
+++ b/website/blog/2025-12-16-maximizing-throughput-nbcc.md
@@ -1,7 +1,7 @@
 ---
 title: "Maximizing Throughput with Apache Hudi NBCC: Stop Retrying, Start 
Scaling"
 excerpt: "Learn how Hudi's Non-Blocking Concurrency Control eliminates retry 
storms for concurrent writers, maximizing throughput in streaming and mixed 
workloads."
-author: "Shiyan Xu"
+authors: [xushiyan]
 category: blog
 image: 
/assets/images/blog/2025-12-16-maximizing-throughput-nbcc/p6-nbcc-compaction.png
 tags:
diff --git a/website/blog/2025-12-29-apache-hudi-2025-a-year-in-review.mdx 
b/website/blog/2025-12-29-apache-hudi-2025-a-year-in-review.mdx
index 1873042d8b10..94c6e8d45e61 100644
--- a/website/blog/2025-12-29-apache-hudi-2025-a-year-in-review.mdx
+++ b/website/blog/2025-12-29-apache-hudi-2025-a-year-in-review.mdx
@@ -1,7 +1,7 @@
 ---
 title: "Apache Hudi 2025: A Year In Review"
 excerpt: ""
-author: Shiyan Xu
+authors: [xushiyan]
 category: blog
 image: 
/assets/images/blog/2025-12-29-apache-hudi-2025-a-year-in-review/00-og.png
 tags:
diff --git a/website/blog/authors.yml b/website/blog/authors.yml
new file mode 100644
index 000000000000..b8cc3ff6b8e5
--- /dev/null
+++ b/website/blog/authors.yml
@@ -0,0 +1,59 @@
+aditya-goenka:
+  name: Aditya Goenka
+  url: https://www.linkedin.com/in/aditya-goenka-66a7b448/
+  image_url: /assets/images/authors/aditya-goenka.jpg
+
+danny-chan:
+  name: Danny Chan
+  url: https://www.linkedin.com/in/danny-chan-682943225/
+  image_url: /assets/images/authors/danny-chan.jpg
+
+dipankar-mazumdar:
+  name: Dipankar Mazumdar
+  url: https://www.linkedin.com/in/dipankar-mazumdar/
+  image_url: /assets/images/authors/dipankar-mazumdar.jpg
+
+ethan-guo:
+  name: Ethan Guo
+  url: https://www.linkedin.com/in/yihua-ethan-guo/
+  image_url: /assets/images/authors/ethan-guo.jpg
+
+nadine-farah:
+  name: Nadine Farah
+  url: https://www.linkedin.com/in/nadinefarah/
+  image_url: /assets/images/authors/nadine-farah.png
+
+rajesh-mahindra:
+  name: Rajesh Mahindra
+  url: https://www.linkedin.com/in/rajesh-mahindra-2017b140/
+  image_url: /assets/images/authors/rajesh-mahindra.jpg
+
+sagar-lakshmipathy:
+  name: Sagar Lakshmipathy
+  url: https://www.linkedin.com/in/sagarlakshmipathy/
+  image_url: /assets/images/authors/sagar-lakshmipathy.jpg
+
+sagar-sumit:
+  name: Sagar Sumit
+  url: https://www.linkedin.com/in/sagar-sumit/
+  image_url: /assets/images/authors/sagar-sumit.jpg
+
+shuo-cheng:
+  name: Shuo Cheng
+  url: https://www.linkedin.com/in/shuo-cheng-317b82aa/
+  image_url: /assets/images/authors/shuo-cheng.jpg
+
+sivabalan:
+  name: Sivabalan Narayanan
+  url: https://www.linkedin.com/in/sivabalan-narayanan-1040b45/
+  image_url: /assets/images/authors/sivabalan.jpg
+
+vinoth-chandar:
+  name: Vinoth Chandar
+  url: https://www.linkedin.com/in/vinothchandar/
+  image_url: /assets/images/authors/vinoth-chandar.png
+
+xushiyan:
+  name: Shiyan Xu
+  url: https://www.linkedin.com/in/xushiyan/
+  image_url: /assets/images/authors/xushiyan.jpg
diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js
index 85904ea98f8c..07d506d0a1cb 100644
--- a/website/docusaurus.config.js
+++ b/website/docusaurus.config.js
@@ -536,6 +536,7 @@ module.exports = {
           },
         },
         blog: {
+          authorsMapPath: "authors.yml",
           editUrl: 
"https://github.com/apache/hudi/edit/asf-site/website/blog/";,
           blogTitle: "Blogs List Page",
           blogSidebarCount: 0,
@@ -545,7 +546,8 @@ module.exports = {
            * *DO NOT* include a trailing slash.
            */
           routeBasePath: "blog",
-          include: ["*.md", "*.mdx"],
+          include: ["**/*.md", "**/*.mdx"],
+          exclude: ["**/authors.yml"],
           postsPerPage: 12,
           /**
            * Theme components used by the blog pages.
diff --git a/website/src/components/BlogsSlider/index.js 
b/website/src/components/BlogsSlider/index.js
index 07fb58243f16..419702d62bc0 100644
--- a/website/src/components/BlogsSlider/index.js
+++ b/website/src/components/BlogsSlider/index.js
@@ -27,7 +27,7 @@ const allPosts = ((ctx) => {
       },
       []
   );
-})(require.context('../../../blog', true));
+})(require.context('../../../blog', true, /\.mdx?$/));
 
 const sortedPosts = allPosts.sort((a,b) => new Date(a.metadata.date).getTime() 
- new Date(b.metadata.date).getTime()).reverse();
 const latestPosts = [...sortedPosts.slice(0, 10)];
diff --git a/website/src/theme/BlogPostItem/Header/Authors/index.js 
b/website/src/theme/BlogPostItem/Header/Authors/index.js
index dd243caffe3c..b72b46209735 100644
--- a/website/src/theme/BlogPostItem/Header/Authors/index.js
+++ b/website/src/theme/BlogPostItem/Header/Authors/index.js
@@ -1,35 +1,34 @@
 import React from 'react';
 import clsx from 'clsx';
 import {useBlogPost} from '@docusaurus/plugin-content-blog/client';
-import BlogAuthor from '@theme/Blog/Components/Author';
+import Link from '@docusaurus/Link';
 import styles from './styles.module.css';
-// Component responsible for the authors layout
+
 export default function BlogPostItemHeaderAuthors({className}) {
   const {
     metadata: {authors},
-    assets,
   } = useBlogPost();
-  const authorsCount = authors.length;
-  if (authorsCount === 0) {
+  if (authors.length === 0) {
     return null;
   }
-  const imageOnly = authors.every(({name}) => !name);
-  const singleAuthor = authors.length === 1;
   return (
-    <div
-      className={clsx(
-        imageOnly ? styles.imageOnlyAuthorRow : 'row',
-        className,
-      )}>
+    <div className={clsx(styles.authorWrapper, className)}>
       {authors.map((author, idx) => (
-        <div
-          className={clsx(
-              styles.authorWrapper,
-            !imageOnly && (singleAuthor ? 'col col--12' : 'col col--6'),
-            imageOnly ? styles.imageOnlyAuthorCol : styles.authorCol,
+        <div key={idx} className={styles.author}>
+          {author.imageURL && (
+            <img
+              src={author.imageURL}
+              alt={author.name}
+              className={styles.authorImage}
+            />
+          )}
+          {author.url ? (
+            <Link href={author.url} className={styles.authorName}>
+              {author.name}
+            </Link>
+          ) : (
+            <span className={styles.authorName}>{author.name}</span>
           )}
-          key={idx}>
-          {author.name}
         </div>
       ))}
     </div>
diff --git a/website/src/theme/BlogPostItem/Header/Authors/styles.module.css 
b/website/src/theme/BlogPostItem/Header/Authors/styles.module.css
index 01a73306960b..f65e4aeae7b6 100644
--- a/website/src/theme/BlogPostItem/Header/Authors/styles.module.css
+++ b/website/src/theme/BlogPostItem/Header/Authors/styles.module.css
@@ -1,22 +1,21 @@
-.authorCol {
-  max-width: inherit !important;
+.authorWrapper {
+  margin-left: 10px;
 }
 
-.imageOnlyAuthorRow {
+.author {
   display: flex;
-  flex-flow: row wrap;
+  align-items: center;
+  gap: 8px;
 }
 
-.imageOnlyAuthorCol {
-  margin-left: 0.3rem;
-  margin-right: 0.3rem;
+.authorImage {
+  width: 24px;
+  height: 24px;
+  border-radius: 50%;
+  object-fit: cover;
 }
 
-.authorWrapper {
-  margin-left: 10px;
-  .avatar__name {
-    span {
-      font-weight: 600 !important;
-    }
-  }
+.authorName {
+  font-weight: 600;
+  font-size: 1.1rem;
 }
diff --git a/website/src/theme/BlogPostItem/Header/Info/styles.module.css 
b/website/src/theme/BlogPostItem/Header/Info/styles.module.css
index 46e2febfcba2..05909b0f370b 100644
--- a/website/src/theme/BlogPostItem/Header/Info/styles.module.css
+++ b/website/src/theme/BlogPostItem/Header/Info/styles.module.css
@@ -2,6 +2,7 @@
   color: #1c1e21;
   display: flex;
   flex-direction: row;
+  align-items: center;
   font-size: 1.1rem;
   margin-left: 2px;
 }
diff --git a/website/static/assets/images/authors/aditya-goenka.jpg 
b/website/static/assets/images/authors/aditya-goenka.jpg
new file mode 100644
index 000000000000..1bfd993cb21c
Binary files /dev/null and 
b/website/static/assets/images/authors/aditya-goenka.jpg differ
diff --git a/website/static/assets/images/authors/danny-chan.jpg 
b/website/static/assets/images/authors/danny-chan.jpg
new file mode 100644
index 000000000000..52d2a48e456c
Binary files /dev/null and 
b/website/static/assets/images/authors/danny-chan.jpg differ
diff --git a/website/static/assets/images/authors/dipankar-mazumdar.jpg 
b/website/static/assets/images/authors/dipankar-mazumdar.jpg
new file mode 100644
index 000000000000..5c287caf8129
Binary files /dev/null and 
b/website/static/assets/images/authors/dipankar-mazumdar.jpg differ
diff --git a/website/static/assets/images/authors/ethan-guo.jpg 
b/website/static/assets/images/authors/ethan-guo.jpg
new file mode 100644
index 000000000000..63b00700fb50
Binary files /dev/null and b/website/static/assets/images/authors/ethan-guo.jpg 
differ
diff --git a/website/static/assets/images/authors/nadine-farah.png 
b/website/static/assets/images/authors/nadine-farah.png
new file mode 100644
index 000000000000..cb30cf6a85e4
Binary files /dev/null and 
b/website/static/assets/images/authors/nadine-farah.png differ
diff --git a/website/static/assets/images/authors/rajesh-mahindra.jpg 
b/website/static/assets/images/authors/rajesh-mahindra.jpg
new file mode 100644
index 000000000000..23dec0f9e9a3
Binary files /dev/null and 
b/website/static/assets/images/authors/rajesh-mahindra.jpg differ
diff --git a/website/static/assets/images/authors/sagar-lakshmipathy.jpg 
b/website/static/assets/images/authors/sagar-lakshmipathy.jpg
new file mode 100644
index 000000000000..f771be659b1f
Binary files /dev/null and 
b/website/static/assets/images/authors/sagar-lakshmipathy.jpg differ
diff --git a/website/static/assets/images/authors/sagar-sumit.jpg 
b/website/static/assets/images/authors/sagar-sumit.jpg
new file mode 100644
index 000000000000..b279ce2023db
Binary files /dev/null and 
b/website/static/assets/images/authors/sagar-sumit.jpg differ
diff --git a/website/static/assets/images/authors/shuo-cheng.jpg 
b/website/static/assets/images/authors/shuo-cheng.jpg
new file mode 100644
index 000000000000..89dd4d3711b1
Binary files /dev/null and 
b/website/static/assets/images/authors/shuo-cheng.jpg differ
diff --git a/website/static/assets/images/authors/sivabalan.jpg 
b/website/static/assets/images/authors/sivabalan.jpg
new file mode 100644
index 000000000000..3f96266dd6fb
Binary files /dev/null and b/website/static/assets/images/authors/sivabalan.jpg 
differ
diff --git a/website/static/assets/images/authors/vinoth-chandar.png 
b/website/static/assets/images/authors/vinoth-chandar.png
new file mode 100644
index 000000000000..7185b948fba9
Binary files /dev/null and 
b/website/static/assets/images/authors/vinoth-chandar.png differ
diff --git a/website/static/assets/images/authors/xushiyan.jpg 
b/website/static/assets/images/authors/xushiyan.jpg
new file mode 100644
index 000000000000..bac181a34073
Binary files /dev/null and b/website/static/assets/images/authors/xushiyan.jpg 
differ

Reply via email to