Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

[BUG] Zip download missing extension, silent fail on empty

Open Beginner friendly
#523 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
2/5
Estimated time
1-3 hours
Newbie friendliness
78/100
Issue type
Bug
Clarity
Clearly specified
Activity status
Quiet
Tech stack
typescript
Domain
frontend

Research direction

Start in src/context/filterContext.tsx, checking lines 150–164 for fetch failure handling and line 180 for the download filename. Reproduce the Catalogue download with multiple papers, including an all-fail network case, and verify the filename has a .zip extension, failures produce an error toast, and partial success reports the downloaded count.

Written by the indexing model from the issue text.

Description

Describe the bug
Zip download lacks file extension and shows success even when download fails entirely.

To Reproduce

  1. Go to Catalogue page
  2. Select 2+ papers
  3. Click "Download Selected"
  4. (Optional: throttle network in DevTools to simulate all requests failing)
  5. File downloads with no .zip extension
  6. If all fetches failed, empty ZIP is created but success toast still appears

Expected behavior

  • Downloaded file should have .zip extension (e.g., Physics.zip)
  • If all paper fetches fail, show error toast instead of success
  • Success message should show count: "Downloaded 3 of 5 papers"

Screenshots
N/A (UX issue — filename shows Physics not Physics.zip in downloads folder)

Desktop

  • OS: Any
  • Browser: Chrome/Firefox/Safari
  • Issue occurs on all browsers

Root cause
File: src/context/filterContext.tsx

  • Line 180: a.download = getDownloadName(...) missing .zip
  • Lines 150–164: Fetch errors silently caught, no success counter
  • Line 186: Always shows success toast regardless of download state

Additional context
Low severity — UX friction, not data loss. User gets empty ZIP but can retry.

Dominant language
TypeScript
Stars
21
Forks
64
Avg merge
10m
Merged PRs (30d)
5

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from CodeChefVIT/papers-codechef

All issues in CodeChefVIT/papers-codechef

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.