- Add a gradient to the green background
- Replace the technology stack icons with text
- Add meta tags to improve SEO
- Design the login form on the login page
- Implement the Authentication API
- Write integration tests for the Authentication API
- Integrate the Authentication API with the login form
- Implement the authorization for the admin routes
- Setup Bugsnag for error reporting
- Design the contact form on the contact page
- Implement the Contact API
- Write integration tests for the Contact API
- Integrate the Contact API with the contact form
- Implement Google Recaptcha for the contact form
- Fix the feature tests to exclude Google Recaptcha V3 validation for the contact form
- Implement Google Recaptcha for the login form
- Fix the feature tests to exclude Google Recaptcha V3 validation for the login form
- Upgrade Laravel to version 5.8
- Upgrade Tailwind to version 1.0
- Improve the design of the notifications
- Redesign the layout of the home page
- Update the content on the home page
- Upgrade Laravel to version 6.0
- Upgrade Tailwind to version 1.1
- Design the blog page
- Design the single blog post page
- Implement the Blog Posts API
- Implement the single blog post API
- Implement the publish new blog post API
- Implement the edit existing blog post API
- Implement the delete existing blog post API
- Design the admin blog posts page
- Design the publish new blog post admin page
- Design the edit existing blog post admin page
- Design the delete admin blog post confirmation modal
- Integrate the admin blog APIs with the front-end
- Integrate the blog APIs with the front-end
- Implement refresh JWT with interceptors before the token expires
- Make responsive design improvements to the blog and single blog post pages
- Make the admin panel responsive
- Make the navigation bar responsive
- Make improvements to the code
- Redesign the website
- Design the bootcamp page
- Implement the bootcamp page
- Design the admin dashboard
- Integrate Google Analytics API on the admin dashboard
- Upgrade Tailwind CSS to version 1.2
- Implement the admin tags API
- Implement the admin create new tag API
- Implement the admin update existing tag API
- Implement the admin delete existing tag API
- Implement Laravel Passport for storing http only cookies for the JWT token
- Make improvements to the vuex store using Vuex ORM
- Implement webmentions as a comment system
- Implement an RSS feed
- Implement a social media share buttons on each blog post
- Improve the SEO for each blog post
- Move over the project to Digital Ocean for better SEO and performance
- Improve the loading of the assets to reduce the size
- Implement images for each of the blog posts to improve the SEO when the blog post is linked on social media
- Add each of the listed items to a separate div so that the words don't wrap on new lines
- Upgrade the project to Laravel 7.x
- Upgrade the project to Laravel 8.x
- Implement Laravel Sanctum for secure authentication
- Upgrade Tailwind CSS to version 1.5
- Upgrade Tailwind CSS to version 1.6
- Remove tui-editor and replace the forms with a normal textarea without preview
- Fix issues with unused CSS being ran on third party libraries like vue-datetime
- Replace moment with dayjs to reduce the JavaScript bundle size
- Upgrade the Tailwind CSS configuration to use the newer and updated config values
- Validate the email address based on the RFC format and email domain before sending an email through the contact form
- Setup .env file and a config.js file for the Vue part
- Refactor the Vue components to use async/await
- Use chunk based imports for components to reduce bundle size
- Convert the project to typescript class based components
- Fix the bug where the admin is redirected when there are validation errors on publish new and edit existing post pages
- Use the official typography Tailwind CSS plugin to style the blog post page
- Create GitHub issues instead of updating the readme for each new feature or bug or improvement
- Update the Tailwind CSS configuration to contain only configuration values that need to be updated instead of having the whole file there