Hacker News

Top stories

Live mirror
30 storiesupdated just nowView source snapshot
  1. Human brain is two separate organs, Stanford Medicine-led research finds(stanford.edu ↗)
    24comments
  2. San Francisco Onion Futures Company(onionfutures.com ↗)
    52comments
  3. If math is more than proof, we need to better celebrate the rest of it(terrytao.wordpress.com ↗)
    7comments
  4. Android 17 is the first since 3.x to add new APIs without releasing to the AOSP(grapheneos.social ↗)
    368comments
  5. Typesafe-computer-use drives a Mac toward a goal for 1/50th of a cent per step(github.com/awlevin ↗)
    22comments
  6. GPT-6 Astra Solves a WWI German Radio Cipher(prinzai.com ↗)
    discuss
  7. SDCC – Small Device C Compiler(sourceforge.net ↗)
    15comments
  8. Science Is Open Software(jepedersen.dk ↗)
    25comments
  9. Cloudflare Quick Tunnels(cloudflare.com ↗)
    275comments
  10. Why building a Rust LSP is hard(rust-glancer.github.io ↗)
    24comments
  11. Saving another 100TB of RAM(cloudflare.com ↗)
    64comments
  12. NASA-IBM Lunar Foundation open-Source Geospatial AI Model(usra.edu ↗)
    1comments
  13. How to Write with an LLM(sockpuppet.org ↗)
    315comments
  14. How OpenAI Used Its Own LLMs to Design Its Jalapeño Chip(ieee.org ↗)
    77comments
  15. Ctenophores: Wonders of Biology(quantamagazine.org ↗)
    4comments
  16. Goroutine Leak Profiles(go.dev ↗)
    2comments
  17. You can run Git on object storage if you re-make packfiles(tigrisdata.com ↗)
    6comments
  18. The first new cat species discovered in 100 years(nationalgeographic.com ↗)
    90comments
  19. Show HN: Cactus Needle 3: 8-29MB automation models can match DeepSeek V4 Flash(cactuscompute.com ↗)
    87comments
  20. OpenJev(openjev.com ↗)
    257comments
  21. Photon-Emission-Guided Laser Fault Injection Enables RP2350 Secure Debug(ledger.com ↗)
    66comments
  22. Stepfun Step 5 Preview (LLM): On AA Pareto frontier(artificialanalysis.ai ↗)
    1comments
  23. Cache-to-Cache: Direct Semantic Communication Between LLMs (2025)(arxiv.org ↗)
    12comments
  24. The Farnese letter(simonklee.dk ↗)
    6comments
  25. Minimal Phone 2(minimalcompany.com ↗)
    211comments
  26. Xcode 27.1 Beta Release Notes(developer.apple.com ↗)
    95comments
  27. Cyclomatic Complexity in C#(ndepend.com ↗)
    18comments
  28. Inside ZCode: Silently uploading your Git history to the cloud(ferstar.org ↗)
    97comments
  29. Warez: The Infrastructure and Aesthetics of Piracy (2021)(archive.org ↗)
    49comments
  30. Google's Gemini AI hacked three companies in security test(bbc.co.uk ↗)
    discuss

Show HN: Tt – P2P terminal sharing over WebRTC

13 pointsby 8mo ago
2 comments
Made this to use my laptop terminal session on mobile without data going through a server.

tt start -p mypassword → get a URL (qrcode) → open in browser → enter password → connected.

Direct webrtc datachannel between your machine and browser.

Signaling server is a cloudflare worker, exchanges ~2KB of sdp/ice metadata then gets out of the way. Password never transmitted - argon2id derives 256-bit key locally on both ends. All terminal i/o gets nacl secretbox encryption before hitting the datachannel. double encrypted with dtls underneath but I wanted the relay to see nothing useful even during signaling.

go + pion/webrtc, about 14k loc. browser is xterm.js + webcrypto for argon2id. stun default, turn for symmetric nat.

my use case: checking on claude code runs from my phone when im not at my desk. hotel wifi, spotty mobile data. spent time on turn fallback, keepalive with reconnection, buffered writes during disconnects. pwa so it works from home screen and survives app switching. holds up ok on 3g.

Trade-offs: ice gathering takes 2-5s on connect. browser cant initiate, need cli on host. codes expire 24h.

Single binary, no deps. daemon mode for multiple sessions. tests with race detector, chaos tests for disconnects, network condition simulation. crypto and webrtc at ~72% coverage.

https://github.com/artpar/terminal-tunnel

ps: default relay runs on my cloudflare free tier so no guarantees. you can self-host the worker or run tt relay locally.

8mo agoHN ↗

That's super cool! Nice work.

I love all the 'free stuff' you get with WebRTC. My porch is just on the edge of WiFi/5G and WebRTC (or mosh) feels much nicer.

8mo agoHN ↗

Thanks! And wow, getting a kind word from a Pion maintainer means a lot. Your library made this whole thing possible. The datachannel API is incredibly clean to work with. Appreciate you and the team's work on it.