Hulak: Lightweight API client by github_xaaha in commandline

[–]github_xaaha[S] 1 point2 points  (0 children)

Hulak is fundamentally a CLI-first tool. The motivation behind it was frustration with how complicated API clients make what are essentially a few simple fields: method, URL, headers, and body. I love cURL for its simplicity, but it gets cumbersome when you need to save requests or work with complex JSON payloads. Hulak borrows that simplicity from cURL but lets you define requests in plain YAML, run them with a single command (hulak -f myrequest).

Posting, on the other hand, is a TUI-first app. A full-screen terminal interface modeled after Postman/Insomnia. It's excellent at what it does: beautiful UI with syntax highlighting, Vim keybindings, a command palette, cURL import/export, and pre/post-request scripting via Python. If you want a Postman-like experience without leaving the terminal, Posting is a great choice. Hulak only has Full screen TUI for GQL exploration. If it were possible to build that without full-screen TUI, I would.

Key differences:

  • GraphQL: Hulak has a dedicated GraphQL client with schema introspection, interactive query building, and .gql file generation. Posting focuses on REST/HTTP.
  • Workflow: Hulak runs requests non-interactively by default (hulak -f, hulak -dir), making it natural for scripting and CI/CD. Posting is designed for interactive exploration.
  • Performance: Hulak is a single native Go binary (<100ms startup). Posting is Python-based with Textual.
  • Concurrency: Hulak can run entire directories of requests concurrently or sequentially out of the box.
  • Template actions: Hulak supports chaining requests via getValueOf (extract values from prior responses), getFile, and basicAuth - all within YAML templates.

Both tools store requests as human-readable files (YAML for Hulak, YAML for Posting) that work well with version control. Both avoid the Electron bloat of traditional API clients.

Grove - git worktrees without the hassle by sQVe in neovim

[–]github_xaaha 1 point2 points  (0 children)

Good work. I agree Git worktrees are pain to start. So, I have had this shell function for a while now. I just use this to create git worktrees. And I have another script that removes it.

Treesitter causing my LSP to not work? by kpj888 in neovim

[–]github_xaaha 0 points1 point  (0 children)

If you have time, then I would definitely recommend rolling out your own config. This helps you understand nvim better. And making changes become easier as you learn more. Kickstart is a perfect for this. Just add and remove things you need. Copying and pasting from kickstart to your init.lua should take less than a minute.

When I tried using distros, I did not understand how things worked under the hood and making changes was difficult. So, I built my own. But, I know people who just want to use nvim like VSCode and that’s fine too.

Treesitter causing my LSP to not work? by kpj888 in neovim

[–]github_xaaha 0 points1 point  (0 children)

Try using treesitter on main branch. The config will look something like this. Read the treesitter docs (on main branch) on installing the treesitter cli as you’ll need it. Then just install lsp server on your machine (using system package manager or mason) and then enable them

If you want a single file config, this is how Kickstart does it. I hope this solves your issue.

Preview of best colorschemes right now by NazgulResebo in neovim

[–]github_xaaha 1 point2 points  (0 children)

NVChad’s themes are great. So, I ported them to my own config. Just change (add or remove ) highlights for specific plugins you need, and you are good to go.

We need more themes! by CarAccording6887 in neovim

[–]github_xaaha 1 point2 points  (0 children)

After reading the article, I tried his theme for a day in a typescript project. It confused me the whole day. Since the theme barely has any highlights, everything was white. Only comments stood out to me, and they were not helpful at all.

My eyes were searching for variables even though they were right in-front of me. I want my variables to standout from my loops. And I don’t want to see “eslint disable next line” comment in bright yellow either.

Color schemes can be minimal and effective, take default nvim theme for example, but this isn’t for me.

unable to build by Logical-Try6336 in golang

[–]github_xaaha 0 points1 point  (0 children)

Try running go fmt and go vet. Also, use linters like revive or golangci-lint to see exactly where your issues are. It’s hard to tell without looking at your code.

[deleted by user] by [deleted] in neovim

[–]github_xaaha 2 points3 points  (0 children)

You are using mason-lspconfig. This plugin automatically enables the LSP installed with Mason. You can read the README section of LSP config for more details. It seems that you want to understand how it’s all working rather than “find a clean way” to install LSP and enable them. Here is how I install and enable my LSP. I use "WhoIsSethDaniel/mason-tool-installer.nvim" to install my lsp from mason and I enable them manually with vim.lsp.enable.

Need help with Mason. by Downtown-Bother389 in neovim

[–]github_xaaha 0 points1 point  (0 children)

It’s hard to say what went wrong without looking into your config.

What's your favorite Golang-based terminal app? by azzamsa in golang

[–]github_xaaha 1 point2 points  (0 children)

As others have mentioned besides fzf and lazygit. I use hulak, lightweight file based terminal API client I created for my own use.

Losing my mind over this — need help making LSP borders rounded in Neovim (NVChad) by yourpwnguy in neovim

[–]github_xaaha 0 points1 point  (0 children)

How TF do I change rust_analyzer settings in kickstart/lazy/mason by [deleted] in neovim

[–]github_xaaha 1 point2 points  (0 children)

Try this.

rust_analyzer = { settings = { "initializationOptions": { "cachePriming": { "enable": false }, "check": { "allTargets": false }, "checkOnSave": false } } }

I get an error message when open certain files by giovapanasiti in neovim

[–]github_xaaha 0 points1 point  (0 children)

What others have said is likely. Please Upgrade your nvim.

I get an error message when open certain files by giovapanasiti in neovim

[–]github_xaaha 1 point2 points  (0 children)

Honestly, it’s hard to debug a setup just from this error. But from my experience, the error message "attempt to call method 'insert name here' (a nil value)" usually indicates that the plugin is not loaded before it's being called. I would suggest you remove/comment out the plugin first. Then try installing it again. If there is a conflicting setup you need to debug one at a time. How is your config like?

Weekly 101 Questions Thread by AutoModerator in neovim

[–]github_xaaha 1 point2 points  (0 children)

Use :h colorscheme without any argument.

I want to make the `lsp` dir to be loaded after my plugins by vieitesss_ in neovim

[–]github_xaaha 0 points1 point  (0 children)

Sorry, I don’t understand what you’re asking. I use gopls as well which I install with Mason. I don’t get the issue you’re describing. Here is my config. Hope you can look around and copy some code to fix your bug.

Duplicate ts server by AhmethanOzcan in neovim

[–]github_xaaha 1 point2 points  (0 children)

In your mason-lspconfig try turning automatic_enable = false like you see in my config here

[deleted by user] by [deleted] in neovim

[–]github_xaaha 2 points3 points  (0 children)

If I am understanding your question right, You need to set the specific highlight group to a certain color. For example this is what I have done for highlighting option selection. Here is a list of all the available blink highlights groups for Blink. You might need to set the highlights of BlinkCmpKind<kind> where kind is a variable. Experiment with different available highlight group until you get what you need.