Skip to content

Latest commit

History

History
88 lines (57 loc) 路 2.89 KB

File metadata and controls

88 lines (57 loc) 路 2.89 KB

Internship Assignment: Date & Time Calculator

Objective

Assess the candidate's proficiency in JavaScript date handling, Intl API, and UI/UX development by creating an interactive date calculator that calculates age, date differences, and future dates.


Assignment Overview

Create a web-based date and time calculator that allows users to:

  1. Select a Date and Time to calculate age or the difference between two dates.
  2. View the difference between two selected dates in years, months, and days.
  3. Calculate future or past dates (e.g., what date will it be 1000 days from today).
  4. Display the current date and time at the top using JavaScript's Intl.DateTimeFormat API.

The UI should be interactive and user-friendly, utilizing smooth animations for a modern experience.


Requirements

1. Display Current Date & Time

  • The current date and time should always be displayed at the top.
  • Use Intl.DateTimeFormat to format it properly based on the user's locale.

2. Age & Date Difference Calculator

  • Allow the user to select two dates.
  • Display the difference in years, months, and days.
  • If only one date is selected, calculate the difference from today.

3. Future & Past Date Calculator

  • Allow users to enter a number of days (positive or negative).
  • Show the calculated future or past date.
  • Use Intl.DateTimeFormat for proper localization.

4. UI/UX Enhancements

  • The layout should be clean and responsive.
  • Use smooth transitions when displaying results.
  • Implement form validation to prevent invalid inputs.

Technology Stack

  • HTML: Page structure.
  • CSS: Grid/Flex box for layout, animations for interactions.
  • JavaScript:
    • Handle date selection and calculations.
    • Use Intl.DateTimeFormat for date formatting.
    • Validate user input and display meaningful messages.

Submission Instructions

  • Complete the assignment within one week.
  • Upload the project to your own GitHub repository.
  • Share the GitHub repository link along with a README.md containing:
    • Brief description of the project.
    • Steps to run the project.
    • Any additional features implemented.

Bonus Points (Optional Enhancements)

  • Implement a time difference calculator (e.g., HH:MM:SS difference between two times).
  • Allow the user to change time zones and see the difference.
  • Add a countdown timer for a selected future date.

Evaluation Criteria

  • Code Quality: Clean, well-structured, and commented.
  • Functionality: Features should work without errors.
  • Design & UX: The UI should be smooth and interactive.
  • GitHub Usage: Proper repository structure, meaningful commits, and a well-documented README.

Good luck! 馃殌

漏 2025 RecursiveZero private limited | All rights reserved.