musica.com.pt / Digital Streetz — Internal tool — 2026
📣 Context
Musica.com.pt is an independent music newspaper run by a small team. Every day, press releases arrive by email from labels, promoters and festivals, most of them as HTML newsletters with images, attachments and the odd embargo, alongside news spotted on social media and in RSS feeds.
Turning one of them into a published article meant opening mailboxes, copying text, hunting down images and resizing them, doing the SEO by hand and then rebuilding everything in WordPress. It took hours per article, and nobody could see at a glance what was waiting, who was on what, or what was already done.
🏆 Outcomes
With everything in one place, the newsroom now produces an article in under an hour instead of several. It also changed how the team works together: assigning work is simple, and everyone can see what they are on and what is still in the queue.
🥋 My Role & the Team
A Digital Streetz project for musica.com.pt, which I direct as Director of Brand & Product. Redação was thought and designed around the newsroom's day, and thought as a tool to save hours of work by streamlining workflows.
🧭 Key Decisions
One inbox for every source, filtered by source, state and embargo.
The AI assistant, here on the local model: it suggests the fields and lists every fact with its source, for people to check.
The editor: people write the article, with SEO coverage alongside, here at 94.2 for a festival press release turned into a story.
🤖 AI as a Second Mind
AI is built into each step, but as an assistant beside the editor, never in their place. The decisions and the checks stay with people.
🔎 SEO With NLP
Behind the editor runs a local SEO service written in Python. Given five to twenty competing articles, found by hand or through Google's search API, it extracts their main text, analyses it with a Portuguese language model (spaCy: named entities, noun phrases and key terms), and scores every term by how many competitors cover it, how often and how early.
The editor then shows which terms are missing, covered or overused in our own article, next to an objective checklist for the title, length, keyword density, paragraph length and internal links. The service has its own automated tests, so the scoring can change without breaking the newsroom's day.
Competitors analysed with NLP: every term shows its type, how many competitors use it, and our count against the target range.
Feeds: 56 sources in folders, with stars and one click to the inbox.
The upscaler runs local models, so photos never leave the machine.
🧠 Takeaways