Counting time, from any date to any date
Motivation | Features | Technologies | How to use | Learning outcomes | License
The idea to build this project started from a personal need to know how much time was left for an event. This need inspired me to create TheCountdown. ⌛
Also, developing this project was a great way to practice my development skills by creating and publishing an application from scratch, which would solve a real problem in the world!
- Flexible, interactive countdown timers, from any date to any date
- Simple, user-friendly interface
- Good user experience (UX) and visual feedback
- Responsive layouts, both mobile and desktop friendly
The main technologies and tools used in this project are the following:
Deployed to Vercel
TheCountdown is available at thecountdown.vercel.app. Check it out if you'd like to give it a try! 😉
Building this project has proven to be a great way to learn, practice, and acquire experience with lots of interesting technologies. My main learning outcomes were related to:
- Planning, designing, developing and deploying this application from scratch. This includes going through possibilities, gathering resources, establishing priorities, responding to requirement changes and focusing on generating value for users.
- Providing a good user experience (UX) when selecting dates and time ranges, by creating a lightweight, simple, and intuitive interface.
- Using Agile methodologies, in order to enhance the development efficiency and deliver high-quality upgrades incrementally.
- Applying development best practices, such as clean code, separation of concerns, KISS and DRY, which are meant to keep the codebase easy to understand, maintain and extend.
- Using TypeScript, React, and Next.js, which are modern technologies employed in this project.
- Improving performance of components in React, and using static generation and server-side rendering with Next.js.
- Manipulating dates and time ranges, storing the created countdowns locally for a later session, and using gradients.
- Optimizing SEO (Search engine optimization) to a better indexation by search engines.
- Using analytics tools to understand user behavior and apply this knowledge to prioritize changes.
This project is under MIT License. Check LICENSE for more information.
Made by Diego Aquino 😎. Let's connect!