Мы используем Makefile думая, что нет альтернатив, что это стандарт и всё такое.
Но make это не запускалка команд, а система сборки. Мы фактически используем его не по назначению.
И на самом деле альтернатива есть! Некоторое время назад я открыл для себя прекрасный инструмент - just. Он решает все проблемы make.
just - это не система сборки как make, это именно исполнитель команд!
Больше никаких Phony Targets и табуляций, привет нормальный синтаксис и передача аргументов!!! 😎
⭐️Что умеет just:
✅ Автодокументирование команд
Не нужно делать отдельную команду с докой, просто добавь комментарий
# команда сборки
build:
...
$ just --list
Available recipes:
build # команда сборки
Команда с именем default запускается по умолчанию если не указано другое, так что я обычно делаю так:
default:
just --list
Теперь просто выполняем just и получаем доку из текущего файла.
✅ Удобная работа с переменными окружения
# загрузить из .env
set dotenv-load
# глобальная переменная
export PYTHONPATH := "./src"
# переменная для команды
test $TESTUNG="true":
pytest
✅ Передача аргументов
build target:
@echo 'Build {{target}}...'
команда запуска
$ just build dev
# Build dev...
✅ Выбор интерпретатора прямо в команде
Пример с инлайн-скриптом на python:
system:
#!/usr/bin/env python3
import platform
print(platform.system())
Эта же функция позволит выполнить скрипт как одну команду вместо перезапуска шела для каждой строки
foo:
#!/usr/bin/env sh
for file in ls .; do
echo $file
done
✅ Выполнение команды в определенной директории. Можно указать как релятивный путь так и абсолютный
[working-directory: 'backend']
build:
docker compose build
Также можно задать рабочую директорию глобально
Там еще много интересного:
- поддержка функций
- автокомплиты и интеграции
- экспрешены
- алиасы команд
- группировка команд
- альтернативы команды под разные ОС
- импорт других just-файлов
- цветной вывод
- ... и другие штуковины!
Так что вперёд - ➡️ читать доку!
Репозиторий: ➡️https://github.com/casey/just
Статья: ➡️https://www.chicks.net/reference/file_formats/just/
ЗЫ. Кажется, на Makefile я уже не вернусь)
#tools
Episode 1: She’s in his hoodie, sitting cross-legged on the kitchen counter while he flips pancakes. Music plays low, something nostalgic. She sways, miming the lyrics with lazy exaggeration. He grins—half amusement, half adoration. There’s no rush. No plan. Just the rhythm of a morning made soft by love.
❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️
We keep finding heaven in the smallest things.
❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️
#lovelived#iloveyou
Episode 16
The villa deck hums with sunlight, the ocean below impossibly clear — liquid turquoise stretching forever. He hits the water first, surfacing with a splash and boyish triumph, pushing wet hair from his eyes.
“Come on!” he calls, treading water, arms open like the sea is his idea.
She sits at the top of the slide, toes curled over the edge, laughter already bubbling in her chest. The world feels weightless up here — sky, water, horizon all blending into one endless promise. She looks at him, glowing down there, and shakes her head like she can’t believe this is real.
He cheers louder. She leans back, breath caught between thrill and trust — and lets go.
If you jump, I jump. Every lifetime.
📖 Read on Wattpad
🎧 Love, Lived I Album
#lovelived#lovelived2#theeverydaymagic
❤️ YouTube | Instagram ❤️
Episode 15
Thursday afternoons belong to sugar and sunlight. They don’t debate flavors anymore—she reaches for hers, he for his, like muscle memory. The shop owner already knows their order. They walk slowly, cones melting faster than planned, shoulders brushing, trading bites without asking. Workdays soften. The week exhales. Love tastes like something cold and sweet, shared halfway down the block.
Traditions are just love that learned the schedule. 🍦✨
📖 Read on Wattpad
🎧 Love, Lived I Album
#lovelived#lovelived2#theeverydaymagic
❤️ YouTube | Instagram ❤️
Episode 14
The kitchen smells like garlic and sun-warmed tomatoes. She stirs the pasta with one hand, dancing slightly to a morning playlist. He sits at the table, laptop open but eyes drifting. The new vase sits between them, holding sunflowers like a little sun of its own. He types. She tastes. The space hums—spoon clinks, keys click, love simmering in the background.
A bouquet, a bowl of pasta, and you across the table. Perfect.
📖 Read on Wattpad
🎧 Love, Lived I Album
#lovelived#lovelived2#theeverydaymagic
❤️ YouTube | Instagram ❤️
Episode 13
She wakes to the smell of something warm, sweet, familiar. The dining room glows—sunlight spilling in through the floor-to-ceiling glass wall, kissing every detail he carefully placed: fresh fruit gleaming in bowls, milk in a glass pitcher, her favorite breakfast dish plated like art, dessert waiting with a ribbon on the side, the sunflower-filled vase watching quietly.
He stands there—apron still crooked, cheeks a little pink.
“I want you to break your fast with your favorite dish made by me. I poured all my love into it. Happy birthday, my love.”
She doesn’t sit right away.
She hugs him first. Slow. Long. Like she tasted the love before the food.
This morning, love tasted homemade.
📖 Read on Wattpad
#lovelived#lovelived2#theeverydaymagic
Episode 12
The beach is empty—except for them. Lanterns flicker in glass jars, fairy lights drape over driftwood like fallen stars. A small table for two sits on a sand-carved rug, scattered with rose petals and sea breeze. She stops walking, hand over her mouth, dress brushing the shore. He watches her—not the waves, not the lights—her. She turns, eyes glossy, and breathes, “This feels unreal.” He smiles. “Then we’re right on time.”
The world paused—so we could celebrate you.
📖 Read on Wattpad
#lovelived#lovelived2#theeverydaymagic