You are browsing as a guest. Sign up (or log in) to start making projects!

2h 2m 56s logged

Developer Notes #3: Removing TypeScript and Moving Towards RustAfter spending more time working with TypeScript, I have decided to remove it from the project and move towards a simpler and more suitable development setup.The main reason for this change is that TypeScript became a major source of frustration during development. While it offers useful features such as type safety and improved tooling for larger applications, the extra configuration, complexity, and debugging overhead started slowing down progress rather than helping the project move forward.For this project, the main goal is to focus on building features, improving performance, and creating a reliable system that can run efficiently on the target hardware. Removing TypeScript will reduce unnecessary complexity and allow faster development while keeping the codebase easier to understand and maintain.The current codebase has been updated by removing the previous TypeScript folder and beginning a rewrite using Rust. Rust was chosen because it provides better performance, memory safety, and lower-level control, which fits the requirements of this project, especially since it is designed to run on a Raspberry Pi with GPIO connections.The Raspberry Pi folder is included because this project is designed around Raspberry Pi hardware features and requires communication with GPIO components. The structure allows the software side of the project to interact with the physical hardware it is built to control.This change does not mean TypeScript is a bad technology. It is still a powerful choice for many web and application projects. However, for this specific project, the added complexity was not worth the development slowdown, and a lower-level language like Rust is a better fit for the goals of the system.Future developer notes will document the migration process, Rust implementation, hardware integration, challenges encountered, and improvements made as development continues.

0
4

Comments 0

No comments yet. Be the first!