Uloženo v:
Podrobná bibliografie
Hlavní autoři: Mohammed Talha, Yashwanth V Guru, Abhishek AL
Médium: Recurso digital
Jazyk:angličtina
Vydáno: Zenodo 2026
Témata:
On-line přístup:https://doi.org/10.5281/zenodo.19628071
Tagy: Přidat tag
Žádné tagy, Buďte první, kdo vytvoří štítek k tomuto záznamu!
Obsah:
  • <p>This project presents a lightweight, browser-based static code analysis tool designed to evaluate software quality while ensuring complete data privacy. Unlike traditional cloud-based analyzers that require code transmission to external servers, this system operates entirely on the client side, guaranteeing zero data egress and full control over proprietary code.<br>The analyzer leverages Abstract Syntax Tree (AST) traversal techniques to inspect source code and compute key software metrics in real time. These include:<br>Time Complexity (Big O Notation) based on loop nesting depth<br>Cyclomatic Complexity for control flow analysis<br>Halstead Metrics for measuring code difficulty and effort<br>The system is built using a modular architecture that follows the Strategy Design Pattern, enabling seamless support for multiple programming languages such as JavaScript and Python. Its implementation using modern frontend technologies ensures high performance, with analysis latency typically under 100 milliseconds for standard code snippets.<br>A key innovation of this project is its privacy-first approach, aligning with the principles of local-first software. By performing all computations within the browser, the tool eliminates risks associated with data leakage, making it especially suitable for developers working with sensitive or proprietary code.<br>Additionally, the tool features a responsive user interface that provides instant feedback, helping developers quickly identify inefficiencies and improve code maintainability.<br>Key Features:<br>100% client-side execution (no server dependency)<br>Real-time static analysis with near-zero latency<br>Multi-language support via modular design<br>Accurate detection of nested loop complexities<br>Avoidance of false positives through AST-based parsing<br>Use Cases:<br>Educational tool for learning algorithm complexity<br>Quick code quality checks during development<br>Privacy-sensitive environments (NDA or proprietary codebases)<br>Limitations: The current implementation uses heuristic methods for estimating time complexity and does not fully analyze recursive behavior or built-in function complexities.<br>Future Enhancements:<br>Integration with WebAssembly for improved performance<br>Custom rule engine for advanced linting<br>Exportable reports for academic and professional use</p>