A self-contained Japanese morphological analyzer written in pure Go, tokenizing text into words and analyzing parts of speech.
Kagome is an open-source Japanese morphological analyzer written in pure Go. It segments Japanese text into words and performs part-of-speech tagging, providing accurate linguistic analysis essential for natural language processing tasks like search indexing, text analysis, and language learning tools.
Developers and researchers working on Japanese natural language processing (NLP) applications, such as search engines, text analysis tools, language learning platforms, and linguistic research software.
Developers choose Kagome for its self-contained binaries with embedded dictionaries, eliminating external dependencies, and its versatility with multiple deployment options including a RESTful API server, WebAssembly for browsers, and FFI support for integration with languages like Python and PHP.
Self-contained Japanese Morphological Analyzer written in pure Go
Embeds dictionaries like MeCab-IPADIC and UniDic directly in the binary, eliminating external dependencies for easy deployment across platforms.
Offers normal, search, and extended modes to tailor tokenization for specific use cases, such as search optimization with heuristic-based splitting.
Includes a RESTful API server for scalable microservices, WebAssembly for client-side browser use, and FFI for Python/PHP integration, supporting diverse architectures.
Provides extensive examples, a Japanese reference manual, and a community wiki, aiding rapid onboarding and troubleshooting.
Default dictionaries are static and older; experimental support for NEologd or Korean lacks maturity, potentially missing contemporary or specialized vocabulary.
C library API is only tested with Python and PHP, leaving integration with popular languages like JavaScript/Node.js or Rust to community effort or workarounds.
The browser demo requires Graphviz for lattice visualization, adding setup complexity compared to purely self-contained client-side solutions.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.