Skip to content

Conversation

@andreacfromtheapp
Copy link
Contributor

Apologies about the unrequested change. Opening this as demo one of some QoL improvement suggestions for @nellshamrell . It's up to you all do decide :)

Migrate from Makefile to Justfile

This PR converts the existing Makefile to a Justfile for improved developer experience and modern tooling.

Changes Made

Core Migration:

  • Converted all Make targets to Just recipes with equivalent functionality
  • Updated syntax from Make to Just format (removed #!/bin/sh, updated variable references)
  • Replaced $(shell pwd) with {{justfile_directory()}} for path resolution
  • All original functionalities preserved - no behavioral changes to existing workflows

Enhanced User Experience:

  • Added help recipe that displays all available commands with descriptions
  • Improved recipe descriptions for better clarity in help output
  • Added project title and essential user information

Container Runtime:

  • Renamed builddocker-build for explicit Docker usage
  • Fixed directory creation before container execution to prevent volume mount errors

Documentation Updates:

  • Updated README.md to reference Just instead of Make
  • Changed all command examples from make to just

Testing

  • Verified just website works end-to-end: Successfully generated 625 articles and hosted local server on port 8000
  • Verified just email works end-to-end: Successfully generated email template 622-2025-10-22-email.html
  • Verified individual email commands: Both just generate-email and just optimize-email work correctly as standalone operations
  • Verified clean operations: Both just clean-website and just clean-email work correctly
  • All container operations function correctly with the new justfile syntax

Usage

# Show all available commands
just help

# Main workflows (same as before)
just website          # Generate and host website locally
just email            # Generate and optimize email template
just copy-website-contents  # Sync to github.io repo

# Container build
just docker-build     # Build Docker image

Benefits

  • Better UX: Built-in help system with clear command descriptions
  • Modern tooling: Just provides better syntax and features than Make
  • Improved reliability: Fixed volume mounting issues
  • Full compatibility: All existing workflows remain unchanged

All existing workflows remain unchanged - users can simply replace make with just in their commands.

Apologies about the unrequested change. Opening this as **demo** one of
some QoL improvement suggestions for @nellshamrell . It's up to you all
do decide :)

## Migrate from Makefile to Justfile

This PR converts the existing Makefile to a Justfile for improved
developer experience and modern tooling.

### Changes Made

**Core Migration:**
- Converted all Make targets to Just recipes with equivalent
functionality
- Updated syntax from Make to Just format (removed `#!/bin/sh`, updated
variable references)
- Replaced `$(shell pwd)` with `{{justfile_directory()}}` for path
resolution
- **All original functionalities preserved** - no behavioral changes to
existing workflows

**Enhanced User Experience:**
- Added `help` recipe that displays all available commands with
descriptions
- Improved recipe descriptions for better clarity in help output
- Added project title and essential user information

**Container Runtime:**
- Renamed `build` → `docker-build` for explicit Docker usage
- Fixed directory creation before container execution to prevent volume
mount errors

**Documentation Updates:**
- Updated README.md to reference [Just](https://just.systems/) instead
of Make
- Changed all command examples from `make` to `just`

### Testing

- **Verified `just website` works end-to-end**: Successfully generated
625 articles and hosted local server on port 8000
- **Verified `just email` works end-to-end**: Successfully generated
email template `622-2025-10-22-email.html`
- **Verified individual email commands**: Both `just generate-email` and
`just optimize-email` work correctly as standalone operations
- **Verified clean operations**: Both `just clean-website` and `just
clean-email` work correctly
- All container operations function correctly with the new justfile
syntax

### Usage

```bash
# Show all available commands
just help

# Main workflows (same as before)
just website          # Generate and host website locally
just email            # Generate and optimize email template
just copy-website-contents  # Sync to github.io repo

# Container build
just docker-build     # Build Docker image
```

### Benefits

- **Better UX**: Built-in help system with clear command descriptions
- **Modern tooling**: Just provides better syntax and features than Make
- **Improved reliability**: Fixed volume mounting issues
- **Full compatibility**: All existing workflows remain unchanged

All existing workflows remain unchanged - users can simply replace
`make` with `just` in their commands.

Signed-off-by: andreacfromtheapp <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant