I started SumIt after completing Postman's API Fundamentals training. A project-based exercise introduced me to building a text summarizer with an API, and I used that starting point to build a web app I could understand from the interface through to the model request.
- Built with
- JavaScript, Node.js, Express, Hugging Face
- Focus
- API integration, interface feedback, testing
From input to summary
You can paste between 200 and 3,000 characters into SumIt. The interface counts characters as you type, and an Express endpoint checks the input before sending it to Hugging Face's BART model. When the summary comes back, you can copy it.
Making the interaction clear
Getting a summary back was only part of the work. I added loading and error states so you can tell what is happening, along with clear and copy controls. I also chose to make one model request per summary. The input limit keeps that approach practical without adding document chunking.
I wrote tests for the input boundaries and the request sent to Hugging Face. The tests use a mock response, so they can check the request without calling the model or using an API token.
What I learned
Getting the API call to work was just the start. I also had to handle bad input, show what was happening while someone waited, and make errors clear when a summary couldn't be returned.