
Create a calendar app that supports theme changes, month navigation with arrows or keyboard, color-coded notes with hover text, and persistent data across reloads via a database.
Set up your development environment with a browser, a code editor, and Zap to run a local server and database using plain HTML, CSS, and JavaScript without frameworks.
Style the calendar with Font Awesome icons for left and right navigation, fine-tune cells with css for spacing and hover transitions, and prepare notes and tooltips for the current day.
Create the theme markup for a modal color picker with twelve color options and inline background color previews, using divs with class color option and color previews.
The left side will become the top while in portrait mode, hence the title.
Build an automatic calendar with JavaScript by populating previous, current, and next months through a three-phase process, using a month data array with month indices, days, start dates, and year.
update to calendar navigation implements robust next and previous month logic using data-driven year bounds and array access, enabling proper year transitions and leap year handling for future dates.
Fix the calendar bug by correcting the month index, then implement delete notes: clear the text area, remove the existing post, update the calendar, and hide the modal.
Refactor a calendar UI by extracting repetitive code into a reusable function, reducing duplication and clarifying month data handling for current, previous, and next months.
This entire course is one big code along, broken up into byte sized chunks. I start by creating the markup and styling all the pieces. The I use JavaScript to add all the front-end functionality. Then at the end I start using PHP and MySQL to connect to a database to make all of the changes made in the front end persistent, so that the app will remember how it was the last time you used it.
Keep in mind that there may be some technologies used in this course that you aren't used to using. I use Flexbox, AJAX, MySQL, etc. These technologies aren't aren't taught in this course, as that isn't the main objective, for me, these technologies are just a means to an end.