# cihai > Python library for CJK (Chinese, Japanese, Korean) character data. Look up readings, definitions, and variants from the UNIHAN database and beyond. ## Documentation - [Quickstart](https://cihai.git-pull.com/quickstart/): cihai is designed to work out-of-the-box without configuration. - [Topics](https://cihai.git-pull.com/topics/): Explore cihai’s capabilities and underlying concepts at a high level, with detailed explanations to help you understand its design and usage. - [API Reference](https://cihai.git-pull.com/api/): cihai’s public API for CJK character lookups and dataset management. - [Datasets](https://cihai.git-pull.com/datasets/): Data sources available through cihai. - [Internals](https://cihai.git-pull.com/internals/): Internal configuration file loading and expansion. - [Project](https://cihai.git-pull.com/project/): Information for contributors and maintainers. - [Design and Planning](https://cihai.git-pull.com/design-and-planning/): design-and-planning/2018/plugin-system - [Changelog](https://cihai.git-pull.com/history/): You can test the unpublished version of cihai before it’s released. See developmental releases. - [Glossary](https://cihai.git-pull.com/glossary/): In computer software, internationalization of Chinese, Japanese, and Korean language. ## Documentation - [Config - cihai.config](https://cihai.git-pull.com/api/config/): Configuration options for Cihai app. - [Constants - cihai.constants](https://cihai.git-pull.com/api/constants/): Constants for cihai. - [Conversion - cihai.conversion](https://cihai.git-pull.com/api/conversion/): Conversion functions for various CJK encodings and representations. - [Core - cihai.core](https://cihai.git-pull.com/api/core/): Cihai core functionality. - [Database - cihai.db](https://cihai.git-pull.com/api/db/): Cihai core functionality. - [Exceptions - cihai.exc](https://cihai.git-pull.com/api/exc/): When using cihai via Python, you can catch Cihai-specific exceptions via these. All Cihai-specific exceptions are catchable via CihaiException since its the base exception. - [Extending - cihai.extend](https://cihai.git-pull.com/api/extend/): Cihai Plugin System. - [Logging - cihai.log](https://cihai.git-pull.com/api/log/): Log utilities for cihai. - [Typings - cihai.types](https://cihai.git-pull.com/api/types/): Typings for cihai. - [Utilities - cihai.utils](https://cihai.git-pull.com/api/utils/): Utility and helper methods for cihai. - [UNIHAN - cihai.data.unihan](https://cihai.git-pull.com/datasets/unihan/): Fetch + extract + transform + load UNIHAN dataset to Cihai. - [Extending](https://cihai.git-pull.com/design-and-planning/2013/extending/): Written Late 2013 - [Information Liberation](https://cihai.git-pull.com/design-and-planning/2013/information_liberation/): Written Late 2013 - [Internal Design decisions](https://cihai.git-pull.com/design-and-planning/2013/internals/): Whether you are Cihai, python, creating a CJK tool in another programming language, or simple looking to use a dataset, cihai will provide tools to turn raw datasets into a familiar table / relatio... - [Planning](https://cihai.git-pull.com/design-and-planning/2013/spec/): Written Late 2013 - [Internals Planning](https://cihai.git-pull.com/design-and-planning/2017/spec/): Created 2017-04-29 - [Extensions](https://cihai.git-pull.com/design-and-planning/2018/plugin-system/): Initially discussed in #131 1 - [Config reader - cihai._internal.config_reader](https://cihai.git-pull.com/internals/api/config_reader/) - [Internal API](https://cihai.git-pull.com/internals/api/) - [Typings - cihai._internal.types](https://cihai.git-pull.com/internals/api/types/): Internal type annotations. - [Code Style](https://cihai.git-pull.com/project/code-style/): cihai follows consistent coding standards across all repositories in the cihai organization. - [Contributing](https://cihai.git-pull.com/project/contributing/): As an open source project, all cihai projects accept contributions through GitHub, GitLab and Codeberg. Below you will find resources on the internals of the project. - [Releasing](https://cihai.git-pull.com/project/releasing/): Since cihai is used in production projects, breaking changes are deferred until a major feature release. - [Examples](https://cihai.git-pull.com/topics/examples/): examples/basic_usage.py: - [Extending cihai](https://cihai.git-pull.com/topics/extending/): Use cihai’s abstraction and your dataset’s users can receive easy configuration, SQL access, and be available in a growing list of CJKV information. - [Features](https://cihai.git-pull.com/topics/features/): Handling CJK Variants - [Troubleshooting](https://cihai.git-pull.com/topics/troubleshooting/): Note, to get this working on python 2.7, you must have python built with UCS4 via --enable-unicode=ucs4. You can test for UCS4 with: