npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2025 – Pkg Stats / Ryan Hefner

react-multiplelanguage

v1.0.2

Published

Easy to use translation for React

Readme

react-multiplelanguage

react-multiplelanguage allows you to easily implement localization in React.

Localize your application right away getting started

Install

npm install react-multiplelanguage

// or

yarn add react-multiplelanguage

APIs and Components

LanguageContext

Makes your texts accessible throughout the application. You must wrap your entire app with this element and give a texts object.

<LanguageContext texts={myTexts}>
    <App />
</LanguageContext>
const myTexts= {
  US: {
      home: "Home",
      about: "About",

    },
  TR: {
      home: "Ana Sayfa",
      about: "Hakkımızda",
    }

Flags

The Flags component is a customizable language selector component that allows users to switch between avaiable languages.

<Flags />

useLanguage

You can access the LanguageContext values by using this hook. It provides:

texts: It represents the texts object that contains the localized strings for different languages.

const { texts } = useLanguage();
console.log(texts); // if current language is EN then it will return the EN texts object. { home: { title: "Welcome to My Website", description: ...},

language: It is a variable that holds the currently selected language. It represents the language code (e.g., 'EN' for English, 'FR' for French) that is being used for localization. This value determines which localized strings from the texts object will be displayed.

const { language } = useLanguage();
console.log(language); // if current language EN then it returns "EN"

changeLanguage: It is a function that allows you to change the current language. When called with a language code as an argument, it updates the language value to the specified language, triggering a re-render of the component with the new language.

const { changeLanguage } = useLanguage();
changeLanguage('TR'); // sets the language TR

flags: It is a variable that holds an array of flag objects. This flags element is determined based on the language codes provided in your texts within the LanguageContext. It returns an array consisting of objects.

[
    { code: 'US', emoji: '🇺🇸' },
    { code: 'TR', emoji: '🇹🇷' }
];

getFlags: It also provides flags, but the order is always such that the current language is the first item.

const avaiableFlags = getFlags();
console.log(avaiableFlags); // [ {code: 'TR', emoji: '🇹🇷'}, {code: 'US', emoji: '🇺🇸'} ]

Countries

This file contains country flag emojis and codes. If your language code and emoji are not included in this file, please feel free to create an issue to request their addition.


 const codeAndEmojiArray = [
    {
        code: 'AD',
        emoji: '🇦🇩'
    },
    {
        code: 'AE',
        emoji: '🇦🇪'
    },
    {
        code: 'AF',
        emoji: '🇦🇫'
    },
...]