Join the DZone community and get the full member experience.
Join For Free
These days, AI is everywhere, but most people at work are still stuck using a mix of disconnected tools. Some folks use a chatbot here, someone else copies text into a summarizer there, and there's always a messy process to get meeting recordings transcribed or translated. It's kind of a headache.
I kept hearing the same complaints from my team: "Why can't all of this just be in one place?"
So I set out to build it -- a single web portal where anyone can upload documents, ask questions, get summaries, transcribe meetings, translate files, and even pull tables out of PDFs. It's not flashy; it's just practical and solves real problems we face every day.
In this article, I'll show you how I put the whole thing together, why I picked certain technologies, and how you can run it yourself. Everything is open source. No AI jargon required.
What This Portal Can Do
Here's what you'll get -- all in one website, one login, one simple UI:
No more bouncing between apps. Just upload, pick a feature, and get what you need.
Why I Built It
I've worked in data and AI for years, but when it comes to day-to-day work, most solutions felt disconnected. Employees waste time moving files between tools, or don't bother with AI because it's "one more app to learn." I wanted something that anyone could use -- no training, no plugins, no fuss.
If you're a developer, manager, or even a business user who's ever thought, "AI is cool, but I just want it to save me time," this portal is for you.
How It All Fits Together
I wanted to keep things simple but strong under the hood. Here's the big picture:
Ever wish you could just ask a big PDF or report a question and get a direct answer -- without reading the whole thing? That's what "Chat with Data" does. You upload a document, ask a question in plain English, and get the answer pulled right from your file.
This saves time for everyone -- legal, finance, compliance, or anyone who deals with lengthy docs.
How It Works
The portal splits and embeds your document, stores it in Pinecone, and uses Azure OpenAI to answer any question you type.
Backend: FastAPI Endpoint for Uploading Documents
Let's face it -- most business documents are too long. The summarization feature lets anyone upload a big file and get a short, focused summary. You can even add a custom prompt like "summarize key risks for compliance" or "give me the main action items."
This is a game-changer for managers, analysts, or anyone who needs to make decisions quickly.
How It Works
Your doc is uploaded, the backend sends it (plus your prompt) to Azure OpenAI, and you get a summary back -- no need to read the whole thing.
We've all sat through meetings or calls that get recorded and then... nobody wants to listen back. With this feature, just upload your audio or video file and get a written transcript -- fast.
It helps teams document decisions, catch up quickly, and make meetings more inclusive.
How It Works
Your audio is uploaded, the backend uses Whisper to transcribe everything, and you get the full text back in your browser.
Global teams need to work across languages, and translating documents is usually slow and manual. This feature lets you upload any file, pick your target language, and get a translated version -- keeping the format as close as possible.
This is super useful for HR, compliance, or anyone working with partners abroad.
How It Works
Upload a doc, pick your language, and the backend calls Azure Translator. You get the translated text right away.
Extracting tables and key-value data from PDFs and forms is usually a nightmare. This feature does it for you.
It's great for finance teams, analysts, or anyone who needs to pull structured data for reporting, spreadsheets, or automation.
How It Works
Upload a PDF (or scanned doc), pick whether you want JSON or Excel, and the portal uses Azure Document Intelligence to pull out tables and key-value pairs. Download and you're done.
You'll need API keys for Azure and Pinecone, but setup is explained in the repo.
Wrapping Up
I built this portal because I was tired of bouncing between tools and wanted something my team would actually use. If you feel the same way, or just want to see what's possible when you connect modern AI tools together, give it a try.
I'd love to hear your thoughts or improvements. Feel free to fork the repo, open an issue, or just let me know how you're using it.