Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
bc44443
Refactor GitHub Actions workflow for PR previews and enhance Jekyll c…
devnomadic Jun 10, 2025
567f1c8
Fix preview workflow to bypass GitHub Pages environment protection
devnomadic Jun 10, 2025
be86cfc
Refactor GitHub Actions workflow for PR previews: rename deploy-previ…
devnomadic Jun 10, 2025
0f78590
Update permissions in GitHub Actions workflow to restrict contents ac…
devnomadic Jun 10, 2025
0a600e3
Fix navigation links in Jekyll configuration to include trailing slas…
devnomadic Jun 10, 2025
9bce039
Add header and navigation styling for improved layout and responsiveness
devnomadic Jun 10, 2025
5d4655c
Refactor header and navigation styles for improved layout and respons…
devnomadic Jun 10, 2025
f12a9a5
Refactor navigation styles for improved layout and responsiveness
devnomadic Jun 10, 2025
5d29071
Refactor navigation markup for debugging and testing purposes
devnomadic Jun 10, 2025
1d4e7fa
Refactor header navigation for improved structure and styling
devnomadic Jun 10, 2025
58e7ccc
Refactor header markup for improved structure and readability
devnomadic Jun 10, 2025
870fb01
Refactor header structure and add dynamic navigation for improved usa…
devnomadic Jun 10, 2025
c5516a9
Add header structure and navigation for improved layout and accessibi…
devnomadic Jun 10, 2025
c4b795b
Refactor site header markup for improved structure and readability
devnomadic Jun 10, 2025
027d5ea
Remove unnecessary border from header navigation for improved styling
devnomadic Jun 10, 2025
f58a3a6
Update header links color for improved visibility and enhance archive…
devnomadic Jun 10, 2025
ef38cba
Enhance archive and tags styling with improved layout, hover effects,…
devnomadic Jun 10, 2025
acb595f
Update archive and tags styles for improved consistency and visual ap…
devnomadic Jun 10, 2025
91e4b98
Simplify tags.md structure and styling to match home page exactly
devnomadic Jun 10, 2025
e57be40
Override theme's green tag colors with gray colors to match design
devnomadic Jun 10, 2025
8543231
Remove inline styles from tags.md and delegate styling to custom.css …
devnomadic Jun 10, 2025
0a49785
Restore original green theme colors for tags as requested
devnomadic Jun 10, 2025
df207e6
Update sitemap URL in robots.txt to point to the correct domain
devnomadic Jun 12, 2025
6343615
Convert all tags to camelCase array format: tags: [tagA, tagB]
devnomadic Jun 12, 2025
05cc5e5
Update URL in _config.yml to point to the correct domain
devnomadic Jun 12, 2025
2ff1766
Add changelog section to all blog posts with initial publication date…
devnomadic Jun 15, 2025
2a1b038
Rename welcome post file from welcome-to-devnomadic.md to devnomadic.md
devnomadic Jun 15, 2025
df5eecd
Update project configuration and enhance blog content
devnomadic Jun 15, 2025
ab5c994
Update description in _config.yml and modify post title for consistency
devnomadic Jun 15, 2025
dbc2eb3
Fix description and bio formatting in _config.yml for consistency
devnomadic Jun 15, 2025
842a72e
Fix formatting of description and bio in _config.yml for consistency
devnomadic Jun 15, 2025
eb67977
Fix HTML entity formatting in description and bio in _config.yml for …
devnomadic Jun 15, 2025
9ebca6a
Update description and bio formatting in _config.yml for consistency
devnomadic Jun 22, 2025
94d376b
Fix formatting of architecture diagram in 2025-06-10-albatross.md for…
devnomadic Jun 22, 2025
fba0278
Enhance Albatross documentation with recent updates, including static…
devnomadic Jul 19, 2025
6562896
Add jekyll-mermaid gem and update architecture diagrams in Albatross …
devnomadic Jul 20, 2025
d1e3e02
Fix Mermaid chart rendering
devnomadic Jul 20, 2025
9a53070
Improve Mermaid.js initialization and add test page
devnomadic Jul 20, 2025
2a2f308
Final Mermaid.js fixes with multiple approaches
devnomadic Jul 20, 2025
0ff8df8
Simplify Mermaid approach with direct div method
devnomadic Jul 20, 2025
ae5aa96
Integrate jekyll-mermaid gem and update Mermaid.js configuration for …
devnomadic Jul 20, 2025
bf8b2a8
feat: Initial commit of Albatross - a secure IP abuse checker using B…
devnomadic Jul 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
45 changes: 27 additions & 18 deletions .github/workflows/preview.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,36 +9,45 @@ on:
- closed

permissions:
contents: write
pull-requests: write
contents: read
pages: write
id-token: write

concurrency: preview-${{ github.ref }}
concurrency:
group: "pr-preview"
cancel-in-progress: false

jobs:
deploy-preview:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
ruby-version: '3.1'
bundler-cache: true

