Go NLP Libraries NLP Tools
Core NLP libraries and toolkits implemented in Go, providing fundamental language processing capabilities like tokenization, POS tagging, language detection, and text analysis. Does NOT include language-specific tools, application-focused solutions, or wrappers for non-Go libraries.
There are 77 go nlp libraries tools tracked. The highest-rated is jdkato/prose at 44/100 with 3,069 stars.
Get all 77 projects as JSON
curl "https://pt-edge.onrender.com/api/v1/datasets/quality?domain=nlp&subcategory=go-nlp-libraries&limit=20"
Open to everyone — 100 requests/day, no key needed. Get a free key for 1,000/day.
| # | Tool | Score | Tier |
|---|---|---|---|
| 1 |
jdkato/prose
:book: A Golang library for text processing, including tokenization,... |
|
Emerging |
| 2 |
ikawaha/kagome-dict
Dictionary Library for Kagome v2 |
|
Emerging |
| 3 |
aaaton/golem
A lemmatizer implemented in Go |
|
Emerging |
| 4 |
codingpot/kiwigo
https://github.com/bab2min/Kiwi for go |
|
Emerging |
| 5 |
habeanf/yap
Yet Another (natural language) Parser |
|
Emerging |
| 6 |
abadojack/whatlanggo
Natural language detection library for Go |
|
Emerging |
| 7 |
clipperhouse/uax29
A tokenizer based on Unicode text segmentation (UAX #29), for Go. Split... |
|
Emerging |
| 8 |
rylans/getlang
Natural language detection package in pure Go |
|
Emerging |
| 9 |
tassa-yoniso-manasi-karoto/go-ichiran
go library bindings for docker-composed Ichiran–a morphological analyzer /... |
|
Emerging |
| 10 |
stdlib-js/nlp-sentencize
Split a string into an array of sentences. |
|
Emerging |
| 11 |
muhashi/extractwords
Extract the words from a string |
|
Emerging |
| 12 |
pemistahl/lingua-go
The most accurate natural language detection library for Go, suitable for... |
|
Emerging |
| 13 |
shixzie/nlp
[UNMANTEINED] Extract values from strings and fill your structs with nlp. |
|
Emerging |
| 14 |
chewxy/lingo
package lingo provides the data structures and algorithms required for... |
|
Emerging |
| 15 |
mhshajib/avro-phonetic-go
Avro-style Banglish → বাংলা transliteration engine for Go, using trie-based... |
|
Emerging |
| 16 |
hankcs/gohanlp
Golang RESTful Client for HanLP |
|
Experimental |
| 17 |
chriscasola/nlp
A collection of natural language processing algorithms for Go |
|
Experimental |
| 18 |
xxjwxc/gohanlp
Golang RESTful Client for HanLP.中文分词 词性标注 命名实体识别 依存句法分析 语义依存分析 新词发现 关键词短语提取... |
|
Experimental |
| 19 |
rahulpunia29/extractous-go
Fast, multi-format document extraction library for Go. Includes streaming... |
|
Experimental |
| 20 |
sil-ai/wash-your-hands
Scripts to take hand washing related text in (almost) any language and float... |
|
Experimental |
| 21 |
symblai/symbl-go-sdk
A Go SDK for the Symbl.ai Platform |
|
Experimental |
| 22 |
emiruz/textextract
textextract is a tiny library (87 lines of Go) that identifies where the... |
|
Experimental |
| 23 |
garystafford/nlp-client
Go-based microservice, part of a set of five microservices for the NLP demo... |
|
Experimental |
| 24 |
clipperhouse/jargon
Tokenizers and lemmatizers for Go |
|
Experimental |
| 25 |
liuzl/ling
Natural Language Processing Toolkit in Golang |
|
Experimental |
| 26 |
smileart/lemmingo
Defensive lemmatiser/stemmer written in Go ⊂( ⚆ ϖ⚆)っ |
|
Experimental |
| 27 |
liuzl/d
An updateable dict service, multi-pattern match |
|
Experimental |
| 28 |
DQNEO/gospec
Word Wise Go Spec |
|
Experimental |
| 29 |
axetion/petscop_translator
simple tool that "translates" the Petscop phonetic button code |
|
Experimental |
| 30 |
az-ai-labs/az-lang-nlp
Fast, deterministic NLP toolkit for Azerbaijani language |
|
Experimental |
| 31 |
jackiedeng0/gowe
Go package for using word embeddings |
|
Experimental |
| 32 |
golangast/gollemer
nlp tagger and MoE model learning |
|
Experimental |
| 33 |
tassa-yoniso-manasi-karoto/translitkit
one unified, standardized go interface to rule over all reputable NLP &... |
|
Experimental |
| 34 |
tassa-yoniso-manasi-karoto/go-aksharamukha
Go bindings for docker-composed Aksharamukha, a script converter and... |
|
Experimental |
| 35 |
octohedron/gemojicountries
GemojiCountries is a go package to extract country codes and names from... |
|
Experimental |
| 36 |
bububa/cilin
基于哈工大同义词词林扩展版的单词相似度计算方法 |
|
Experimental |
| 37 |
KorAP/Datok
High-Performance Finite State Tokenizer |
|
Experimental |
| 38 |
ledyba/go-SenKo
Goで書いた形態素解析器 |
|
Experimental |
| 39 |
jkomyno/sentiment-go
Golang version of the npm package sentiment |
|
Experimental |
| 40 |
jcoruiz/strsim
Comprehensive string similarity metrics for Go: edit distance, token-based,... |
|
Experimental |
| 41 |
monish6666/avro-phonetic-go
📜 Convert Banglish to Bangla script seamlessly with this Go library,... |
|
Experimental |
| 42 |
akhilpandey95/parsy
An NLP Library |
|
Experimental |
| 43 |
ABTdomain/dksplit-go
DKSplit for Go. A high-performance word segmentation library. Split domain... |
|
Experimental |
| 44 |
ruggi/linguo
Go NLP library based on Freeling |
|
Experimental |
| 45 |
kurochan/ikku-go
Ikku("一句") detector, Ikku is something like Japanese Haiku("俳句"). |
|
Experimental |
| 46 |
nicolasassi/gomtch
Find text even if it doesn't want to be found |
|
Experimental |
| 47 |
sinanm89/ditong
A language dictionary synthesis script. Using optional N-gram vectors to... |
|
Experimental |
| 48 |
kamildrazkiewicz/go-stanford-nlp
Go Stanford NLP POS Tagger wrapper |
|
Experimental |
| 49 |
Arion-Dsh/kateaNLP
KateaNLP a chinese NLP project in go |
|
Experimental |
| 50 |
delonnewman/mini-levenshtein
Simple, fast Levenshtein distance and similarity ratio for Ruby |
|
Experimental |
| 51 |
slava-vishnyakov/tatoeba-pair
Converts tatoeba downloads to tsv file |
|
Experimental |
| 52 |
BaseMax/go-token-boundary
A Go-based CLI tool for analyzing and visualizing token boundaries in... |
|
Experimental |
| 53 |
tsawler/prose
A natural language processing library in pure Go. It supports tokenization,... |
|
Experimental |
| 54 |
liuzl/tokenizer
Natural Language Tokenizer |
|
Experimental |
| 55 |
snwfdhmp/prose
Chatbot framework powered by regular expressions |
|
Experimental |
| 56 |
evalphobia/go-jp-text-ripper
tokenize text and separate it into words for Japanese |
|
Experimental |
| 57 |
mochi-co/ngrams
A Go n-gram indexer for natural language processing with modular tokenizers... |
|
Experimental |
| 58 |
Software-Research-Lab/dropsuit
DropSuit - NLP & data manipulation library for JS & Node.js. Offers diverse... |
|
Experimental |
| 59 |
wikimedia/sentencex-go
A sentence segmentation library with wide language support optimized for... |
|
Experimental |
| 60 |
torden/go-mecab
Just! Go(go-lang) interface for Mecab-ko |
|
Experimental |
| 61 |
rafatbiin/gongram
Ngram generator in Go that just works |
|
Experimental |
| 62 |
wmentor/lang
language detection Go library |
|
Experimental |
| 63 |
agentkube/txt2promql
Go library for text-to-PromQL conversion. (In Progress) - ⚠️ Affected due... |
|
Experimental |
| 64 |
afjoseph/WhiteStrings
Go implementation of Simon White's String Similarity Algorithm |
|
Experimental |
| 65 |
aryahadii/shiva
NLP library in Go |
|
Experimental |
| 66 |
Software-Research-Lab/dropsuit-dtstruc
The dtstruc function restructures JSON data into different patterns,... |
|
Experimental |
| 67 |
apizedev/apize-go
Apize SDK for the Go programming language |
|
Experimental |
| 68 |
Software-Research-Lab/dropsuit-ngram
The ngram function is a JavaScript and Node.js function that is part of the... |
|
Experimental |
| 69 |
Vineeth-Mohan/go-abbr-builder
A utility to go through a text file and extract possible abbreviations |
|
Experimental |
| 70 |
mdm-code/prg2p
Grapheme-to-phoneme rule-based converter for Polish in Go. |
|
Experimental |
| 71 |
infoidx/similar
中文相似度库 |
|
Experimental |
| 72 |
a-poor/jarowinkler
An implementation of the Jaro-Winkler string similarity algorithm in Go. |
|
Experimental |
| 73 |
SemiringInc/GoJSONNLP
JSON-NLP Go Package |
|
Experimental |
| 74 |
Anonimy/go-spell-checker
Adaptation of Peter Norvig's algorithm with Go Lang |
|
Experimental |
| 75 |
Software-Research-Lab/dropsuit-bow
The bow function is a JavaScript and Node.js function that generates a bag... |
|
Experimental |
| 76 |
go-morfeusz/morfeusz
Go bindings for Morfeusz 2, a morphological analyzer for Polish |
|
Experimental |
| 77 |
lucasmenendez/gotagger
Simple keyword extraction writted in go |
|
Experimental |