Sunday, July 12, 2026

Braille logic using the Unicode table.

All braille characters are registered in the Unicode table (U+2800–U+283F).

But this material will focus only on 6-dot braille. 


Braille binary sequence. 

 The logical sequence in the Unicode table follows numbering from 0 to 63, with 0 corresponding to 000000, 1 to 000001, and 63 to 111111. 

 See the example on the left side of the image below. 


Braille in educational materials. 

 On the right side, the braille cell is shown in the same format typically used in educational materials. 

 On the left side, from top to bottom, are dots 1, 2, and 3; on the right side, from top to bottom, are dots 4, 5, and 6.




    Index

    Binary

    Unicode

    Braille Numbering


Braille Table: Complete Table 
Braille Unicode Table






 


Friday, June 26, 2026

Thanks | Braille Table

 

This project exists thanks to the support, collaboration, and tools provided by many people and communities.

My sincere appreciation goes to:

Community

Developers Who Came Before

  • For building the foundations, tools, and knowledge that allow new accessibility technologies to exist today.

Unicode Team

  • As a developer who believes in universal standards, I would like to express my gratitude to Joe Becker, Lee Collins, Mark Davis, and the teams who created and maintain Unicode. This standard is the silent foundation of virtually all modern technology. Whenever I study a writing system, I am impressed by the precision, care, and vision that made such a long‑lasting project possible.

ghostfix-pm

  • Thank you for proposing useful solutions for code improvement and for helping to improve the documentation.

Language

Java Community

  • For maintaining a free, open, and expressive programming language that makes projects like this possible.

Python Community

  • For maintaining a free, open, and expressive programming language that makes projects like this possible.

IDE

Eclipse IDE

  • For offering a powerful, free, and accessible development environment.

Microsoft – Visual Studio Code

  • For offering a powerful, free, and accessible development environment.

AI

Gemini (Google AI)

  • For collaborating as an authentic development partner, assisting in architecture refining, code portability across platforms, and documentation review.

Microsoft – Copilot

  • For providing an accessible AI assistant that played a fundamental role in the growth and refinement of this system.

BrailleBase Group

Nagao Yuji

  • For creating and maintaining BrailleBase, designing its architecture, and developing its core features with a focus on accessibility and education.

João Victor Nagao

  • For contributing to the development of new accessibility tools and helping expand the possibilities of this project.

Koyama Rumi

  • For helping with the marketing and presentation of the tool.

License | Braille Table

 MIT License


Copyright (c) 2026 Nagao Yuji


Permission is hereby granted, free of charge, to any person obtaining a copy

of this software and associated documentation files (the “Software”), to deal

in the Software without restriction, including without limitation the rights

to use, copy, modify, merge, publish, distribute, sublicense, and/or sell

copies of the Software, and to permit persons to whom the Software is

furnished to do so, subject to the following conditions:


The above copyright notice and this permission notice shall be included in all

copies or substantial portions of the Software.


THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR

IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,

FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE

AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER

LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,

OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE

SOFTWARE.

READ ME | Braille Table

 

Braille Table

- pip install brailletable


  • BrailleTable is a library that provides tables and utilities related to the braille system, using the Unicode Braille Patterns block as its reference.
  • Version 1.0.2
  • This library is considered stable, and at the moment, there are no plans for future updates.

Tables group (0004)

0004-AA - Braille List

@staticmethod
def braille_list() -> list[str]:

Description

  • Returns all 64 six‑dot braille symbols.
  • The symbols follow the standard Unicode Braille Pattern block, ranging from U+2800 to U+283F.

Details

  • Output type: list[str]
  • Total items: 64
  • Unicode block: Braille Patterns
  • Order: strictly sequential from U+2800 (⠀) to U+283F (⠿)

0004-AB - Braille Reverse List

@staticmethod
def reverse_braille_list() -> list[str]:

Description

  • Returns all 64 six‑dot braille symbols.
  • Contains the complete set of the standard Unicode Braille Pattern block (U+2800 to U+283F), but rearranged.

Details

  • Output type: list[str]
  • Total items: 64
  • Unicode block: Braille Patterns
  • Order: Reverse binary order (mirrored bit‑mapping of dots 1‑2‑3 with dots 4‑5‑6)

0004-BA - Braille Binary

@staticmethod
def binary_list() -> list[list[int]]:

Description

  • Returns a list with 64 items, where each item is a 6‑bit array representing the binary pattern of a braille character.
  • The bit patterns follow the natural numeric order from 0 to 63, each formatted as a 6‑bit binary sequence (000000 → 111111).

Details

  • Output type: list[list[int]]
  • Total items: 64
  • Bits per item: 6
  • Value range: integers 0 or 1
  • Order: sequential binary representation of numbers 0–63
  • Mapping: index → 6‑bit array

0004-BB - Braille Reverse Binary

@staticmethod
def reverse_binary_list() -> list[list[int]]:

Description

  • Returns a list with 64 items, where each item is a 6‑bit array representing the binary pattern of a braille character, but in reverse bit order.
  • Each 6‑bit sequence is reversed from right to left, transforming abcxyz into zyxcba.

