React i18next (Complete Tutorial)

Поделиться
HTML-код
  • Опубликовано: 21 ноя 2024

Комментарии • 70

  • @i.hate.artists
    @i.hate.artists 5 месяцев назад +38

    Brother, do you understand that you are the GOAT of React tutorials?

  • @tomeski1072
    @tomeski1072 2 месяца назад +4

    Don't forget, that my bro is fluent in French, and he's very proud of it!

  • @dominikrodler8010
    @dominikrodler8010 5 месяцев назад +10

    Very nice introduction!
    A few additional things that might be interesting to new users:
    1) You can keep basic HTML nodes (e.g. ) instead of those numbers () in your translation strings.
    2) ESLint plugin eslint-plugin-i18next helps you find untranslated texts in your code.
    3) i18next-scanner can automatically extract all translated texts and collect them in translation files (e.g. /en/frontend.json, /de/frontend.json). The same thing could be done with the "saveMissing" config option it seems, but I haven't tried that myself yet.

  • @АлександрПрошанов
    @АлександрПрошанов 2 месяца назад +2

    Thank you for helping us to get into new instruments without having to waddle through infinite docs. Immense gratitude from the whole react-junior community

  • @namesare4fools
    @namesare4fools 2 месяца назад +2

    best tutorial for useful libraries that most people didnt cover. you earn my sub!

  • @BrantK147
    @BrantK147 5 месяцев назад

    Oh wow, this is awesome! I used to be a translator and now I'm a software developer. I'm REALLY interested in internationalizing and translating web apps.

  • @haribo_player-too5141
    @haribo_player-too5141 4 месяца назад

    Ok this is one more sub in the bank. I’ve been watching few of your tutorials here and there and you never miss, always go smoothly.
    Trans component was starting to give me headache, thank you for this

  • @leroviten
    @leroviten 5 месяцев назад

    Trans component is much easier to deal with using built-in 'components' property. No headache at all. As an idea of improvement as in a real project - load translations async from db. So neat. Thanks for your time and gr8 tut, man

  • @ivan4486
    @ivan4486 4 месяца назад

    I used it once, and it worked well with normal tags in locales, and without passing the whole string in addition to the key. It only supported simple tags like strong etc. But it worked.

  • @ElNicopewpew
    @ElNicopewpew 5 месяцев назад

    Great stuff as usual. Since hardly any websites are hardcoded these days, it would be killer to see this implemented with a cms such as sanity!

  • @orangvaik
    @orangvaik 5 месяцев назад +6

    in this tutorial string data is static, what about string data which is dynamic like data from a database?

  • @izaias469
    @izaias469 5 месяцев назад +1

    you can use the trans component like this
    with html tags or components
    with variables and html tags or components

  • @AndreiTornyai
    @AndreiTornyai 3 месяца назад

    thank you good summary of the capabilities of i18n

  • @rushikeshgandhmal
    @rushikeshgandhmal 4 месяца назад

    Hey man, thanks a lot. Helped me a lot. You are always best at explaining concepts.

  • @katerynamordovtseva1191
    @katerynamordovtseva1191 Месяц назад

    For Ru,Urk and other slovenian languages, this words have more declinations, so use:
    welcomeMessage_one, welcomeMessage_few, welcomeMessage_many, otherwise it may not work)
    Also, we do translate names, for us there is a difference in Latin and Cyrillic)

  • @giandenorte
    @giandenorte 5 месяцев назад

    nice info! I also like the quality of the video. I am wondering what camera do you use? Is it green screen or just black curtain?

  • @beninip
    @beninip 5 месяцев назад

    Great video! My question is, should I use the useTranslation hook the same way using typescript?

  • @bastiendufour3841
    @bastiendufour3841 5 месяцев назад

    I am fluent in French too ! Awesome

  • @sylum3
    @sylum3 5 месяцев назад

    Regarding a change in keys that can break the UI - if your component and its helpers are padded with tests, then the commit that has these breaking changes should fail at some level, depending on the setup you have. For example a pre-commit script that runs all *.test files, a github action that blocks the PR if any test fails, etc.

  • @VersionSix-su2dp
    @VersionSix-su2dp 2 месяца назад +1

    How it good of the you already specific the data on which language is in convert what is that , example
    Welcom - helo I am developer.
    To - you also write his translate value so what he do.
    I want something like if I give the value translation and give it the language it automatically converts to the languages not specified the convert language value

  • @CLeovison
    @CLeovison 5 месяцев назад

    Hi cosden i hope you make a tutorial on how to use react helmet async. Been watching your tutorial about react. Thank you so much for bringing a good quality video

  • @toniwincent6653
    @toniwincent6653 2 месяца назад

    Amazing tutorial. Thank you!

  • @jfr-001
    @jfr-001 4 месяца назад

    Bon tutoriel, il y a tout ce qu'il faut

  • @clementinaodinakachukwu1756
    @clementinaodinakachukwu1756 2 месяца назад

    Welldone bro. You're God's sent. I tried clicking that link for the project react, seems its broken. It keeps saying cosden refused to connect.

  • @qitpess2660
    @qitpess2660 5 месяцев назад +1

    Good video.
    Regarding the library. This i18n is SO WRONG in the first place. The thing is that I should do so much manual work and the mistake possibility is so high. This is so frustrating.
    As a developer, I want to have a running service within the project that will generate those JSONs without me. For me, it would be convenient to write full text in English inside t("Hello world!") and for all supported languages it will be like { fr: { "Hello world!": null } } With the highlighting when the text in the component is changing.
    But no one seems to move in that direction.

    • @dominikrodler8010
      @dominikrodler8010 5 месяцев назад +1

      You can. Set the createMissing config option or use i18next-scanner to extract and collect translations.

    • @qitpess2660
      @qitpess2660 5 месяцев назад

      @@dominikrodler8010 Oh. Ok. Thank you very much :)

  • @Edgars82
    @Edgars82 5 месяцев назад

    No need to create workarounds creating constants or whatever... It's possible to set up i18next so it gets translations types from translation files with a little configurations.

  • @serdotsenko
    @serdotsenko 4 месяца назад

    Thank you Bro! very useful, but do time-codes pls for the future video

  • @alexismarin905
    @alexismarin905 Месяц назад

    Would chatgpt help you set everyhting and you just double check?

  • @codeaz5673
    @codeaz5673 Месяц назад

    thank u sir. But you haven't show how to change lang dynamically

  • @dmnd2806
    @dmnd2806 4 месяца назад

    Your vids are really great keep it up

  • @HermanosCode
    @HermanosCode Месяц назад +2

    Bro showed almost nothing. Why in the world it's called complete tutorial? You haven't showed us how to change language, where to store it value how to get translation from API. like bro this video should be called "React i18next (Getting started)

  • @MehdiDeveloper
    @MehdiDeveloper 5 месяцев назад

    I noticed your tattoo - is it Farsi? It made me curious if you're Iranian. :))

  • @subhamchakraborty152
    @subhamchakraborty152 5 месяцев назад

    Excited to learn something new 😁

  • @kale_bhai
    @kale_bhai 5 месяцев назад +2

    So I need to create translation for every key on bunch of different languages.?

  • @huzaifakhalil176
    @huzaifakhalil176 Месяц назад

    Amazing Video

  • @nogafouz2174
    @nogafouz2174 Месяц назад

    thanks best tutorial👍

  • @mmohamedfariz7814
    @mmohamedfariz7814 5 месяцев назад

    Your Video are Good. need a video for testing in react

  • @turgunov28
    @turgunov28 5 месяцев назад

    thanks bro for amazing contents ✊🏻

  • @hadeklte5312
    @hadeklte5312 5 месяцев назад

    I wonder How will it be for the data fetched from database like blog posts? It is a lots of work manually.

  • @mnhtada12
    @mnhtada12 5 месяцев назад

    Thank you so much for this video

  • @Kimi-xp2th
    @Kimi-xp2th 2 месяца назад

    So is this like Google translate? How accurate are the translations?

    • @cosdensolutions
      @cosdensolutions  2 месяца назад

      oh no, you add your own translations. So it's as accurate as your translator/yourself!

    • @Kimi-xp2th
      @Kimi-xp2th 2 месяца назад

      @cosdensolutions my bad. I commented before watching the vid. Lol. I'll try using this in my next project because with my previous one I used a custom made object for multiple languages and when I switched languages in the app it worked on my local host but after deploying the website on netlify apparently the switch doesn't work for some reason.

  • @kaluczadzsi
    @kaluczadzsi 5 месяцев назад +1

    I would like to get More TS + React projects from scratch with tailwind or MUI

  • @Andy-bz9cb
    @Andy-bz9cb Месяц назад

    awesome!

  • @asandratrynyavojohanesa462
    @asandratrynyavojohanesa462 5 месяцев назад

    Excellente vidéo mon ami

  • @amithm4010
    @amithm4010 2 месяца назад

    how to use this outside the component?????????????

  • @JuanPabloGomez-cc6vm
    @JuanPabloGomez-cc6vm 5 месяцев назад

    is this the same for a next js project?

  • @drrandom1259
    @drrandom1259 5 месяцев назад

    What if we want to separate different page translations too? Like I need an en.json for my home page and my settings page separatelly because there are tons of words in each page.
    Can I do nested objects inside my json file like
    en.json
    {
    "homePage":{
    "welcomeText": "Hello!",
    },
    "settingsPage":{
    "title":"Settings page"
    }
    }
    And use it like this: { t("homePage.welcomeText") }??

    • @cosdensolutions
      @cosdensolutions  5 месяцев назад +1

      Yeah! Check the docs there are also other ways to organize

    • @drrandom1259
      @drrandom1259 5 месяцев назад

      @@cosdensolutions thanks! Will do

  • @tszhong0411
    @tszhong0411 5 месяцев назад

    What about SEO?

  • @ravisankarp61
    @ravisankarp61 5 месяцев назад

    Thank You.

  • @okanbayulgen
    @okanbayulgen 5 месяцев назад

    What if we want to change URL name. Thats not everything…

  • @davronmaxmudov3972
    @davronmaxmudov3972 5 месяцев назад +1

    CFBR

  • @hamzamalik9735
    @hamzamalik9735 5 месяцев назад

  • @DemanaJaire
    @DemanaJaire 5 месяцев назад

    Out of curiosity, what's your native language?

    • @cosdensolutions
      @cosdensolutions  5 месяцев назад +1

      Romanian

    • @DemanaJaire
      @DemanaJaire 5 месяцев назад

      @@cosdensolutions I would have never guessed! Your English sounds so good. I once had a project manager from Romania (Andrei), and you sound nothing like him. 😅

  • @samiluludag5451
    @samiluludag5451 5 месяцев назад

    Dude, you should read the documentation better. Use Trans with components prop.

  • @МишаКолоденец
    @МишаКолоденец 26 дней назад

    This is awesome! Thanks a lot!

  • @MrSeredan
    @MrSeredan 4 месяца назад