Skip to content

Latest commit

ย 

History

History
106 lines (77 loc) ยท 3.46 KB

File metadata and controls

106 lines (77 loc) ยท 3.46 KB

๐Ÿ“บ Release Time Converter

๐Ÿš€ Live Site: release-time.onrender.com

๐Ÿ”น What is This?

A simple tool to check when a TV show's next episode airs, converted to your local time. No more guessing when your favourite show is coming out!


โœ… Current Progress

โœ”๏ธ Core functionality complete โ€“ every input gets an output, so users are never left guessing.
โœ”๏ธ Minimalist yet presentable design โ€“ clean and easy to use.
โœ”๏ธ Rate Limiting Implemented โ€“ Prevents excessive API requests to avoid key suspension.


๐Ÿ”ฎ Future Plans

๐Ÿ”น Specific Error Messages

  • Distinguish between "No upcoming episodes" vs. "Show not found."

๐Ÿ”น Show Identification Issues

  • Some shows have multiple versions (remakes, different years), causing incorrect results.
  • Example: Searching for Battlestar Galactica might return the wrong version.
  • Potential fix: Allow users to select from multiple search results (an image preview could help).

๐Ÿ”น Auto Convert to Local Time

  • Detect the userโ€™s time zone and convert the air time automatically.

๐Ÿ”น Countdown Timer โณ

  • Show a live countdown until the next episode airs.

๐Ÿ”น Show Past Episodes ๐Ÿ“บ

  • Fetch and display previous episodes alongside the next air date.

๐Ÿ”น Alternative Timezones ๐ŸŒ

  • Allow users to check different time zones (US, UK, AU, etc.).

๐Ÿ”น Streaming Platform Link ๐Ÿ”—

  • Display where the show is available (Netflix, Hulu, Apple TV+, etc.).

๐Ÿ”น Episode Information & Summary ๐Ÿ“

  • Include details like episode synopsis, duration, and creators.

๐Ÿ”น Save Searches for Quick Access ๐Ÿ”–

  • Store the last searched show in localStorage for convenience.

๐Ÿ”น UI Improvements ๐ŸŽจ

  • Add icons, animations, and smooth UI transitions.

โš ๏ธ Current Issues

โŒ Lack of Show Year/Specific Identification

  • No option to select between multiple results (e.g., Battlestar Galactica 2004 vs 1978).
  • Users might get incorrect results.
    Example Issue

โŒ Non-Specific Error Handling

  • Doesn't differentiate between "No new episodes" and "Show not found."

โŒ Potential Rate Limit Hits

  • Spamming "Convert Time" could get the API key suspended.
  • Implemented rate limiting to prevent abuse (1-minute and 10-minute cooldowns).

โณ Rate Limiting Details

To prevent excessive API calls, rate limiting is in place:

  • 24 hour limit: Too many requests in a 24 hour period will block further queries.
  • Users who exceed limits will see a message explaining the cooldown period.

๐Ÿ”— APIs Used

This project fetches TV show data from the TVMaze API:

  • Endpoint for show information:
    https://api.tvmaze.com/shows/INSERT_ID_HERE

๐Ÿ“ฆ Dependencies

Ensure you have the following installed in package.json:

"dependencies": {
  "axios": "^1.7.9",
  "cors": "^2.8.5",
  "dotenv": "^16.4.7",
  "express": "^4.21.2",
  "express-rate-limit": "^7.5.0",
  "node-fetch": "^3.3.2"
}

Install dependencies using:

npm install

๐Ÿ’ก Made with HTML, CSS, JavaScript and Node.js ๐ŸŽฌ

Hosted on Render

Thank you for taking the time to have a look at my first coding project!