Research
Security News
Quasar RAT Disguised as an npm Package for Detecting Vulnerabilities in Ethereum Smart Contracts
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
github.com/gavincarr/countries
Countries - ISO 3166 (ISO3166-1, ISO3166, Digit code, Alpha-2 and Alpha-3), ISO 4217 countries codes and names (on eng and rus), currency designators, calling phone codes, countries capitals and regions (UN M.49 code), countries domains (ccTLD), Very FAST, NO maps[], NO slices[], NO init() func, NO external files and data, NO interface{}, NO specific dependencies, Databases compatible, Emoji countries flags and currencies support, full support ISO-3166-1, ISO-4217, Unicode CLDR and ccTLD standarts.
go get github.com/biter777/countries
import "fmt"
import "github.com/biter777/countries"
func main() {
countryJapan := countries.Japan
fmt.Printf("Country name in english: %v\n", countryJapan)
fmt.Printf("Country name in russian: %v\n", countryJapan.StringRus())
fmt.Printf("Country digit code: %d\n", countryJapan)
fmt.Printf("Country Alpha-2 code: %v\n", countryJapan.Alpha2())
fmt.Printf("Country Alpha-3 code: %v\n", countryJapan.Alpha3())
fmt.Printf("Country Capital: %v\n", countryJapan.Capital())
fmt.Printf("Country call code: %v\n", countryJapan.CallCode())
fmt.Printf("Country domain: %v\n", countryJapan.Domain())
fmt.Printf("Country region name: %v\n", countryJapan.Region())
fmt.Printf("Country region code: %d\n", countryJapan.Region())
fmt.Printf("Country emoji: %v\n\n", countryJapan.Emoji())
currencyJapan := countryJapan.Currency()
fmt.Printf("Country Currency name in english: %v\n", currencyJapan)
fmt.Printf("Country Currency digit code: %d\n", currencyJapan)
fmt.Printf("Country Currency Alpha code: %v\n", currencyJapan.Alpha())
fmt.Printf("Country Currency emoji: %v\n", currencyJapan.Emoji())
fmt.Printf("Country of Currency %v: %v\n\n", currencyJapan, currencyJapan.Countries())
// OR you can alternative use:
japanInfo := countries.Japan.Info()
fmt.Printf("Country name in english: %v\n", japanInfo.Name)
fmt.Printf("Country digit code: %d\n", japanInfo.Code)
fmt.Printf("Country Alpha-2 code: %v\n", japanInfo.Alpha2)
fmt.Printf("Country Alpha-3 code: %v\n", japanInfo.Alpha3)
fmt.Printf("Country Capital: %v\n", japanInfo.Capital)
fmt.Printf("Country call code: %v\n", japanInfo.CallCode)
fmt.Printf("Country region name: %v\n", japanInfo.Region)
fmt.Printf("Country region code: %d\n", japanInfo.Region)
fmt.Printf("Country emoji: %v\n", japanInfo.Emoji)
// Detect by name
country := countries.ByName("angola")
fmt.Printf("Country digit code: %d\n", country)
fmt.Printf("Country Alpha-2 code: %v\n", country.Alpha2())
fmt.Printf("Country Alpha-3 code: %v\n", country.Alpha3())
// Database usage
type User struct {
gorm.Model
Name string
Country countries.CountryCode
}
user := &User{Name: "Helen", Country: countries.Slovenia}
db, err := gorm.Open("postgres", 500, "host=127.0.0.2 port=5432 user=usr password=1234567 dbname=db")
if err != nil {
panic(err)
}
defer db.Close()
err = db.Create(user).Error
if err != nil {
panic(err)
}
}
You can take a counties names in russian language, use StringRus(). For Emoji use Emoji(). Enjoy!
import "github.com/biter777/countries"
For more complex options, consult the documentation.
(c) Biter
Welcome pull requests, bug fixes and issue reports. Before proposing a change, please discuss it first by raising an issue.
FAQs
Unknown package
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers uncover a malicious npm package posing as a tool for detecting vulnerabilities in Etherium smart contracts.
Security News
Research
A supply chain attack on Rspack's npm packages injected cryptomining malware, potentially impacting thousands of developers.
Research
Security News
Socket researchers discovered a malware campaign on npm delivering the Skuld infostealer via typosquatted packages, exposing sensitive data.