2.0.0-beta.190 • Published 10 months ago

@koine/i18n v2.0.0-beta.190

Weekly downloads
-
License
-
Repository
-
Last release
10 months ago

@koine/i18n

Features

Co-locate multiple internationalised projects within the same monorepo

The compiled output allows to easily manage multile applications and their translations independently within the same monorepo.

Further reading

This was achieved preferring types compilation (the I18n namespace) rather than relying on module augmentation where interface merging of possibly exported shared types from @koine/i18n could have achieved the same (see i18next approach). That in fact would have not allow types to be scoped to the specific i18n compiled project, especially important within a monorepo. It was taken into consideration even a class based approach possibly achieved by something like this:

// in `@koine/i18n/types.ts`:
export class I18nClass<Locales extends {}, ...all other configurable interfaces as generics> {
  public Locale: keyof Locales;

  constructor(locales: Locales) {
    this.Locale = Object.keys(locales)[0] as keyof Locales;
  }
}

// somewhere in the project using @koine/i18n
import { I18n } from "@/i18n";

const myLocale: I18n["Locale"] = "";

This was discarded for a better dx as using I18n["Locale"] is not as nice as using the namespace form of this I18n.Locale. For a better dx it was also decided not to export any I18n namespace from @koine/i18n to avoid amibguity in the IDE autocomplete feature as the same namespace is always exported from the compiled output.

2.0.0-beta.186

10 months ago

2.0.0-beta.187

10 months ago

2.0.0-beta.188

10 months ago

2.0.0-beta.189

10 months ago

2.0.0-beta.190

10 months ago

2.0.0-beta.175

11 months ago

2.0.0-beta.176

11 months ago

2.0.0-beta.177

11 months ago

2.0.0-beta.179

11 months ago

2.0.0-beta.170

11 months ago

2.0.0-beta.171

11 months ago

2.0.0-beta.172

11 months ago

2.0.0-beta.173

11 months ago

2.0.0-beta.174

11 months ago

2.0.0-beta.180

11 months ago

2.0.0-beta.181

11 months ago

2.0.0-beta.182

11 months ago

2.0.0-beta.183

11 months ago

2.0.0-beta.184

11 months ago

2.0.0-beta.185

11 months ago

2.0.0-beta.164

11 months ago

2.0.0-beta.165

11 months ago

2.0.0-beta.166

11 months ago

2.0.0-beta.167

11 months ago

2.0.0-beta.168

11 months ago

2.0.0-beta.169

11 months ago

2.0.0-beta.163

11 months ago

2.0.0-beta.162

12 months ago

2.0.0-beta.161

1 year ago

2.0.0-beta.117

1 year ago

2.0.0-beta.118

1 year ago

2.0.0-beta.119

1 year ago

2.0.0-beta.120

1 year ago

2.0.0-beta.121

1 year ago

2.0.0-beta.123

1 year ago

2.0.0-beta.124

1 year ago

2.0.0-beta.125

1 year ago

2.0.0-beta.126

1 year ago

2.0.0-beta.127

1 year ago

2.0.0-beta.128

1 year ago

2.0.0-beta.129

1 year ago

2.0.0-beta.131

1 year ago

2.0.0-beta.132

1 year ago

2.0.0-beta.133

1 year ago

2.0.0-beta.134

1 year ago

2.0.0-beta.135

1 year ago

2.0.0-beta.136

1 year ago

2.0.0-beta.137

1 year ago

2.0.0-beta.138

1 year ago

2.0.0-beta.130

1 year ago

2.0.0-beta.139

1 year ago

2.0.0-beta.142

1 year ago

2.0.0-beta.143

1 year ago

2.0.0-beta.144

1 year ago

2.0.0-beta.145

1 year ago

2.0.0-beta.146

1 year ago

2.0.0-beta.147

1 year ago

2.0.0-beta.148

1 year ago

2.0.0-beta.149

1 year ago

2.0.0-beta.140

1 year ago

2.0.0-beta.141

1 year ago

2.0.0-beta.153

1 year ago

2.0.0-beta.154

1 year ago

2.0.0-beta.155

1 year ago

