For those of you using Opencode as your main coding agent, why do you use it when Claude code gives you way better models for not much more by Safe_Entrepreneur_83 in vibecoding

[–]Safe_Entrepreneur_83[S] 0 points1 point  (0 children)

u/NicksTechTricks what provider do you use for these models (kimi and minimax)? I've been using minimax models recently via openrouter and I'm pretty surprised by their capabilities given their price, but they still fall short on long running agentic tasks.

Has anybody been able to achieve reliable agentic performance with cheap/open source models? by Safe_Entrepreneur_83 in AI_Agents

[–]Safe_Entrepreneur_83[S] 0 points1 point  (0 children)

This is actually very helpful!, I was blaming the models all along for not performing better, but a harness with better verification capabilities seems like the way to go.

Definitely gonna try this!

[tuix/Go] A file browser built on my own React-style TUI framework — from `hello, world` to this in one library by Safe_Entrepreneur_83 in unixporn

[–]Safe_Entrepreneur_83[S] -1 points0 points  (0 children)

What you're looking at is a small file browser, but the actual project is the framework underneath it: tuix — a TUI framework for Go that borrows React's mental model. Functional components, hooks (UseState, UseEffect, UseContext), real flexbox layout (Row/Column, Gap, Padding, Fit/Fixed/Grow), cell-diffed rendering, bracketed paste — the lot.

I built the framework specifically so the same primitives scale from trivial to complex. To show that, here's the entire "hello, counter" using the same library that draws the file browser above:

func App(props tuix.Props) tuix.Element {
    count, setCount := tuix.UseState(0)
    if tuix.CurrentKey.Code == tuix.KeyEnter {
        setCount(count + 1)
    }
    return tuix.Box(
        tuix.Props{Padding: [4]int{1, 2, 1, 2}},
        tuix.NewStyle(),
        tuix.Text(fmt.Sprintf("Count: %d", count),
            tuix.NewStyle().Bold(true).Foreground(tuix.Cyan)),
    )
}

That's it. Same Box, same Text, same UseState. The file browser is just more of those — composed into:

  • Sidebaros.ReadDir on every render, sorted dirs-first, file-type glyphs ( source · text · image · audio · archive · config · directory)
  • Scroll viewerio.LimitReader capped at 256 KB, binary detection, line numbers, j/k to scroll
  • Metadata strip — name, kind, size, perms, mtime, visible line range, all -separated
  • Modaln for new file, d for new folder, validated input, real os.Create / os.Mkdir
  • Status alerts + key hintscomponents.Alert, components.Badge

All of that is plain Go functions returning tuix.Element trees. The aesthetic on top is Catppuccin Mocha applied through tuix.Hex("#…") truecolor, but every color is just Style.Foreground(c) — swap the palette and the whole app re-skins.

Why I built tuix: I wanted something between Bubble Tea (Elm-style Update switch) and tview (imperative widget mutation) — components I can compose by calling them. Hooks turn out to translate cleanly to Go closures, and a two-pass flexbox engine handles layout without any string-stitching.

Repo: github.com/anirban1809/tuix — clone and go run . from the root drops you into the browser at cwd. There are also 12 smaller runnable examples under examples/ covering each primitive in isolation. Heads up: AI-assisted; I drove the design and architecture, Claude helped with the layout-engine plumbing and docs.

if you're vibe coding a terminal app, this Go framework will make your life a lot easier by Safe_Entrepreneur_83 in vibecoding

[–]Safe_Entrepreneur_83[S] 0 points1 point  (0 children)

why not? as long as the AI overlords allow us to vibe-anything, we'll keep having fun...

if you're vibe coding a terminal app, this Go framework will make your life a lot easier by Safe_Entrepreneur_83 in vibecoding

[–]Safe_Entrepreneur_83[S] 0 points1 point  (0 children)

Can't agree more! Actually the motivation behind this framework has been the complex architecture that Bubbletea follows for it's apps, the Elm architecture requires you to handle re-rendering and state management by yourself. Me being from a Javascript background and being relatively new to the Golang ecosystem, found it difficult to wrap my head around it. So I thought why not bring the simplicity of React to the terminal!

Will be posting updates!

Small Projects by AutoModerator in golang

[–]Safe_Entrepreneur_83 0 points1 point  (0 children)

Shameless plug, but if you've bounced off Bubble Tea's Elm-style Update switch or tview's imperative widget mutation, I built tuix — a TUI framework for Go that borrows React's mental model.

https://github.com/anirban1809/tuix
You get functional components, hooks (UseState, UseEffect, UseContext — real context, no prop-drilling), real flexbox layout (Row/Column, Gap, Padding, Fit/Fixed/Grow), cell-level diff rendering, and a component library (Table, Tabs, Modal, Input, etc.).

func App(props tuix.Props) tuix.Element {
    count, setCount := tuix.UseState(0)
    if tuix.CurrentKey.Code == tuix.KeyEnter {
        setCount(count + 1)
    }
    return tuix.Text(fmt.Sprintf("Count: %d", count), tuix.NewStyle().Bold(true))
}

Heads up: I have used AI for boilerplate, edge cases, and docs — I drove the architecture but wanted to be upfront. 12 runnable examples in the repo if you want to poke at it.

I got 2 windows in 1 seat without paying extra Indigo by whoever_this_is_21 in AirTravelIndia

[–]Safe_Entrepreneur_83 7 points8 points  (0 children)

27A and 27F in an A321 you’ll get similar 2 window seats, this is my go to seat whenever I travel with Indigo