- name: Build Jekyll site
if: github.event.action != 'closed'
run: |
# Remove CNAME file for previews to avoid routing conflicts
rm -f CNAME
bundle exec jekyll build

- name: Build with Jekyll
run: bundle exec jekyll build
env:
JEKYLL_ENV: production

- name: Deploy preview
uses: rossjrw/pr-preview-action@v1
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
source-dir: ./_site
preview-branch: gh-pages
umbrella-dir: pr-preview
path: ./_site

deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4

1 change: 1 addition & 0 deletions Gemfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ gem 'jekyll-dash', '~> 2.0'
gem 'jekyll-feed', '~> 0.17'
gem 'jekyll-sitemap', '~> 1.4'
gem 'jekyll-paginate', '~> 1.1'
gem 'jekyll-mermaid'

# Windows and JRuby does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library.
Expand Down
19 changes: 16 additions & 3 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
theme: jekyll-dash
title: devnomadic
description: Software engineer and digital nomad currently exploring the world. I write about remote work, travel, and building software from anywhere.
url: "https://devnomadic.github.io"
description: "<span style='color:#e74c3c'>&quot;</span><span style='color:#3498db'>Dev</span><span style='color:#f39c12'>&#40;</span><span style='color:#3498db'>Ops</span><span style='color:#e74c3c'>&#124;</span><span style='color:#3498db'>SecOps</span><span style='color:#f39c12'>&#41;</span><span style='color:#9b59b6'>&#63;</span><span style='color:#e74c3c'>&#124;</span><span style='color:#27ae60'>SRE</span><span style='color:#e74c3c'>&quot;</span> Engineer and digital nomad currently exploring the world. I write about remote work, travel, and building software from anywhere."
url: "https://devnomadic.com"
baseurl: ""

# Jekyll pagination (required for home page)
Expand All @@ -12,7 +12,7 @@ author:
name: devnomadic
github: devnomadic
email: drew@devnomadic.com
bio: "Software engineer and digital nomad currently exploring the world. I write about remote work, travel, and building software from anywhere."
bio: "<span style='color:#e74c3c'>&quot;</span><span style='color:#3498db'>Dev</span><span style='color:#f39c12'>&#40;</span><span style='color:#3498db'>Ops</span><span style='color:#e74c3c'>&#124;</span><span style='color:#3498db'>SecOps</span><span style='color:#f39c12'>&#41;</span><span style='color:#9b59b6'>&#63;</span><span style='color:#e74c3c'>&#124;</span><span style='color:#27ae60'>SRE</span><span style='color:#e74c3c'>&quot;</span> Engineer and digital nomad currently exploring the world. I write about remote work, travel, and building software from anywhere."
avatar: "/assets/avatar.gif"

# Build settings
Expand All @@ -21,13 +21,26 @@ plugins:
- jekyll-feed
- jekyll-sitemap
- jekyll-paginate
- jekyll-mermaid

# Mermaid configuration
mermaid:
src: 'https://unpkg.com/mermaid@10.6.1/dist/mermaid.min.js'

# Theme settings
dash:
date_format: "%b %-d, %Y"
show_author: true
avatar_source: "local"
avatar_path: "/assets/avatar.gif"
show_nav: true
nav_links:
- url: /about/
title: About
- url: /archive/
title: Archive
- url: /tags/
title: Tags
social_links:
- url: https://github.com/devnomadic
icon: github
Expand Down
20 changes: 0 additions & 20 deletions _config_preview.yml

This file was deleted.

1 change: 0 additions & 1 deletion _includes/head-custom.html
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,3 @@
background-color: #e8eaed;
color: #202124;
}
</style>
20 changes: 20 additions & 0 deletions _includes/header.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
<div class="site-header">
<div class="wrapper">
<a class="site-title" rel="author" href="{{ "/" | relative_url }}">{{ site.title | escape }}<b class="command_prompt"></b><b class="blinking_cursor">_</b></a>
<span class="social_links">
{% for link in site.dash.social_links %}
{% if link.fa == true %}
<a class="color-{{ link.color }}-hover" href="{{ link.url }}"{% if link.rel %} rel="{{ link.rel }}"{% endif %}><i class="fa fa-{{ link.icon }}"></i></a>
{% else %}
<a class="color-{{ link.color }}-hover" href="{{ link.url }}"{% if link.rel %} rel="{{ link.rel }}"{% endif %}><i class="fab fa-{{ link.icon }}"></i></a>
{% endif %}
{% endfor %}
</span>
<br style="clear: both;">
<div style="margin-top: 0.5em; padding-top: 0.75em;">
<a href="/about/" style="display: inline-block; margin-right: 2em; color: #de5684; text-decoration: none; font-size: 1em;">About</a>
<a href="/archive/" style="display: inline-block; margin-right: 2em; color: #de5684; text-decoration: none; font-size: 1em;">Archive</a>
<a href="/tags/" style="display: inline-block; margin-right: 2em; color: #de5684; text-decoration: none; font-size: 1em;">Tags</a>
</div>
</div>
</div>
Empty file added _includes/mermaid.html
Empty file.
8 changes: 8 additions & 0 deletions _layouts/page.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
---
layout: default
---