2.0.0-beta.156

1 year ago

2.0.0-beta.157

1 year ago

2.0.0-beta.158

1 year ago

2.0.0-beta.159

1 year ago

2.0.0-beta.151

1 year ago

2.0.0-beta.152

1 year ago

2.0.0-beta.160

1 year ago

2.0.0-beta.116

1 year ago

2.0.0-beta.114

1 year ago

2.0.0-beta.115

1 year ago

2.0.0-beta.112

1 year ago

2.0.0-beta.113

1 year ago

2.0.0-beta.100

1 year ago

2.0.0-beta.101

1 year ago

2.0.0-beta.102

1 year ago

2.0.0-beta.103

1 year ago

2.0.0-beta.104

1 year ago

2.0.0-beta.105

1 year ago

2.0.0-beta.99

1 year ago

2.0.0-beta.106

1 year ago

2.0.0-beta.107

1 year ago

2.0.0-beta.108

1 year ago

2.0.0-beta.110

1 year ago

2.0.0-beta.111

1 year ago

2.0.0-beta.97

1 year ago

2.0.0-beta.95

1 year ago

2.0.0-beta.96

1 year ago

2.0.0-beta.94

1 year ago

2.0.0-beta.93

1 year ago

2.0.0-beta.92

1 year ago

2.0.0-beta.91

1 year ago

2.0.0-beta.90

1 year ago

2.0.0-beta.88

1 year ago

2.0.0-beta.89

1 year ago

2.0.0-beta.87

1 year ago

2.0.0-beta.86

1 year ago

2.0.0-beta.85

1 year ago

2.0.0-beta.84

1 year ago

2.0.0-beta.83

1 year ago

2.0.0-beta.82

1 year ago

2.0.0-beta.80

2 years ago

2.0.0-beta.77

2 years ago

2.0.0-beta.76

2 years ago

2.0.0-beta.79

2 years ago

2.0.0-beta.78

2 years ago

2.0.0-beta.73

2 years ago

2.0.0-beta.75

2 years ago

2.0.0-beta.74

2 years ago

2.0.0-beta.72

2 years ago

2.0.0-beta.71

2 years ago

2.0.0-beta.70

2 years ago

2.0.0-beta.69

2 years ago

2.0.0-beta.68

2 years ago

2.0.0-beta.66

2 years ago

2.0.0-beta.65

2 years ago

2.0.0-beta.64

2 years ago

2.0.0-beta.63

2 years ago

2.0.0-beta.62

2 years ago

2.0.0-beta.61

2 years ago

2.0.0-beta.60

2 years ago

2.0.0-beta.55

2 years ago

2.0.0-beta.54

2 years ago

2.0.0-beta.53

2 years ago

2.0.0-beta.59

2 years ago

2.0.0-beta.58

2 years ago

2.0.0-beta.56

2 years ago

2.0.0-beta.49

2 years ago

2.0.0-beta.51

2 years ago

2.0.0-beta.50

2 years ago

2.0.0-beta.52

2 years ago

2.0.0-beta.48

2 years ago

2.0.0-beta.47

2 years ago

2.0.0-beta.46

2 years ago

2.0.0-beta.45

2 years ago

2.0.0-beta.44

2 years ago

2.0.0-beta.43

2 years ago

2.0.0-beta.42

2 years ago

2.0.0-beta.41

2 years ago

2.0.0-beta.39

2 years ago

2.0.0-beta.38

2 years ago

2.0.0-beta.37

2 years ago

2.0.0-beta.36

2 years ago

2.0.0-beta.33

2 years ago

2.0.0-beta.32

2 years ago

2.0.0-beta.31

2 years ago

2.0.0-beta.30

2 years ago

2.0.0-beta.35

2 years ago

2.0.0-beta.34

2 years ago

2.0.0-beta.29

2 years ago

2.0.0-beta.28

2 years ago

2.0.0-beta.26

2 years ago

2.0.0-beta.25

2 years ago

2.0.0-beta.24

2 years ago

2.0.0-beta.23

2 years ago

2.0.0-beta.27

2 years ago

2.0.0-beta.22

2 years ago