An online documentation platform for creating, managing and sharing docs. Formatted documentation is easily written using an online text editor and Markdown. Readers can suggest changes by making pull requests which the author can merge.
The main objective of the project was to research compiler design principles and develop a Markdown compiler with an associated web application. Full research was carried out to identify the key phases needed for a Markdown compiler, Lexical analysis, Syntax analysis and Code generation. The web application was split into two independent components, a REST API and a singe page application. The REST API is responsible for providing access to the data through a set of URLs, the API was developed using Node.js and MongoDB. The single page application which was built using Angular,it is responsible for displaying data in the user interface and handling user interactions.
Readers can suggest changes without the need for an account by making a pull request. The author is notified of these changes and can either close or merge the request.
Documentation can easily be shared and viewed using a short URL. The published document is automatically updated when a change is made to the documentation.
Previous versions of documentation are stored, allowing the author to revert any mistakes. The author can select what changes to revert using the merge tool.