An Excalidraw clone built with React and TypeScript.
NinjaSketch is an Excalidraw clone built with React and TypeScript, using Rough.js for a hand-drawn style. The main focus was on functionalities, with the app not being responsive, catering to learning purposes. It offers tools like pencils, lines, rectangles, and text tools, allowing users to draw, move, resize elements, edit text, zoom in and out, pan around the canvas, as well as various keyboard shortcuts for ease of use.
NinjaSketch is a tool developed with React and TypeScript, focusing on functionalities like drawing, editing, and navigating a canvas. With features like different tools, zoom, pan, and keyboard shortcuts, it offers a user-friendly experience for sketching and creating diagrams. The project also highlights the importance of documenting features and learning processes, showcasing the value of stepping back, reflecting, and documenting to enhance understanding and learning new concepts.
React is a widely used JavaScript library for building user interfaces and single-page applications. It follows a component-based architecture and uses a virtual DOM to efficiently update and render UI components
Vite is a build tool that aims to provide a faster and leaner development experience for modern web projects
ESLint is a linter for JavaScript that analyzes code to detect and report on potential problems and errors, as well as enforce consistent code style and best practices, helping developers to write cleaner, more maintainable code.
TypeScript is a superset of JavaScript, providing optional static typing, classes, interfaces, and other features that help developers write more maintainable and scalable code. TypeScript's static typing system can catch errors at compile-time, making it easier to build and maintain large applications.