A command-line tool that reads a file containing Markdown text, parses it, and generates a corresponding HTML file. This project is a great introduction to file I/O, string manipulation, and basic parsing logic in Rust without complex dependencies.
What you'll build
This project involves building a command-line interface (CLI) tool in Rust that converts Markdown files into fully-formed HTML documents. You will start by creating a basic parser for fundamental Markdown syntax like headings, bold, and italics. As you progress, you will enhance the tool to become a portfolio-worthy project by adding support for more complex elements like lists, links, images, and code blocks. To elevate the project further, you will implement advanced features such as adding a default CSS stylesheet for beautifully rendered output and a 'watch' mode that automatically re-compiles the HTML whenever the source Markdown file is changed. The project will be structured into logical modules (e.g., for parsing and HTML generation) and will include a suite of unit tests to ensure its correctness and reliability. This approach will not only teach you the fundamentals of Rust but also best practices in software engineering like code organization, testing, and building a polished user experience.
What you'll learn
Roadmap
8 steps · 55 tasks