I’ve created a Portfolio page with an entry for my most recent personal project, a web application called Simple To-Do.
What is Simple To-Do?
A web application that allows users to create, edit, and complete items in a to-do list. It also tracks the number of tasks completed by each user. When a task is completed, the application awards a number of Achievement Points based on the Priority assigned to it.
jQuery and AJAX handle manipulation of the Document Object Model. The application also uses several Node.js packages, including Passport for user authentication, express-sanitizer for cross-site scripting sanitization, and connect-flash to display flash messages to the user.
Originally, when a to-do was created, deleted, or marked as complete, the application updated the list by refreshing the entire page. I discovered I could crash the server by clicking multiple times in the same checkbox before the page finished reloading.
By then, I had learned a bit about AJAX from this short video course. Refactoring my code to use AJAX fixed the issue, with the added benefit of making the application more responsive because it updates the DOM without refreshing the page.