You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
_Looking to jump right in? Check out the [Getting Started](/getting-started.md) guide for Next.js App Router!_
30
-
31
-
## Why
32
-
33
-
Having built tens of side-projects / micro-startups over the years, we found one thing to be particularly annoying: adding i18n to the app. We wanted to **ship, and ship fast**, not to mess with JSON files or extraction scripts.
34
-
35
-
So it got us thinking: why not build a tool that makes multi-language apps simpler? I mean, anyone who's tried to add i18n to their project knows it's a headache.
36
-
37
-
And after we found out [~80%](https://www.statista.com/chart/26884/languages-on-the-internet/#:~:text=The%201.46%20billion%20people%20who%20speak%20English%20still%20make%20up%20less%20than%2020%20percent%20of%20the%20world%20population) aren't fluent in English - that seemed like a missed opportunity, since i18n could be a shortcut to reaching more users, if only it was easier.
38
-
39
-
That's why we teamed up build a React compiler coupled with an AI-powered API, to make i18n as simple as possible, at the most fundamental level.
40
-
41
-
### Does Replexica work with ... ?
42
-
43
-
Please drop by our new [Discord channel](https://discord.gg/GeK6AuSqzw) and ask! Our co-founder Max is online almost 24/7.
44
-
45
-
## Quick Start
46
-
47
-
> [!NOTE]
48
-
> This guide is for Next.js App Router apps only. Support for other setups is coming soon (ETA April 2024). <https://github.com/replexica/replexica/issues/25>
49
-
50
-
To give a general idea behind Replexica, here's **the only change that's needed** to the basic Next.js app to make it multi-language:
We've prepared a [Getting Started](/getting-started.md) guide that walks you through the process of setting up Replexica Compiler with Next.js App Router. Check it out!
29
+
Check out our [Docs](https://github.com/replexica/replexica/wiki) for more detailed guides on how to use Replexica with your app.
81
30
82
31
## What's under the hood
83
32
@@ -101,61 +50,13 @@ Replexica is a full-stack LLM-powered i18n tool for React, and it consists of **
101
50
102
51
The core idea behind Replexica is simple: apps must be multi-language by default, from day one. **The Internet is global, and so must be any software that runs on it.**
103
52
104
-
## The Replexica Rule
105
-
106
-
At Replexica, we believe in the elegance of [Convention over configuration](https://en.wikipedia.org/wiki/Convention_over_configuration) principle.
107
-
108
-
Therefore, there's one important rule to remember when using Replexica:
109
-
110
-
**Always put translatable text inside `JSX`.**
111
-
112
-
**As long as you follow this rule**, the Replexica Compiler **will** automatically infer the metadata from your app and prepare the text inside JSX for translation.
113
-
114
-
**If you don't follow the rule** and decide to store some of your translatable content in variables, that **can** be translated too, but you'll need to manually wrap that text in a helper function.
115
-
116
-
So, if you want a hassle-free i18n on autopilot, **follow The Replexica Rule** whenever possible.
117
-
118
-
### Dynamic content
119
-
120
-
There's a common scenario, when you have an array of items that you render in a list:
121
-
122
-
```jsx
123
-
constmenuItems= [
124
-
{
125
-
title:'Home',
126
-
url:'/',
127
-
},
128
-
{
129
-
title:'About',
130
-
url:'/about',
131
-
},
132
-
{
133
-
title:'Contact',
134
-
url:'/contact',
135
-
},
136
-
];
137
-
```
53
+
## Why
138
54
139
-
In this case, you can still follow The Replexica Rule by simply wrapping the text in JSX! Here's how:
55
+
Having built tens of side-projects / micro-startups over the years, we found one thing to be particularly annoying: adding i18n to the app. We wanted to **ship, and ship fast**, not to mess with JSON files or extraction scripts.
140
56
141
-
```jsx
142
-
constmenuItems= [
143
-
{
144
-
title:<>Home</>,
145
-
url:'/',
146
-
},
147
-
{
148
-
title:<>About</>,
149
-
url:'/about',
150
-
},
151
-
{
152
-
title:<>Contact</>,
153
-
url:'/contact',
154
-
},
155
-
];
156
-
```
57
+
So it got us thinking: why not build a tool that makes multi-language apps simpler? I mean, anyone who's tried to add i18n to their project knows it's a headache.
157
58
158
-
The Replexica Compiler will automatically infer the metadata from the JSX and prepare the text for translation.
59
+
That's why we teamed up build a React compiler coupled with an AI-powered API, to make i18n as simple as possible, at the most fundamental level.
159
60
160
61
## Roadmap
161
62
@@ -200,7 +101,7 @@ We're a lean team of two:
200
101
***[Veronica](https://github.com/vrcprl)** - Product, Data Science, and LLMs.
201
102
***[Max](https://github.com/maxprilutskiy)** - React, Typescript, and Compilers.
202
103
203
-
We've also got a few (11 to be precise) contributors who signed up to help us with the project, and we're always looking for more. If you're interested in contributing, please drop by our Discord channel and say hi!
104
+
We've also got a few (11 at the moment) contributors who signed up to help us with the project, and we're always looking for more. If you're interested in contributing, please drop by our Discord channel and say hi!
0 commit comments