DEV Community

Sheriff Olalekan Mudasir
Sheriff Olalekan Mudasir

Posted on

The Terminal Used to Scare Me. Then I Built This Cinematic PDF Audio Reader with Copilot CLI

GitHub Copilot CLI Challenge Submission

A split-screen banner showing the PDF Audio Reader web interface on a laptop with a cinematic media player overlay on the left, and a dark terminal window on the right featuring the GitHub Copilot CLI being used to configure Vercel headers.
This is a submission for the GitHub Copilot CLI Challenge

What I Built

I built PDF Audio Reader, a cinematic web application that transforms static, dense PDF documents into an interactive audio experience.

As a final-year Architecture student, I spend my days (and nights) buried in deep research—from case studies to complex structural guides. I needed a way to "read" while moving between the studio and site visits. Existing solution are often behind paywalls and usually does bad job with the extraction. PDF Audio Reader doesn't just read text; it uses a "Media Player" philosophy, featuring word-level highlighting, time estimation, and a sleek HUD interface that makes academic reading feel like watching a movie.

Demo

https://youtu.be/zIShnArZIhU

My Experience with GitHub Copilot CLI

To be honest, the terminal used to be a scary place for me. While I’m comfortable with Python and Django, the command line always felt like a "look but don't touch" zone—one wrong string of characters and everything breaks. However, building this project with the GitHub Copilot CLI completely changed that narrative.

From "Black Box" to Fluent Conversation

I used the CLI as my "Terminal Translator." Instead of Tab-hunting through documentation, I could simply ask for what I needed in plain English.

The turning point was handling the Cross-Origin-Embedder-Policy (COEP). My app kept breaking on Vercel because of strict security headers blocking the PDF.js library. I turned to the terminal and asked:

Fix the Cross-Origin-Embedder-Policy (COEP) breaking the deployment on vercel
Enter fullscreen mode Exit fullscreen mode

To my surprise, the CLI was incredibly intuitive and fluent. It didn’t fix the bug; it explained why the headers were clashing. It felt less like I was typing into a void and more like I was collaborating with a senior dev who spoke "Human" as well as "Bash."

Impact on Development

Confidence Boost: I stopped fear-clicking through my directories and started using the CLI to manage my entire Vercel deployment and Git workflow.

Speed: I scaffolded the pdf-processor.js logic—specifically the sentence tokenization—by asking the CLI for the most efficient regex patterns to handle PDF artifacts.

Learning on the Fly: It turned the terminal from a daunting utility into a learning tool.

The CLI took the friction out of the "boring" parts of development (configuration and deployment), allowing me to focus on the "fun" parts—designing a cinematic experience for users.

Top comments (1)

Collapse
 
notfritos profile image
Ryan Lay

I appreciate the emphasis on cinematic experiences XD