1- import type { ReactNode } from ' react' ;
2- import clsx from ' clsx' ;
3- import Heading from ' @theme/Heading' ;
4- import styles from ' ./styles.module.css' ;
1+ import type { ReactNode } from " react" ;
2+ import clsx from " clsx" ;
3+ import Heading from " @theme/Heading" ;
4+ import styles from " ./styles.module.css" ;
55
66type FeatureItem = {
77 title : string ;
8- Svg : React . ComponentType < React . ComponentProps < ' svg' > > ;
8+ Svg : React . ComponentType < React . ComponentProps < " svg" > > ;
99 description : ReactNode ;
1010} ;
1111
1212const FeatureList : FeatureItem [ ] = [
1313 {
14- title : ' Extremely Efficient' ,
15- Svg : require ( ' @site/static/img/ExtremelyEfficient.svg' ) . default ,
14+ title : " Extremely Efficient" ,
15+ Svg : require ( " @site/static/img/ExtremelyEfficient.svg" ) . default ,
1616 description : (
1717 < >
18- Rust language guarantees the predictable resources' usage, thus, you no longer need to worry about a random GC spikes.
18+ Rust language guarantees the predictable resources' usage, thus, you no
19+ longer need to worry about a random GC spikes.
1920 </ >
2021 ) ,
2122 } ,
2223 {
23- title : ' Multiple Transports' ,
24- Svg : require ( ' @site/static/img/MultipleTransports.svg' ) . default ,
24+ title : " Multiple Transports" ,
25+ Svg : require ( " @site/static/img/MultipleTransports.svg" ) . default ,
2526 description : (
2627 < >
27- TCP, QUIC, HTTP, or maybe all of them at once? Easily configure and enable the different transport protocols.
28+ TCP, QUIC, HTTP, or maybe all of them at once? Easily configure and
29+ enable the different transport protocols.
2830 </ >
2931 ) ,
3032 } ,
3133 {
32- title : ' Advanced Features' ,
33- Svg : require ( ' @site/static/img/AdvancedFeatures.svg' ) . default ,
34+ title : " Advanced Features" ,
35+ Svg : require ( " @site/static/img/AdvancedFeatures.svg" ) . default ,
3436 description : (
3537 < >
36- Users, partitioning, consumer groups, message deduplication, retention policy, data encryption and many more.
38+ Users, partitioning, consumer groups, message deduplication, retention
39+ policy, data encryption and many more.
3740 </ >
3841 ) ,
3942 } ,
4043 {
41- title : ' SDK Support' ,
42- Svg : require ( ' @site/static/img/Sdk.svg' ) . default ,
44+ title : " SDK Support" ,
45+ Svg : require ( " @site/static/img/Sdk.svg" ) . default ,
4346 description : (
4447 < >
45- Building the distributed systems might involve many programming languages, which is why, we provide different SDKs.
48+ Building the distributed systems might involve many programming
49+ languages, which is why, we provide different SDKs.
4650 </ >
4751 ) ,
4852 } ,
4953 {
50- title : ' Management Interface' ,
51- Svg : require ( ' @site/static/img/ManagementInterface.svg' ) . default ,
54+ title : " Management Interface" ,
55+ Svg : require ( " @site/static/img/ManagementInterface.svg" ) . default ,
5256 description : (
5357 < >
54- Built-in terminal CLI to manage the streaming server, or maybe the modern Web UI? Why not both :)
58+ Built-in terminal CLI to manage the streaming server, or maybe the
59+ modern Web UI? Why not both :)
5560 </ >
5661 ) ,
5762 } ,
5863 {
59- title : ' Fully Open-Source' ,
60- Svg : require ( ' @site/static/img/FullyOpenSourced.svg' ) . default ,
64+ title : " Fully Open-Source" ,
65+ Svg : require ( " @site/static/img/FullyOpenSourced.svg" ) . default ,
6166 description : (
6267 < >
63- Thanks to the power of community, we can constantly improve Apache Iggy and support multiple programming languages SDKs.
68+ Thanks to the power of community, we can constantly improve Apache Iggy
69+ and support multiple programming languages SDKs.
6470 </ >
6571 ) ,
6672 } ,
6773] ;
6874
69- function Feature ( { title, Svg, description} : FeatureItem ) {
75+ function Feature ( { title, Svg, description } : FeatureItem ) {
7076 return (
71- < div className = { clsx ( ' col col--4' ) } >
77+ < div className = { clsx ( " col col--4" ) } >
7278 < div className = "text--center" >
7379 < Svg className = { styles . featureSvg } role = "img" />
7480 </ div >
@@ -91,7 +97,6 @@ export function HomepageFeaturesOld(): ReactNode {
9197 </ div >
9298 </ div >
9399 </ section >
94-
95100 ) ;
96101}
97102
@@ -102,53 +107,123 @@ export default function HomepageFeatures(): ReactNode {
102107 < div className = "wrapper-m" >
103108 < div className = "section-title centered" >
104109 < div className = "tagline hidden" > Get SystemFlow</ div >
105- < h2 className = "heading l" > Built for < span className = "c-t-primary-60" > performance</ span > </ h2 >
106- < p className = "body-text m" > Apache Iggy (Incubating) is designed from the ground up to deliver < span className = "text-span" > exceptional performance, reliability, and developer experience</ span > for modern message streaming workloads.</ p >
110+ < h2 className = "heading l" >
111+ Built for < span className = "c-t-primary-60" > performance</ span >
112+ </ h2 >
113+ < p className = "body-text m" >
114+ Apache Iggy (Incubating) is designed from the ground up to deliver{ " " }
115+ < span className = "text-span" >
116+ exceptional performance, reliability, and developer experience
117+ </ span > { " " }
118+ for modern message streaming workloads. Combined with{ " " }
119+ < span className = "text-span" >
120+ io_uring and thread-per-core, shared nothing architecture
121+ </ span > { " " }
122+ for maximum speed and efficiency.
123+ </ p >
107124 </ div >
108125 < div className = "w-layout-grid l-g-4-col features" >
109126 < div className = "feature-block tile-up" >
110127 { /* <div className="material-icons feature-icon-small">bolt</div> */ }
111- < h3 className = "heading xxs" > Ultra-High Performance< br /> </ h3 >
112- < p className = "body-text s feature" > Process millions of messages per second with predictable low latency thanks to Rust's zero-cost abstractions and no garbage collection.< br /> </ p >
128+ < h3 className = "heading xxs" >
129+ Ultra-High Performance
130+ < br />
131+ </ h3 >
132+ < p className = "body-text s feature" >
133+ Process millions of messages per second with predictable low
134+ latency thanks to Rust, combined with io_uring and
135+ thread-per-core, shared nothing architecture.
136+ < br />
137+ </ p >
113138 </ div >
114139 < div className = "feature-block tile-up" >
115140 { /* <div className="material-icons feature-icon-small">cloud_sync</div> */ }
116141 < h3 className = "heading xxs" > Zero-Copy Serialization</ h3 >
117- < p className = "body-text s" > Custom zero-copy (de)serialization for improved performance and reduced memory usage, working directly with binary data.< br /> < br /> </ p >
142+ < p className = "body-text s" >
143+ Custom zero-copy (de)serialization for improved performance and
144+ reduced memory usage, working directly with binary data.
145+ < br />
146+ < br />
147+ </ p >
118148 </ div >
119149 < div className = "feature-block tile-up" >
120150 { /* <div className="material-icons feature-icon-small">dns</div> */ }
121- < h3 className = "heading xxs" > Multiple Transport Protocols< br /> </ h3 >
122- < p className = "body-text s" > Support for QUIC, TCP, and HTTP protocols with TLS encryption, giving you flexibility in how clients connect.</ p >
151+ < h3 className = "heading xxs" >
152+ Multiple Transport Protocols
153+ < br />
154+ </ h3 >
155+ < p className = "body-text s" >
156+ Support for QUIC, TCP, WebSocket, and HTTP protocols with TLS
157+ encryption, giving you flexibility in how clients connect.
158+ </ p >
123159 </ div >
124160 < div className = "feature-block tile-up" >
125161 { /* <div className="material-icons feature-icon-small">code</div> */ }
126- < h3 className = "heading xxs" > Multi-Language SDKs< br /> </ h3 >
127- < p className = "body-text s" > Client libraries available for Rust, C#, Java, Go, Python, Node.js, C++, and Elixir with more languages coming.< br /> </ p >
162+ < h3 className = "heading xxs" >
163+ Multi-Language SDKs
164+ < br />
165+ </ h3 >
166+ < p className = "body-text s" >
167+ Client libraries available for Rust, C#, Java, Go, Python and
168+ Node.js with more languages coming for best developer
169+ experience.
170+ < br />
171+ </ p >
128172 </ div >
129173 < div className = "feature-block tile-down first" >
130174 { /* <div className="material-icons feature-icon-small">group</div> */ }
131- < h3 className = "heading xxs" > Consumer Groups & Partitioning< br /> </ h3 >
132- < p className = "body-text s" > Built-in support for consumer groups, partitioning, and horizontal scaling across connected clients.< br /> </ p >
175+ < h3 className = "heading xxs" >
176+ Consumer Groups & Partitioning
177+ < br />
178+ </ h3 >
179+ < p className = "body-text s" >
180+ Built-in support for consumer groups, partitioning, and
181+ horizontal scaling across connected clients.
182+ < br />
183+ </ p >
133184 </ div >
134185 < div className = "feature-block tile-down" >
135186 { /* <div className="material-icons feature-icon-small">verified_user</div> */ }
136- < h3 className = "heading xxs" > Security & Authentication< br /> </ h3 >
137- < p className = "body-text s" > User authentication and authorization with granular permissions, Personal Access Tokens, and optional data encryption.< br /> < br /> </ p >
187+ < h3 className = "heading xxs" >
188+ Security & Authentication
189+ < br />
190+ </ h3 >
191+ < p className = "body-text s" >
192+ User authentication and authorization with granular permissions,
193+ Personal Access Tokens, and optional data encryption.
194+ < br /> < br />
195+ </ p >
138196 </ div >
139197 < div className = "feature-block tile-down" >
140198 { /* <div className="material-icons feature-icon-small">network_check</div> */ }
141- < h3 className = "heading xxs" > Built-in Monitoring< br /> </ h3 >
142- < p className = "body-text s" > OpenTelemetry logs & traces, Prometheus metrics, and built-in benchmarking tools for performance monitoring.< br /> </ p >
199+ < h3 className = "heading xxs" >
200+ Built-in Monitoring
201+ < br />
202+ </ h3 >
203+ < p className = "body-text s" >
204+ OpenTelemetry logs & traces, Prometheus metrics, and
205+ built-in benchmarking tools for performance monitoring.
206+ < br />
207+ </ p >
143208 </ div >
144- < div id = "w-node-_94c4313e-fb50-e882-0de0-ff04e3b099bb-3bca6c21" className = "feature-block tile-down" >
209+ < div
210+ id = "w-node-_94c4313e-fb50-e882-0de0-ff04e3b099bb-3bca6c21"
211+ className = "feature-block tile-down"
212+ >
145213 { /* <div className="material-icons feature-icon-small">account_tree</div> */ }
146- < h3 className = "heading xxs" > Multi-Tenant Support< br /> </ h3 >
147- < p className = "body-text s" > Stream abstraction for multi-tenancy, message retention policies, and S3-compatible backup storage.< br /> </ p >
214+ < h3 className = "heading xxs" >
215+ Multi-Tenant Support
216+ < br />
217+ </ h3 >
218+ < p className = "body-text s" >
219+ Stream abstraction for multi-tenancy, message retention
220+ policies, and S3-compatible backup storage.
221+ < br />
222+ </ p >
148223 </ div >
149224 </ div >
150225 </ div >
151226 </ div >
152227 </ div >
153228 ) ;
154- }
229+ }
0 commit comments