<div class="page">
<h1 class="page-title">{{ page.title }}</h1>
{{ content }}
</div>
54 changes: 53 additions & 1 deletion _posts/2025-06-08-remote-development-environment.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,29 @@ layout: post
title: "Setting Up the Perfect Remote Development Environment"
description: "Essential tools and configurations for productive remote coding"
date: 2025-06-08
tags: remote-work development tools productivity vscode docker
tags: [remoteWork, development, tools, productivity, vsCode, docker]
---

# Creating Your Remote Development Paradise

## 📝 TL;DR

Complete guide to **setting up a productive remote development environment** for digital nomads:

**Hardware Essentials:**
- 💻 **MacBook Pro M3** (16GB+ RAM) + portable monitor
- ⌨️ **Compact mechanical keyboard** + wireless mouse

**Software Stack:**
- 🔧 **VS Code** with Remote Development extensions
- 🐳 **Docker** for consistent environments
- ☁️ **Cloud services** (GitHub Codespaces, AWS Cloud9)
- 🔒 **VPN** + secure backup solutions

**Key Tips:** Prioritize battery life, internet reliability, and portable ergonomics!

---

Working remotely as a developer requires a carefully crafted environment that enables productivity from anywhere in the world. Here's my guide to setting up the perfect remote development setup.

## Essential Hardware
Expand All @@ -22,6 +40,7 @@ Your laptop is your lifeline. I recommend:
- **Portable monitor** - For dual-screen setups in coworking spaces
- **Mechanical keyboard** - Compact 60% or TKL for travel
- **Wireless mouse** - Better ergonomics than trackpad for long sessions
- **Physical Notebook** - Always handy to scribble thoughts and diagrams. I prefer an A5 Moleskine (Graph Paper)

## Software Stack

Expand Down Expand Up @@ -104,6 +123,34 @@ git push --all origin # All branches to remote
- Record video explanations for complex topics
- Use collaborative coding tools (Live Share, CodeSandbox)

### Laptop Considerations for Remote Work

#### Performance vs Portability Balance
- **Weight matters**: Aim for under 3 lbs if constantly traveling
- **Battery life**: Minimum 8 hours for reliable all-day work
- **Processing power**: M-series MacBooks or AMD Ryzen for efficiency

#### Screen Quality
- **High resolution**: 1440p minimum for code readability
- **Color accuracy**: Important for UI/design work
- **Brightness**: 400+ nits for outdoor/bright environment work

#### Port Selection
- **USB-C/Thunderbolt**: Future-proof and versatile
- **HDMI port**: Direct external monitor connection
- **SD card slot**: Useful for photographers/content creators
- **Headphone jack**: Backup for wireless audio issues

#### Keyboard & Trackpad
- **Key travel**: Sufficient feedback for long typing sessions
- **Trackpad size**: Large enough for gesture navigation
- **Backlit keys**: Essential for low-light environments

#### Repairability & Support
- **Global warranty**: Apple Care+ or manufacturer support worldwide
- **Parts availability**: Consider common models in your travel regions
- **Local service centers**: Research coverage in frequent destinations

## Location-Specific Tips

### Coworking Spaces
Expand All @@ -127,4 +174,9 @@ The perfect remote development environment is personal and evolves with your nee

The key is having redundancy in everything - internet, power, workspace options. This ensures you can always deliver quality work regardless of where you are in the world.

## 📋 Changelog

- **2025-06-08:** Initial publication
- **2025-06-15:** Updated tag format and added changelog

---
Original file line number Diff line number Diff line change
@@ -1,13 +1,27 @@
---
layout: post
title: "Welcome to devnomadic"
title: "devnomadic"
description: "Starting my journey as a digital nomad developer"
date: 2025-06-09
tags: introduction devnomad remote-work digital-nomad software-engineering travel lifestyle blogging
tags: [introduction, devNomad, remoteWork, digitalNomad, softwareEngineering, travel, lifestyle, blogging]
---

# Welcome to my digital nomad journey!

## 📝 TL;DR

🚀 **Starting devnomadic** - a blog documenting my journey as a software engineer embracing the digital nomad lifestyle.

**What you'll find here:**
- 🔧 **Technical tutorials** & best practices
- 🌍 **Remote work insights** from distributed teams
- ✈️ **Travel stories** from a developer's perspective
- 📱 **Tool recommendations** for nomadic developers

Join me as I explore the intersection of **code, travel, and remote work**!

---

Hello and welcome to devnomadic! This blog represents the beginning of documenting my journey as a software engineer embracing the digital nomad lifestyle.

## Why devnomadic?
Expand Down Expand Up @@ -45,4 +59,9 @@ I'm excited to share this journey with you. Whether you're a fellow developer cu

Let's build something amazing together, from anywhere in the world! 🚀

## 📋 Changelog

- **2025-06-09:** Initial publication
- **2025-06-15:** Updated tag format and added changelog

---
Loading