Next.js అనువర్తనాల కోసం అంతర్జాతీయీకరణ (i18n)కు ఉత్తమ పరిష్కారం
మీరు మీ Next.js అప్లికేషన్ను కొత్త మార్కెట్లకు విస్తరించాలనుకుంటున్నారా? TacoTranslate మీ Next.js ప్రాజెక్టును స్థానికీకరించడం చాలా సులభం చేస్తుంది, దీని వల్ల మీరు ఎటువంటి ఇబ్బంది లేకుండా ప్రపంచవ్యాప్తంగా ఉన్న ప్రేక్షకులను చేరుకోవచ్చు.
Next.js కోసం TacoTranslateని ఎందుకు ఎంచుకోవాలి?
- సజావుగా ఏకీకరణ: Next.js అప్లికేషన్ల కోసం ప్రత్యేకంగా రూపొందించబడిన TacoTranslate మీ ప్రస్తుత వర్క్ఫ్లోలో సులభంగా ఏకీకృతమవుతుంది.
- స్వయంచాలక స్ట్రింగ్ సేకరణ: ఇకపై JSON ఫైళ్లు మాన్యువల్గా నిర్వహించాల్సిన అవసరం లేదు. TacoTranslate మీ కోడ్బేస్ నుండి స్ట్రింగ్లను స్వయంచాలకంగా సేకరిస్తుంది.
- AI-ఆధారిత అనువాదాలు: మీ అప్లికేషన్ టోన్కు అనుగుణంగా సందర్భానుసారంగా ఖచ్చితమైన అనువాదాలను అందించేందుకు AI శక్తిని వినియోగించండి.
- తక్షణ భాషా మద్దతు: ఒక క్లిక్తోనే కొత్త భాషలకు మద్దతు జోడించి, మీ అప్లికేషన్ను ప్రపంచవ్యాప్తంగా అందుబాటులో ఉంచండి.
ఇది ఎలా పని చేస్తుంది
ప్రపంచం మరింత గ్లోబలైజ్ అవ్వటంతో, విభిన్న దేశాలు మరియు సంస్కృతుల వినియోగదారులకు అనుకూలంగా పనిచేసే అప్లికేషన్లను వెబ్ డెవలపర్లు తయారు చేయడం ముఖ్యత ಹೆಚ್ಚుతోంది. దీనిని సాధించడానికి కీలక మార్గాల్లో ఒకటి అంతర్జాతీయీకరణ (i18n), ఇది మీ అప్లికేషన్ను వివిధ భాషలు, కరెన్సీలు మరియు తేదీ ఫార్మాట్లకు అనుగుణంగా మార్చుకునే సౌకర్యాన్ని అందిస్తుంది.
ఈ ట్యుటోరియల్లో, సర్వర్-సైడ్ రెండరింగ్తో మీ React Next.js అప్లికేషన్లో అంతర్జాతీయీకరణను ఎలా జోడించాలో మనం పరిశీలిస్తాం. TL;DR: ఇక్కడ పూర్తి ఉదాహరణ చూడండి.
ఈ మార్గదర్శకం Pages Router ఉపయోగిస్తున్న Next.js అప్లికేషన్ల కోసం.
మీరు App Router ఉపయోగిస్తున్నట్లయితే, దయచేసి బదులుగా ఈ మార్గదర్శకాన్ని చూడండి.
దశ 1: ఒక i18n లైబ్రరీని ఇన్స్టాల్ చేయండి
మీ Next.js అప్లికేషన్లో అంతర్జాతీయీకరణను అమలు చేయడంలో ముందుగా ఒక i18n లైబ్రరీని ఎంచుకుంటాం. అనేక ప్రసిద్ధ లైబ్రరీలు ఉన్నాయి, వాటిలో next-intl. అయితే, ఈ ఉదాహరణలో మేము TacoTranslate ను ఉపయోగిస్తాం.
TacoTranslate ఆధునిక AIని ఉపయోగించి మీ స్ట్రింగ్లను ఏ భాషకైనా ఆటోమేటిగ్గా అనువదిస్తుంది మరియు JSON ఫైళ్ల క్లిష్టమైన నిర్వహణ నుంచి మిమ్మల్ని విముక్తం చేస్తుంది.
దీనిని మీ టెర్మినల్లో npm ద్వారా ఇన్స్టాల్ చేసుకుందాం:
npm install tacotranslate
దశ 2: ఉచిత TacoTranslate ఖాతాను సృష్టించండి
ఇప్పుడు మీరు మాడ్యూల్ ఇన్స్టాల్ చేసుకున్నందున, మీ TacoTranslate ఖాతాను, ఒక అనువాద ప్రాజెక్టును, మరియు సంబంధిత API కీలు సృష్టించే సమయం వచ్చింది. ఇక్కడ ఖాతా సృష్టించండి. ఇది ఉచితం, మరియు క్రెడిట్ కార్డ్ చేర్చాల్సిన అవసరం లేదు.
TacoTranslate అప్లికేషన్ UIలో ఒక ప్రాజెక్ట్ సృష్టించి దాని API కీలు ట్యాబ్కి వెళ్లండి. ఒక read
కీ మరియు ఒక read/write
కీ సృష్టించండి. మేము వారిని ఎన్విరాన్మెంట్ వేరియబుల్స్గా సేవ్ చేస్తాము. read
కీని మేము public
అని పిలుస్తాము మరియు read/write
కీ secret
. ఉదాహరణకు, మీరు వాటిని మీ ప్రాజెక్ట్ రూట్లోని .env
ఫైల్లో జోడించవచ్చు.
TACOTRANSLATE_PUBLIC_API_KEY=123456
TACOTRANSLATE_SECRET_API_KEY=789010
గోప్యమైన read/write
API కీని క్లయింట్-సైడ్ ప్రొడక్షన్ వాతావరణాలకు ఎప్పుడూ లీక్ చేయవద్దు.
మేము రెండు అదనపు పర్యావరణ వేరియబుల్లు కూడా జోడిస్తాము: TACOTRANSLATE_DEFAULT_LOCALE
మరియు TACOTRANSLATE_ORIGIN
.
TACOTRANSLATE_DEFAULT_LOCALE
: డిఫాల్ట్ ఫాల్బ్యాక్ లోకేల్ కోడ్. ఈ ఉదాహరణలో, మేము దీన్ని ఇంగ్లీష్ కోసంen
గా సెట్ చేస్తాము.TACOTRANSLATE_ORIGIN
: మీ స్ట్రింగులు నిల్వ చేయబడే “ఫోల్డర్”, ఉదాహరణకు మీ వెబ్సైట్ యొక్క URL. ఇక్కడ మూలాల గురించి మరింత చదవండి.
TACOTRANSLATE_DEFAULT_LOCALE=en
TACOTRANSLATE_ORIGIN=your-website-url.com
దశ 3: TacoTranslate ను ఏర్పాటు చేయడం
TacoTranslateను మీ అప్లికేషన్లోకి ఏకీకృతం చేయడానికి, ముందుగానే పొందిన API కీలు ఉపయోగించి ఒక క్లయింట్ను సృష్టించాలి. ఉదాహరణకు, /tacotranslate-client.js
అనే ఫైల్ను సృష్టించండి.
const {default: createTacoTranslateClient} = require('tacotranslate');
const tacoTranslate = createTacoTranslateClient({
apiKey:
process.env.TACOTRANSLATE_SECRET_API_KEY ??
process.env.TACOTRANSLATE_PUBLIC_API_KEY ??
process.env.TACOTRANSLATE_API_KEY ??
'',
projectLocale: process.env.TACOTRANSLATE_DEFAULT_LOCALE ?? '',
});
module.exports = tacoTranslate;
మేము త్వరలోనే TACOTRANSLATE_API_KEY
ను స్వయంచాలకంగా నిర్వచిస్తాము.
క్లయింట్ను వేరే ఫైల్లో సృష్టించడం తరువాత దాన్ని మళ్లీ ఉపయోగించడం సులభమవుతుంది. ఇప్పుడు, ఓ కస్టమ్ /pages/_app.tsx
ఉపయోగించి, మనం TacoTranslate
ప్రొవైడర్ను జోడిస్తాము.
import React from 'react';
import {type AppProps} from 'next/app';
import {type Origin, type Locale, type Localizations} from 'tacotranslate';
import TacoTranslate from 'tacotranslate/react';
import TacoTranslateHead from 'tacotranslate/next/head';
import tacoTranslate from '../tacotranslate-client';
type PageProperties = {
origin: Origin;
locale: Locale;
locales: Locale[];
localizations: Localizations;
};
export default function App({Component, pageProps}: AppProps<PageProperties>) {
const {origin, locale, locales, localizations} = pageProps;
return (
<TacoTranslate
client={tacoTranslate}
origin={origin}
locale={locale}
localizations={localizations}
>
<TacoTranslateHead rootUrl="https://your-website.com" locales={locales} />
<Component {...pageProps} />
</TacoTranslate>
);
}
మీ వద్ద ఇప్పటికే కస్టమ్ pageProps
మరియు _app.tsx
ఉంటే, దయచేసి పైలో ఇచ్చిన ప్రాపర్టీలు మరియు కోడ్ను ఉపయోగించి నిర్వచనాన్ని విస్తరించండి.
దశ 4: సర్వర్-సైడ్ రెండరింగ్ అమలు చేయడం
TacoTranslate మీ అనువాదాల కోసం సర్వర్-సైడ్ రెండరింగ్ను అనుమతిస్తుంది. ఇది అనువాదిత విషయాలు వెంటనే చూపబడడంతో వినియోగదారు అనుభవాన్ని గణనీయంగా మెరుగుపరుస్తుంది — ముందుగా అనువదించని విషయాలు తాత్కాలికంగా కనిపించేలా ఉండదు. అదనంగా, కావలసిన అన్ని అనువాదాలు ఇప్పటికే అందుబాటులో ఉండటంతో క్లయింట్ పక్కన నెట్వర్క్ అభ్యర్థనలను మినహాయించవచ్చు.
మేము /next.config.js
ను సృష్టించడం లేదా సవరించడం ద్వారా ప్రారంభిస్తాం.
const withTacoTranslate = require('tacotranslate/next/config').default;
const tacoTranslateClient = require('./tacotranslate-client');
module.exports = async () => {
const config = {};
return withTacoTranslate(config, {
client: tacoTranslateClient,
isProduction:
process.env.TACOTRANSLATE_ENV === 'production' ||
process.env.VERCEL_ENV === 'production' ||
(!(process.env.TACOTRANSLATE_ENV || process.env.VERCEL_ENV) &&
process.env.NODE_ENV === 'production'),
});
};
మీ సెటప్కు అనుగుణంగా isProduction
చెక్ను మార్చండి. మీరు true
అయితే, TacoTranslate పబ్లిక్ API కీని ప్రదర్శిస్తుంది. లోకల్, టెస్ట్ లేదా స్టేజింగ్ వాతావరణంలో ఉంటే (isProduction
is false
), కొత్త స్ట్రింగ్లు అనువాదానికి పంపబడేలా ఖచ్చితంగా చేయడానికి గోప్యమైన read/write
API కీని ఉపయోగిస్తాము.
ఇప్పటివరకు, మేము Next.js అప్లికేషన్ను కేవలం మద్దతు ఇచ్చిన భాషల జాబితాతోనే సెట్ చేసాము. తదుపరి మనం మీ అన్ని పేజీల కోసం అనువాదాలను తెచ్చిపోవాల్సి ఉంటుంది. దీనికి, మీ అవసరాల ఆధారంగా getTacoTranslateStaticProps
లేదా getTacoTranslateServerSideProps
ను ఉపయోగించవచ్చు.
ఈ ఫంక్షన్లు మూడు ఆర్గ్యుమెంట్లు తీసుకుంటాయి: ఒక Next.js Static Props Context ఆబ్జెక్ట్, TacoTranslate కోసం కాన్ఫిగరేషన్, మరియు ఐచ్ఛిక Next.js ప్రాపర్టీలు. గమనించండి: revalidate
ను getTacoTranslateStaticProps
లో డిఫాల్ట్గా 60 గా సెట్ చేయబడింది, కాబట్టి మీ అనువాదాలు తాజాగా ఉంటాయి.
పేజీలో ఏదైనా ఒక ఫంక్షన్ ఉపయోగించడానికి, మీ దగ్గర /pages/hello-world.tsx
వంటి ఒక పేజీ ఫైల్ ఉందని అనుకుందాం.
import {Translate} from 'tacotranslate/react';
import getTacoTranslateStaticProps from 'tacotranslate/next/get-static-props';
import tacoTranslateClient from '../tacotranslate-client';
export async function getStaticProps(context) {
return getTacoTranslateStaticProps(context, {client: tacoTranslateClient});
}
export default function Page() {
return <Translate string="Hello, world!"/>;
}
మీరు ఇప్పుడు మీ అన్ని React కాంపోనెంట్లలోని స్ట్రింగ్లను అనువదించడానికి Translate
కాంపోనెంట్ను ఉపయోగించగలరు.
import {Translate} from 'tacotranslate/react';
function Component() {
return <Translate string="Hello, world!"/>
}
దశ 5: డిప్లాయ్ చేసి పరీక్షించండి!
మేము పూర్తి చేసుకున్నాం! మీ Next.js అప్లికేషన్ ఇప్పుడు Translate
కాంపొనెంట్లో మీరు ఎలాంటి స్ట్రింగ్లు జోడించినపుడు స్వయంచాలకంగా అనువదించబడుతుంది. గమనించండి: API కీపై read/write
అనుమతులు ఉన్న వాతావరణాల్లోనే అనువదించవలసిన కొత్త స్ట్రింగ్లను సృష్టించగలుగుతారు. లైవ్కి వెళ్ళే ముందు అటువంటి API కీతో మీ ప్రొడక్షన్ అప్లికేషన్ను పరీక్షించడానికి మూసివేసిన మరియు సురక్షితమైన స్టేజింగ్ వాతావరణాన్ని కలిగి ఉండటాన్ని మేము సిఫార్సు చేస్తాము, అక్కడ మీరు ముందుగా కొత్త స్ట్రింగ్లను జోడించవచ్చు. ఇది ఎవరైనా ఎవరైనా మీ గోప్య API కీని దొంగిలించడం నుండి రక్షిస్తుంది, మరియు కొత్త, సంబంధం లేని స్ట్రింగ్లను జోడించడం ద్వారా మీ అనువాద ప్రాజెక్ట్ను అనవసరంగా పెరగకుండా చేస్తుంది.
Be sure to check out the complete example over at our GitHub profile. There, you’ll also find an example of how to do this using the App Router! If you encounter any problems, feel free to reach out, and we’ll be more than happy to help.
TacoTranslate lets you automatically localize your React applications quickly to and from over 75 languages. Get started today!