Voice-driven human–computer interaction has gained significant attention in recent years due to its potential to improve accessibility and usability. Programming, however, still largely depends on manual typing and complex development environments, which can be challenging for beginners and users with physical limitations. This paper presents an AI-Based Voice Code Assistant, an offline system that enables users to interact with a programming environment using natural language voice commands. The proposed system allows users to load programs, execute code, and obtain explanations through voice or text input within a single integrated platform. It supports multiple programming languages and operates without internet connectivity, ensuring privacy and reliability. Experimental results demonstrate that the system reduces typing effort, improves learning efficiency, and provides an interactive coding experience suitable for educational environments.
Introduction
Programming education often challenges beginners due to complex development tools, strict syntax, and heavy reliance on keyboard input, which can be especially difficult for users with limited typing skills or physical impairments. While voice-based programming tools exist, most depend on cloud services, lack integrated code execution and explanation features, and raise privacy concerns.
This paper proposes an AI-Based Voice Code Assistant, an offline desktop application that enables voice-driven programming alongside traditional text input. The system integrates speech recognition, program execution, and code explanation into a single platform, creating an accessible and interactive learning environment while preserving user privacy through offline operation.
The system follows a modular client–server architecture. The client module handles user interaction through a graphical interface, supports login, learning area selection, code editing, execution, and explanation requests via voice or text, and provides voice feedback. The server (core processing) module manages user authentication, speech-to-text conversion, command interpretation, program compilation and execution, and logging. It supports multiple programming languages, including C, C++, Python, and Java.
Implemented in Python, the system uses offline AI tools such as VOSK for speech recognition, pyttsx3 for text-to-speech, SQLite for secure user authentication, and CustomTkinter for the interface. Evaluation results show accurate voice command recognition, successful offline code execution, reduced typing effort, and improved conceptual understanding through integrated explanations, making the tool well suited for academic and learning environments.
Conclusion
The AI-Based Voice Code Assistant demonstrates the effectiveness of voice-driven programming in offline environments. By integrating speech recognition, program execution, and explanation features into a single platform, the system enhances accessibility and learning efficiency. The proposed solution is well suited for academic laboratories and beginner programmers and provides a strong foundation for future enhancements such as expanded language support and adaptive learning features.
References
[1] R. Wataketiya, H. Malwatta, N. Chandrasiri, M. Nadeeshani, R. Kithsiri, and S. Siriwardana, “Voice Enabled Intelligent Programming Assistant,” International Journal of Computer Applications, 2022.
[2] A. Wagner, R. Rudraraju, S. Datla, A. Banerjee, M. Sudame, and J. Gray, “Programming by Voice: A Hands-Free Approach for Motorically Challenged Children,” in Proc. ACM SIGCHI Conf. Human Factors in Computing Systems (CHI), Austin, TX, USA, 2012.
[3] A. Désilets, D. C. Fox, and S. Norton, “VoiceCode: An Innovative Speech Interface for Programming-by-Voice,” in Proc. Int. ACM SIGACCESS Conf. Computers and Accessibility, 2006.
[4] T. B. Devshatwar, P. B. Deore, S. N. Awale, R. Jethure, and C. Nayak, “Voice Coding Using Artificial Intelligence,” International Journal of Engineering Research and Technology, vol. 10, no. 6, 2021.
[5] M. B. Garcia, J. B. R. Enriquez, R. T. Adao, and A. Happonen, “Hey IDE, Display Hello World: Integrating a Voice Coding Approach in Hands-on Programming Activities,” Education and Information Technologies, 2022.
[6] T. Zan and Z. Hu, “VoiceJava: A Syntax-Directed Voice Programming Language for Java,” IEEE Access, vol. 11, 2023.
[7] L. Rosenblatt, “VocalIDE: An IDE for Programming via Speech Recognition,” Bachelor’s Thesis, Carnegie Mellon University, 2017.
[8] A. Désilets, “VoiceGrip: A Tool for Programming-by-Voice,” Proc. Int. ACM SIGACCESS Conf. Computers and Accessibility, 2001.
[9] S. Nowrin, P. Ordóñez, and K. Vertanen, “Exploring Motor-Impaired Programmers’ Use of Speech Recognition,” ACM Transactions on Accessible Computing, 2022.
[10] P. Joshi and D. Bein, “Audible Code: A Voice-Enabled Programming Extension for Visual Studio Code,” International Journal of Computer Applications, 2020.