AudionAudion

Project File Map

PROJECT_FILES_GUIDE_EN.md

Project File Map

Русский · Reference · Install

Where everything lives. This document is for whoever maintains the project; a user does not need it.

Working folders (input, output, logs, report, release, workspace, runtime, wheelhouse) are described by role rather than file by file — their contents are produced by runs and rebuilt.


Root

FileWhat it is
Start.exeCompiled window launcher
launcher_gui.cmdWindow launcher
launcher_project.cmdProject menu, English
launcher_project_ru.cmdProject menu, Russian
launcher_tools.cmdService menu: doctor, licenses, release
builder_main.cmdPortable environment build
cleanup_project.cmdCleanup of generated artifacts
pytest.iniTest settings
release_manifest.jsonManifest of the last release build
README.mdPublic project description

CMD files must stay UTF-8 without BOM with CRLF line endings. After editing, run install\Check-CmdEncoding.cmd.


config — Settings

FileWhat it is
project.yamlEngine settings: city, reference column, target columns, linked columns, safety limits
gui_settings.yamlLanguage, theme, window behaviour
tool_manifest.yamlEvery command and field of the window; the interface is built from it
version.jsonVersion and the language of the root README
ui_colors.yamlInterface colours
path_history.jsonHistory and pins of source and target paths
oktmo_current_keys.txtCurrent OKTMO search keys
oktmo_region_pins.jsonPinned regions
oktmo_municipality_pins.jsonPinned municipalities
oktmo_pins_bundle.jsonThe combined pin set

system_core — Code

Top Level

FileWhat it does
Ultimate_GT_Aligner.pyThe matching engine: address parsing, passes, linked column transfer
safe_table_join.pyComparison of two workbooks and column transfer through Excel
excel_layout.pyResult workbook formatting: column widths, text wrap, fill
remove_empty_rows.pyRemoval of entirely empty rows
Parser_Diagnostic.pyAddress parsing diagnostics
inspect_md_tables.pyMarkdown table inspection
doctor.pyEnvironment and import checks
main.pyDirect matching run without the window
fzf.exeMenu for the CMD launchers

address_engine — The Address Engine

FileWhat it does
audion_address_core.pyAddress decomposition, recognition of address-like text
address_slots.pySlots: definition, filling, address line assembly
slot_fill.pyFilling slots from evidence
models.pyData structures: observation, address parts, fingerprint, cluster
source_intake.pyReading sources in every supported format
source_table_assembly.pyCollecting addresses from sources into a workbook
source_cleanup.pyFiltering out Office temporary files
reference_builder.pyBuilding the reference directory; slot and column definitions
reference_processor.pySorting and decomposing the directory by slots
oktmo_lookup.pyOKTMO index, disk cache, region / municipality / settlement lookup
oktmo_user_keys.pyThe project key file and pins
rosstat_update.pyDownloading and updating the Rosstat registry
region_reference.pyRegion reference
russian_morphology.pyGrammatical forms of names
universal_address.pyThe common address normalizer
normalizer_runtime.pyConfiguring the normalizer per run
address_diagnostics.pyDiagnostic extracts
legacy_office_converter.pyDOC/XLS conversion

services — The Service Layer

address_aligner_service.py is the only file. Every window command points to a function here: the service takes the parameters, calls the engine, and writes the log, the report, and the artifact list.

ui_nicegui — The Window

FileWhat it does
window.pyWindow wrapper: port, icon, WebView2 engine
app.pyThe interface itself: commands, fields, log, OKTMO panels
workbench.pySource and target, path history, pins
i18n.pyLanguage switching
tokens.css, base.css, theme.cssStyling

core — Core

FileWhat it does
jobs.pyRunning operations, cancellation, progress
manifest.pyParsing tool_manifest.yaml
paths.pyManaged project folders
config.pyReading settings
ui_settings.pyWindow settings
ansi_terminal.pyTerminal output into the log
cmd_encoding.pyCMD encoding checks
output_decode.pyDecoding subprocess output
logging_utils.pyLogging

Other

PathWhat it is
license/Collection, deduplication, and pruning of third-party licenses
icons/Window icons
start_launcher/Source of Start.exe
powershell/Helper scripts

install — Install and Build

FileWhat it does
Build_Portable_Env.cmd / .ps1Portable environment build
install_portable_offline.cmdInstall from the local wheelhouse
verify_portable_env.cmdVerify the built environment
init_folders.cmdCreate the working folders
Check-CmdEncoding.cmd, Repair-CmdEncoding.ps1Check and repair CMD encodings
Clean-Install-Cache.cmd / .ps1Clean the build cache
Update-Requirements-Lock.cmdUpdate the dependency lock file
make_release_archive.cmdBuild the release archive
Build-StartLauncher.cmd / .ps1Build Start.exe
launcher-tools-update_fzf.cmdUpdate fzf.exe
requirements_full.inDependency list
README_INSTALL.mdInstall notes

data — Data

PathWhat it is
regions_reference.yamlRegion reference
rosstat/data-*.csvThe OKTMO registry, downloaded by a button in the window
rosstat/oktmo_lookup_cache.jsonThe parsed OKTMO index

docs — Documentation

FileWhat it is
README_RU.md, README_EN.mdProject description, the entry point
USER_GUIDE_RU.md, USER_GUIDE_EN.mdUser guide
OKTMO_RU.md, OKTMO_EN.mdThe OKTMO registry, keys, and pins
REFERENCE_RU.md, REFERENCE_EN.mdTechnical reference
INSTALL_RU.md, INSTALL_EN.mdInstall and launch
tools/PROJECT_FILES_GUIDE_*.mdThis document
PDF/Rendered PDFs of every document in two themes

PDFs are built by a separate tool from every .md in docs, nested folders included. The folder structure is preserved.


tests — Tests

FileWhat it covers
test_address_aligner_regression.pyThe matching passes
test_safe_table_join.pyMoving columns by address
test_excel_layout.pyResult workbook formatting
test_gui_render.pyWindow rendering
test_workbench_route_regression.pySource and target
test_ansi_terminal.pyTerminal output

The window is tested with NiceGUI's headless fixture, parsing the rendered page with BeautifulSoup; selenium is deliberately not used.


licenses — Licenses

License texts of third-party components, THIRD_PARTY_NOTICES.txt, COMPONENTS.json, the scan report, and the pack manifest. Produced by the tools in system_core/license/.

Alle Projekte