Skip to content

MSSFree88/CMU-Block-Dimension-Checker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

10 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CMU Block Dimension Checker

A Python tool to verify whether a given length matches standard 8-inch CMU block dimensions.
Supports both CLI and GUI (Tkinter) modes with smart detection of the best interface.


✨ Features

  • Accepts flexible input formats: 6'4", 5-9, 76, etc.
  • Checks if a dimension is a CMU block size (multiples of 8").
  • Shows nearest smaller and larger block dimensions.
  • Dual interface:
    • CLI Mode (cli_app.py)
    • GUI Mode (gui_app.py)
  • Smart entry point (main.py) automatically picks CLI or GUI, or use flags --cli / --gui.

📂 Project Structure

  • dim_utils.py – Core logic (parse input, check block sizes, format output).
  • cli_app.py – Command-line interface.
  • gui_app.py – Tkinter GUI.
  • main.py – Entry point and mode selection.

📦 Requirements

  • Python 3.8+
  • Tkinter (included with most Python installations)
  • PyInstaller (only if building executables)

🚀 Usage (Source)

Run in CLI mode

python main.py --cli

Run in GUI mode

python main.py --gui

Example

Enter a length: 6'4"
✓ 6' 4" is a block dimension.
🡢 Next block dimension: 7' 0"
🡠 Previous block dimension: 5' 8"

📥 Downloads (Executables)

If you just want to run it on Windows, Download the latest release

Run the executable

  • GUI: Double-click Block Dimensions.exe
  • CLI: Open Terminal in the folder and run:
"Block Dimensions CLI.exe"

🛠️ Build & Run (Executable)

Build GUI version

pyinstaller main.py --onefile --noconsole --name "Block Dimensions" --icon=".\icon\Icon.ico"

Build CLI version

pyinstaller main.py --onefile --console --name "Block Dimensions CLI" --icon=".\icon\Icon CLI.ico"

About

A Python tool to verify if a length matches standard 8" CMU block dimensions. Supports multiple input formats, shows nearest dimensions, and runs in both CLI and Tkinter GUI modes with a smart entry point that auto-detects the interface.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages