Polyglot Code Analyzer is a sophisticated, desktop-based static analysis tool designed to provide comprehensive insights into software projects of varying complexity. Built upon the Qt framework (PySide6), it features a custom-engineered Neumorphic user interface that prioritizes visual clarity and ergonomic interaction.
This tool goes beyond simple line counting; it parses directory structures to distinguish between executable code, comments, and whitespace across dozens of programming languages. Additionally, it identifies technical debt by scanning for standard marker tags, offering developers an immediate high-level overview of project health.
The application features a fully responsive Neumorphic design system with seamless Light and Dark mode toggling.
| Light Mode | Dark Mode |
|---|---|
![]() |
![]() |
- Multi-Language Support: Native recognition for over 50 file extensions, covering backend, frontend, systems programming, and scripting languages.
- Granular Metrics:
- Code: Executable lines of code.
- Comments: Documentation and inline comments (supports
#,//,--,%,<!--). - Blanks: Whitespace analysis to determine code density.
- Technical Debt Scanning: Automated detection of
TODO,FIXME,HACK,BUG, andXXXtags to highlight areas requiring attention. - Visual Composition: Generates proportional bar charts to visualize the ratio of code to comments.
- Neumorphic GUI: A custom implementation of Soft UI design principles using advanced Qt painting techniques, featuring bi-directional shadowing and floating elements.
- Threaded Analysis: Non-blocking background workers ensure the UI remains responsive during the scanning of large repositories.
- Python 3.10 or higher
- pip (Python Package Manager)
-
Clone the repository:
git clone https://github.com/dovvnloading/Polyglot-Code-Analyzer.git cd Polyglot-Code-Analyzer -
Install the required dependencies:
pip install PySide6
-
Run the application:
python main.py
- Launch the application.
- Click the SELECT PROJECT button.
- Navigate to the root directory of the software project you wish to analyze.
- The application will scan the directory tree. Progress is indicated by the bar at the top.
- Upon completion, a detailed report is rendered, showing file counts, line breakdowns, and language composition.
The analyzer supports a wide array of file types, including but not limited to:
- Systems: C, C++, Rust, Go, Assembly (
.asm,.s) - Web: HTML, CSS, JavaScript (
.js,.jsx), TypeScript (.ts,.tsx), PHP - Data: JSON, XML, YAML, SQL
- Scripting: Python, Ruby, Perl, Lua, Shell (
.sh,.bash,.ps1) - Mobile/App: Swift, Kotlin, Java, Dart, C#
This project is licensed under the Apache License 2.0. See the LICENSE file for details.
Copyright [2025] [Matthew R. Wesney]
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

