SYS://JOSEABARCA.COM ONLINE --:--:--
Jose Abarca

> whoami_

JOSE ABARCA

Data Analyst // SQL · Python · Power BI // Data Pipelines & Automation

MI ASISTENTE

REAL-TIME VOICE AI COMPANION · LANGUAGE COACH · WINDOWS

A desktop voice assistant I talk to through my earbuds. It streams audio to the Gemini Live API (or the OpenAI Realtime API) over WebSockets, answers in a natural voice and can be interrupted mid-sentence. Its listener modes stay silent during meetings and only whisper a correction when someone says something false, a neutral counterpoint to sweeping opinions, or a useful fact, checking Wikipedia before correcting.

It's also the perfect partner to learn English, Spanish, Portuguese or Japanese: it talks with you in the language, corrects your mistakes on the spot and saves them so you can review them later.

LIVE_FEED // mi-asistente.exe REC
Mi Asistente desktop app in dark mode, in fact-checker plus useful-facts mode, correcting a false claim after a Wikipedia lookup
4languages to learn
30selectable voices
11memory folders
7personality modes

> capabilities

  • Real-time speech-to-speech with server-side voice detection, barge-in and automatic session resumption
  • Language-coach modes for English, Spanish, Portuguese and Japanese that correct mistakes as you speak
  • Fact-checker modes with Wikipedia lookups, and Google Search when the API plan allows it
  • Long-term memory in SQLite organized in folders (agenda, music, learning…), searchable by voice and in the app
  • Editable personalities as Markdown profiles, 30 voices, sleep mode and global hotkeys
  • Warm light/dark desktop UI built with customtkinter
  • Scripted server-event tests for interruptions, tool calls and reconnects, all offline with Pytest

> stack

PythonasyncioGemini Live APIOpenAI Realtime API WebSocketsSQLiteNumPysounddevice customtkinterPytest
Download for Windows GitHub Repo

> free demo // windows 10-11 // 41 MB zip // unzip and run Mi Asistente.exe. Use earbuds. If Windows says "protected your PC", click More info → Run anyway.

HAGOTEK

AV & SECURITY INTEGRATOR · CHILE · CO-OWNER & SOLE DEVELOPER

Hagotek is a Chilean company that designs and installs audio, video, electronic security and smart lighting systems across the country. I'm one of its co-owners, and I built its two pieces of software on my own: the public website and the ERP the company runs on.

02.A Website

A bilingual Spanish / English site with a page for each service and a direct WhatsApp line for quotes. Static, built with Astro, deployed on Netlify and with a sitemap for search engines.

LIVE_FEED // hagotek.cl ONLINE
Hagotek website home page: a conference room with a video wall behind the headline 'Complete engineering solutions in audio, video, security, and smart lighting'
AstroNetlifyi18n ES / ENSitemap

02.B In-house ERP

A private web app that covers the whole commercial cycle: a quote becomes a sales order, the order produces dispatch notes and invoices, and every tax document is issued electronically to Chile's tax service (SII). The team uses it every day. Its data is real client information, so instead of screenshots, this is how documents flow through it:

3SII e-document types
8business modules
5user roles
24data models

> capabilities

  • Quotes and sales orders with per-line cost and margin, and prices in CLP or USD per product
  • Electronic invoices, dispatch notes and credit notes issued to the SII through the Soluciones Market DTE engine, with RUTs and SII field limits validated before emitting
  • Dispatch notes that discount stock, purchase orders with goods receipt, and low-stock alerts
  • Projects with tasks and attachments, plus a draw.io-style editor for AV and network connectivity diagrams
  • Expenses by cost center, VAT and profitability reports, and a dashboard with sales rankings
  • Five roles with server-side permission checks, account lockout after 5 failed logins and encrypted backups
  • A staging copy of production that blocks real tax documents, for testing changes safely

> stack

Next.jsTypeScriptReactPostgreSQLPrisma NextAuthTailwind CSSshadcn/uiZodReact Flow jsPDFGitHub ActionsVercel
PRIVATE REPO // CLIENT DATA STAYS PRIVATE

02.C Tender radar

Chile's public institutions buy through Mercado Público, the state procurement platform. Paid platforms sell tender alerts as a monthly subscription; this one is built into the ERP and tuned to exactly what Hagotek installs. Every morning a GitHub Actions job pulls the open tenders, scores the ones it hasn't seen yet and keeps the relevant ones. Unlike the rest of the ERP, this module only works with public data, so it gets a real screenshot:

LIVE_FEED // tenders DAILY SYNC
Hagotek ERP tenders page: open Mercado Público tenders ranked by score, each with closing date, title, buyer and region, category tags such as CCTV / seguridad and Con instalación, and the status Nueva

> tap / click to open full size

> how it decides

  • Weighted keyword rules for five categories (audio, audiovisual, CCTV / security, access control, automation); a match in the title or description weighs more than one buried in the item list
  • The UNSPSC product codes of each item add to the score
  • Filters out tenders that only match by shared words (security guards, medical hearing aids…) and one-off event rentals
  • Flags the ones that include on-site installation, not just shipping boxes
  • Keeps tracking saved tenders after they close, to see whether they were awarded or declared void
  • Emails a morning digest of the new matches through Resend, with HTML built to render in Outlook
  • In the ERP: open / following / discarded views, category and installation filters, search, and a status for each tender from New to Bidding to Won or Lost
  • Deliberately simple: hand-tuned rules refined by checking what gets in and what doesn't, not a model
Mercado Público APIGitHub Actions cronRegex scoringUNSPSC ResendPrisma

BONUS

Estadio Nacional de Chile

If you got this far, then you deserve a picture of the Chilean National Stadium where the most amazing football team plays: Universidad de Chile 💙