Details

  • Output type: list[list[int]]
  • Total items: 64
  • Bits per item: 6
  • Value range: integers 0 or 1
  • Order: sequential binary representation of numbers 0–63
  • Transformation: each 6‑bit array is reversed
  • Mapping: index → reversed 6‑bit array

0004-CA - Braille Binary String

@staticmethod
def binary_string_list() -> list[str]:

Description

  • Returns a list with 64 items, where each item is a 6‑bit binary string representing the braille pattern for values from 0 to 63.
  • Each number is formatted as a fixed‑width 6‑character binary string ("000000" → "111111").

Details

  • Output type: list[str]
  • Total items: 64
  • String length: always 6 characters
  • Characters used: '0' and '1'
  • Order: sequential binary representation of numbers 0–63
  • Mapping: index → "binary_string"

0004-CB - Braille Reverse Binary String

@staticmethod
def reverse_binary_string_list() -> list[str]:

Description

  • Returns a list with 64 items, where each item is a 6‑bit binary string reversed from right to left.
  • Each binary string corresponds to the numbers 0 to 63, but with the bit order inverted ("abcxyz" → "zyxcba").

Details

  • Output type: list[str]
  • Total items: 64
  • String length: always 6 characters
  • Characters used: '0' and '1'
  • Order: sequential binary representation of numbers 0–63
  • Transformation: each binary string is reversed
  • Mapping: index → "reversed_binary_string"

0004-D - Braille Unicode

@staticmethod
def unicode_list() -> list[str]:

Description

  • Returns a list with 64 Unicode strings, each representing the hexadecimal Unicode code point of a braille character.
  • The values follow the standard Unicode Braille Patterns block, from U+2800 to U+283F.

Details

  • Output type: list[str]
  • Total items: 64
  • Format: hexadecimal Unicode strings (e.g., "2800", "2801", … "283F")
  • Unicode block: Braille Patterns
  • Order: strictly sequential from U+2800 to U+283F
  • Mapping: index → "unicode_hex_string"

0004-E - Number of Points Per Braille

@staticmethod
def dot_count() -> list[int]:

Description

  • Returns a list with 64 integers, where each value represents the number of active dots (1–6) in the corresponding braille character.
  • The count is computed from the binary pattern of each braille cell.

Details

  • Output type: list[int]
  • Total items: 64
  • Value range: integers from 0 to 6
  • Order: sequential braille index (0–63)
  • Mapping: index → active dot count

0004-F - Braille Dot Numbering List

@staticmethod
def dot_numbering_list() -> list[list[int]]:

Description

  • Returns a list with 64 items, where each item is a list containing the active dot numbers (1–6) of the corresponding braille character.
  • Dot numbering follows the standard braille convention:
  • 1 4
  • 2 5
  • 3 6

Details

  • Output type: list[list[int]]
  • Total items: 64
  • Dots per item: variable (0 to 6)
  • Dot numbering: 1–6
  • Order: sequential braille index (0–63)
  • Mapping: index → [dot_numbers]

0004-G - Braille Dot Numbering String List

@staticmethod
def dot_numbering_string_list() -> list[str]:

Description

  • Returns a list with 64 strings, where each string contains the active dot numbers of the corresponding braille character, separated by hyphens.
  • This format is commonly used in educational material and documentation.

Details

  • Output type: list[str]
  • Total items: 64
  • Format: "1-3-5" or "" for no dots
  • Dot numbering: 1–6
  • Order: sequential braille index (0–63)
  • Mapping: index → "dot1-dot2-dot3"

Mapping group (0003)

0003-AA - Get the Index Using the Braille Character

@staticmethod
def get_braille_to_index(braille: str) -> int:

Description

  • Returns the numeric index (0–63) of a given braille Unicode character.
  • The index corresponds to the character’s position in the Unicode Braille Patterns block, ranging from U+2800 to U+283F.

Details

  • Input type: str (a single braille Unicode character)
  • Output type: int
  • Valid range: 0 to 63
  • Unicode block: Braille Patterns
  • Mapping: braille_character → index
  • Lookup source: internal static table of 64 braille symbols

0003-AB - Get the Braille Character Using the Index

@staticmethod
def get_index_to_braille(index: int) -> str:

Description

  • Returns the braille Unicode character corresponding to the given index (0–63).
  • The index maps directly to the Unicode Braille Patterns block, from U+2800 to U+283F.

Details

  • Input type: int
  • Valid range: 0 to 63
  • Output type: str (a single braille Unicode character)
  • Unicode block: Braille Patterns
  • Mapping: index → braille_character
  • Lookup source: internal static table of 64 braille symbols

0003-B - Receives a List of Braille Characters and Returns a List of Indices

@staticmethod
def get_braille_list_to_index_list(braille_list: list[str]) -> list[int]:

Description

  • Converts a list of braille Unicode characters into a list of their corresponding numeric indices (0–63).
  • Each character is mapped using the same Unicode Braille Patterns block (U+2800 to U+283F).

Details

  • Input type: list[str]
  • Output type: list[int]
  • Valid index range: 0 to 63
  • Unicode block: Braille Patterns
  • Mapping: [braille_char1, braille_char2, ...] → [index1, index2, ...]
  • Conversion rule: each character is processed using get_braille_to_index()

2026/07/07