Posts

Docker Development Workflow for Hugo Themes

tech tutorial

Docker Development Workflow for Hugo Themes

Setting up a consistent development environment across different machines is crucial for theme development. Here’s my Docker-based workflow.

The Setup

FROM hugomods/hugo:exts-0.120.4
WORKDIR /src
COPY . /src/themes/nomad-tech/
CMD ["hugo", "server", "--bind", "0.0.0.0", "--buildDrafts"]

Docker Compose Configuration

services:
  hugo:
    build: .
    volumes:
      - "./exampleSite:/src"
    ports:
      - "1313:1313"

Benefits

  • Consistency: Same Hugo version everywhere
  • Security: Pinned, official images only
  • Isolation: No local Hugo installation needed
  • Portability: Works on any machine with Docker

Development Commands

# Start development server
docker-compose up

# Build for production
docker-compose run hugo hugo --minify

# Clean up
docker-compose down

This workflow has saved me countless hours of environment setup!

React Hooks Complete Guide

tech tutorial

React Hooks Complete Guide

Master React Hooks with practical examples and best practices.

Essential Hooks

useState

const [count, setCount] = useState(0);

useEffect

useEffect(() => {
  document.title = `Count: ${count}`;
}, [count]);

useContext

const theme = useContext(ThemeContext);

Custom Hooks

function useLocalStorage(key, initialValue) {
  const [value, setValue] = useState(() => {
    return localStorage.getItem(key) || initialValue;
  });
  
  const setStoredValue = (newValue) => {
    setValue(newValue);
    localStorage.setItem(key, newValue);
  };
  
  return [value, setStoredValue];
}

Hooks make React development so much cleaner!

Digital Nomad Budget Breakdown: $2000/Month

nomad lifestyle

Digital Nomad Budget Breakdown: $2000/Month

How I manage to live comfortably on $2000/month as a digital nomad.

Monthly Expenses

Accommodation ($600-800)

  • Airbnb/coliving spaces
  • 1-month stays for better rates
  • Shared apartments in nomad hubs

Food ($300-400)

  • Local restaurants: $3-8/meal
  • Groceries: $100/month
  • Occasional splurges: $50

Transportation ($200-300)

  • Flights: $150/month average
  • Local transport: $50
  • Scooter rental: $100

Work Setup ($100-150)

  • Coworking spaces: $80
  • Mobile data: $20
  • Coffee shops: $50

Entertainment ($200-250)

  • Activities and tours
  • Gym memberships
  • Social events

Money-Saving Tips

  1. Cook at home 3-4 times/week
  2. Use local transport
  3. Book flights in advance
  4. Choose emerging destinations

Living the nomad dream doesn’t have to break the bank!

TypeScript Best Practices 2024

tech tutorial

TypeScript Best Practices 2024

Essential TypeScript patterns and practices for better code quality.

Type Definitions

// Use interfaces for object shapes
interface User {
  id: string;
  name: string;
  email: string;
  createdAt: Date;
}

// Use type aliases for unions
type Status = 'loading' | 'success' | 'error';

// Generic constraints
interface Repository<T extends { id: string }> {
  findById(id: string): Promise<T>;
  save(entity: T): Promise<T>;
}

Utility Types

// Partial for updates
function updateUser(id: string, updates: Partial<User>) {
  // Implementation
}

// Pick for specific fields
type UserSummary = Pick<User, 'id' | 'name'>;

// Omit for exclusions
type CreateUser = Omit<User, 'id' | 'createdAt'>;

Best Practices

  1. Enable strict mode
  2. Use unknown instead of any
  3. Prefer type assertions over type casting
  4. Use const assertions for immutable data

TypeScript makes JavaScript development so much safer!

Essential Remote Work Tools for Developers in 2024

tech nomad

Essential Remote Work Tools for Developers in 2024

After working remotely from 15+ countries, here are the tools that keep me productive anywhere.

Communication & Collaboration

  • Slack/Discord: Team communication
  • Zoom/Meet: Video calls with good mobile data usage
  • Notion: Documentation and project management
  • Figma: Design collaboration

Development Environment

  • VS Code: With Settings Sync enabled
  • GitHub Codespaces: When local setup isn’t possible
  • Docker: Consistent environments everywhere
  • Tailscale: Secure access to home lab

Connectivity & Backup

  • Speedtest CLI: speedtest-cli for quick connection checks
  • Multiple ISPs: Always have 2+ internet sources
  • VPN: Essential for accessing geo-restricted services
  • Power Bank: 20,000mAh minimum for long coding sessions

Productivity Hacks

# My daily setup script
#!/bin/bash
speedtest-cli
git status
docker-compose up -d
code .

Location-Specific Tips

  • Thailand: AIS has the best coverage
  • Indonesia: Telkomsel for reliability
  • Portugal: MEO fiber is excellent
  • Mexico: Telmex for stable connections

The key is redundancy - always have backups for your backups!

Welcome to Nomad Tech Theme

Tech Hugo Themes

This is an example post to demonstrate the Nomad Tech Theme features.

Features

  • Modern design
  • Multilingual support
  • Portfolio integration
  • Social media links

Customize this theme by editing your hugo.toml configuration file.