Skip to content

Instantly share code, notes, and snippets.

View Ara-O's full-sized avatar
🧠

Ara Oladipo Ara-O

🧠
View GitHub Profile
@joseph0x45
joseph0x45 / index.md
Last active June 9, 2024 11:05
How I develop my Go apps in containers using Neovim and docker compose

Hello reader. I have been trying to replicate the dev container experience that I had when I was still using vscode (I use neovim now btw) but it wasn't quite that, I tried some neovim plugins but didn't really like it. But I'm happy to tell you that I finally got something, just for Golang apps, but we are getting there. Let's quickly see how I achieved this.

Required dependencies

You will need docker and docker compose installed on your system. I use Manjaro so for me installing these two was as easy as running

pamac install docker docker-compose

Once you have these two installed you will need a text editor, I will be using neovim. What I mean by the "dev container experience" is to be able to have my code on my host, but run and debug it inside a container so that way my computer doesn't have any dependencies and I can easily reproduce the dev environment on another PC without having a "it worked on that other machine" moment. As exemple we will build a simple Go app that returns "Hello world

@ayoubzulfiqar
ayoubzulfiqar / folder_structure.md
Created September 5, 2023 06:12
The Folder Structure for Every Golang Project

Go - The Ultimate Folder Structure

Organizing your Go (Golang) project's folder structure can help improve code readability, maintainability, and scalability. While there is no one-size-fits-all structure, here's a common folder structure for a Go project:

project-root/
    β”œβ”€β”€ cmd/
    β”‚   β”œβ”€β”€ your-app-name/
    β”‚   β”‚   β”œβ”€β”€ main.go         # Application entry point
    β”‚   β”‚   └── ...             # Other application-specific files
@BigAlRender
BigAlRender / render-build.sh
Last active July 31, 2025 00:10
Install Chrome on Render Native Environment
#!/usr/bin/env bash
# exit on error
set -o errexit
STORAGE_DIR=/opt/render/project/.render
if [[ ! -d $STORAGE_DIR/chrome ]]; then
echo "...Downloading Chrome"
mkdir -p $STORAGE_DIR/chrome
cd $STORAGE_DIR/chrome