develop a typing practice software that allows users to improve their typing skills. the software should provide a user-friendly interface with various typing exercises and lessons. it should support different difficulty levels, allowing users to start from beginner to advanced levels. the software should include a typing tutor feature that provides real-time feedback on typing accuracy and speed. it should also offer customizable settings, such as selecting specific typing exercises, adjusting time limits, and choosing different keyboard layouts. the software should have a progress tracking system that records users' performance, including accuracy, speed, and areas for improvement. additionally, it should provide detailed statistics and visualizations to help users monitor their progress over time. the software should be compatible with different operating systems, such as windows, macos, and linux, and should be able to run smoothly on various devices.