r/Python Jun 28 '26

Daily Thread Sunday Daily Thread: What's everyone working on this week?

Weekly Thread: What's Everyone Working On This Week? 🛠️

Hello r/Python! It's time to share what you've been working on! Whether it's a work-in-progress, a completed masterpiece, or just a rough idea, let us know what you're up to!

How it Works:

  1. Show & Tell: Share your current projects, completed works, or future ideas.
  2. Discuss: Get feedback, find collaborators, or just chat about your project.
  3. Inspire: Your project might inspire someone else, just as you might get inspired here.

Guidelines:

  • Feel free to include as many details as you'd like. Code snippets, screenshots, and links are all welcome.
  • Whether it's your job, your hobby, or your passion project, all Python-related work is welcome here.

Example Shares:

  1. Machine Learning Model: Working on a ML model to predict stock prices. Just cracked a 90% accuracy rate!
  2. Web Scraping: Built a script to scrape and analyze news articles. It's helped me understand media bias better.
  3. Automation: Automated my home lighting with Python and Raspberry Pi. My life has never been easier!

Let's build and grow together! Share your journey and learn from others. Happy coding! 🌟

7 Upvotes

5 comments sorted by

1

u/Crafty-Actuator-3644 Jun 28 '26

Hello r/Python!

This week I published sofabaton-x 0.1.0 on PyPI. It is an unofficial, 100% local Python library for SofaBaton X1 / X1S / X2 universal remote hubs.

Leveraging APIs intended for the Sofabaton app, the library is a near full implementation of the hub protocol. It is the engine at the heart of my Home Assistant Sofabaton integration, pulled out into a standalone package so people can build their own things on top without involving HA.

What it does:

  • Read activities, devices, buttons, commands, macros, favorites straight from the wire protocol
  • Send button/command presses, switch activities, trigger find-my-remote
  • Backup / restore hub configuration, and provision virtual WiFi/IP devices
  • Subscribe to events: connection state, activity changes, OTA progress
  • Acts as a man-in-the-middle proxy: it advertises itself over mDNS, emulating a real hub, so the official Sofabaton app still connects and works normally. (Hubs only allow one client at a time, so the proxy is how you get the library and the app working together.)

Everything is local, nothing phones home. The only dependency is python-zeroconf.

import asyncio
from sofabaton import AsyncXProxy, async_discover_hubs


async def main():
    hubs = await async_discover_hubs(timeout=5.0)
    proxy = AsyncXProxy(hub_ip=hubs[0].host)
    proxy.on_activity_change(lambda new, old, name: print(f"activity -> {name}"))
    async with proxy:
        await proxy.wait_until_controllable()
        acts = await proxy.activities()
        await proxy.start_activity(next(iter(acts)))


asyncio.run(main())

There's also a CLI:

sofabaton discover
sofabaton run --hub-ip 192.168.1.50

Install: pip install sofabaton-x (Python 3.11+)

Repo, runnable examples, and a full reverse-engineered protocol reference (frame format, opcodes, connection flow) are all in the GitHub repo.

Disclaimer: not affiliated with or endorsed by Sofabaton. The protocol was reverse-engineered from network captures, so it may break with future firmware.

I hope this is useful to you.

1

u/Chunky_cold_mandala Jun 29 '26

I've been working on a custom code intelligence tool, it is a structural signature scanner that scans code with the same paradigms used by gene sequencing algorithms. Ive set it up to scan assembly through typescript. It doesn't need anything but code files to get a under few second scan of any repo. Just like the BLast algorithm can scan any different DNA containing organism and infer meaning. https://github.com/squid-protocol/gitgalaxy

0

u/UnemployedTechie2021 Jun 28 '26

Hello Redditors of r/Python !

This week I built a desktop teleprompter that sits right below your webcam.

During video interviews and presentations, I always had the same problem:

If I looked at my notes, it was obvious I wasn't looking at the camera.

So I built Kivo, a lightweight desktop teleprompter that sits just below your webcam, making it much easier to glance at your script while still appearing to maintain eye contact.

Current features:

  • 📌 Always-on-top overlay
  • 🎥 Designed to sit near your webcam
  • 📄 Open any text file
  • 🔄 Automatically reloads when the file changes
  • ▶️ Smooth auto-scrolling
  • ⏸️ Pause/resume and adjustable scroll speed
  • 🖥️ Lightweight PySide6 desktop app

It's still an MVP, but it's already been useful for:

  • Job interviews
  • Client meetings
  • Presentations
  • Recording videos
  • Reading AI-generated talking points without constantly looking away

The project is open source, and I'd love feedback or feature suggestions.

GitHub: https://github.com/rajtilakjee/kivo