codeDude logo

codeDude

Programs

Basic

  • Operating System

    I use Arch Linux(BTW) for work and for my personal system. I like the rolling release philosophy. Arch Linux repositories supports a great number of packages to install and if it's not enough for you there is the AUR repositories with tons of more packages.

  • Terminal

    I've used different terminals; Konsole was the most used by me, but I left KDE Plasma, and I chose Kitty the different capabilities that it provides and because Kitty supports ligatures.

  • Shell

    I use zsh because of the plugins and themes that supports.

    The plugins that I used are:

    • git
    • git-extras
    • git-flow
    • docker
    • docker-compose
    • podman
    • node
    • npm
    • aws
    • pip
    • postgres
    • laravel
    • archlinux
    • pass
    • rails

    I use agnoster as theme

  • Window Manager

    I've used KDE Plasma for years, and for years it has been my favorite desktop manager. If I need to recommend a desktop manager, for sure it would be KDE Plasma. I usually installed a meta package with all the features of KDE until I realized that I actually didn't use all the features; I'm living in the terminal all the time. So I decided to move to a window manager, and I chose Sway Sway has the user experience of i3 but with Wayland. I'm still testing it, but I feel comfortable for now.

  • Text editor

    I'm proud to be a Neovim; actually, one of my projects that makes me proud is my Neovim configuration. I started to use vim years ago, but when I noticed that Neovim supports LSP I moved it to Neovim, so I changed my one file configuration to a modular Lua configuration and in the path I learned how to code in Lua.

  • Web browser

    Since I'm a web developer, I use different browsers in order to test the software that I build. For developing reasons, I use Google Chrome and Firefox in this order, because even when the developing experience is better in Firefox, Google Chrome still being the king for most of the clients, for my personal projects I use mainly Firefox, and for my personal use and consume of web stuff I prefer Librewolf, also I need to say that I use Lynix as terminal web browser when I read news or blogs

Utilities

  • Launcher

    I use Wofi to open my GLI programs and manage my clipboard using cliphist and I also I build a bash script to manage my password using pass with it.

  • Wayland bar

    I use Waybar with a nice gruvbox theme that I setup in css and different sway elements on it.

  • File Manager

    To be honest I mostly use my shell to manage my files but I also use Ranger some times.

  • Music

    I listen to music using MPD and ncmpcpp, and also when I want to listen to music on youtbue I used to use ytfzf but now it's out, so currently I use yt-x which is a CLI youtube client.

  • Video/Image

    For videos I use MPV, which allows me to play videos stored on my laptop but also videos from internet, actually I use mpv in my RSS reader, the mastodon client, and the youtube client. Also, I use it to watch images where it seems the MPV behavior with image formats is like video, so I needed to configure it so that if the file is an image, I pause the video, so to close the image, I just play the video.

  • Email

    NeoMutt is my choice as my email client; currently I use the Disroot email service. For setting up NeoMutt, I used Mutt Wizard which allowed me to set up multiple email accounts using my shell. Instead of building the setup from scratch, I needed to set up the GPG encription from myself.

  • RSS reader

    To avoid distraction in my life I leave most of the threads social medias to consume the news, so for that I use the old RSS technology and it's good, I can follow youtube account(where I can play the videos directly using mpv), the main news pages of my country and international, podcast(where I can play the them using mpv), peertube(I can play the videos using mpv) account, developing comunities, reddit boards, blogs, and job boards. The reader that I use for it it's Newsboat.

  • Mastodon client

    I know the great approach to using Mastodon is the website of Mastodon, and if you are new to Mastodon, I recommend using the website of your instance, but since I want to avoid the web browser, I use Tut, which is a TUI client for Mastodon.

  • Xmpp client

    Unfortunately, I haven't found an XMPP client that makes me feel comfortable. I used Profanity and Poezio, where Profanity been the winner for now, but it has some limitations, like it doesn't support MAM in MUC to remember the previous messages in groups. But why does profanity win? Well, Poezio is great; actually, I think it has the best TUI user experience, but it has the problem that OMEMO is a plugin instead of a feature in the client, and currently they don't apply an easy way to integrate the plugin.

  • Matrix client

    Even when I use Matrix a few times more than XMPP, I need to say that Iamb the greatest user experience for a message TUI application; it has a vim-like experience, and I love that so much that. And of course, using a TUI allows me to not use Electron.

  • IRC client

    Also, it's weird that I use this way to message partners or people in general but here exists a great Arch Linux comunity and GNU in the libera network so I use Weechat.

Software Developing

  • Text Editor

    Just like I mentioned, I use the Neovim editor, and the developing tools that I use in Neovim mostly are the LSP tools with LspConfig, Treesitter, and Mason. For snippets, I use LuaSnip. For the navigation I use Neotree, Telescope, and Harpoon; I use Lazy as a plugin manager, and of course I use Gruvbox as a color scheme.

  • Javascript/Typescript technologies

    I used so many different tools to develop in JavaScript and TypeScript. Mostly I use Node as a JavaScript developing environment to create Node-Express applications. I used Webpack with ReactJS to build vanilla ReactJS applications, but I also used Vite. I used NextJS developing tools in the developing environment to create apps in this framework. For the packages I used npm and yarn, but currently I use more pnpm to save resources.

  • Rails

    No fancy stuff here, I've used all the tools that the Rails framework provide.

  • Browser tools

    For simple web applications the developing tools that have most of the browser is enough, The Firefox tools are my favorites more the styling tools, but for React/NextJS applications I used React developing tools (profile, components), Redux developing tools.

  • Request testing

    I used Postman so many clients, but I prefer to use cURL do it.

  • Developing environment

    In most of the teams where I've worked, I use Docker to build and manage a developing environment. For personal projects I don't use Docker; I prefer to use Make or custom Bash scripts to set up my developing environments.

  • C/C++ environment

    I use CMake and Make, and I install third-party libraries with Git instead of using a package manager.

  • Python environment

    I use the python environment of the language, but also I used uv.

  • Version manager

    Of course I use Git.

  • Code hosting

    I use GitHub because there are tons of open source project there, but personally I use Codeberg because I don't like copilot, If somebody read my code I prefer them being a human.