README.md

Шаблон проекта для приложения

Введение

Данный шаблон предназначен для создания типового проекта приложения на языке Clojure на базе операционной системы Alt Linux p11.

Шаблон обеспечивает:

  • Управление зависимостями с помощью утилиты clojure и файла deps.edn;

  • Генерацию новых проектов на основе шаблонов с помощью инструмента deps-new;

  • Запуск целей проекта с помощью инструмента babashka и файла bb.edn;

  • Компиляцию исходного кода Clojure и сборку дистрибутива с помощью инструмента tools-build и файла build.clj;

  • Запуск тестов проекта с помощью инструмента kaocha и файла tests.edn;

  • Настройку редактора с помощью файла .editorconfig;

  • Настройку параметров для линтера clj-kondo в файле .clj-kondo/config.edn;

  • Настройку параметров для инструмента форматирования cljstyle в файле .cljstyle;

Ниже перечислены базовые цели проекта:

mike@alt01 ~ bb tasks
The following tasks are available:

prep         Подготовить зависимости к работе (например компиляция java-файлов в зависимостях)
clean        Очистить содержимое сборочного каталога
javac        Компиляция Java классов
build        Собрать дистрибутив библиотеки в виде uberjar-файла
run          Запуск программы через функцию -main
standalone   Создать самодостаточный пакет: программа + JRE (используя jlink, JDK 9+)
release      Сделать выпуск: присвоить тэг, сделать сборку, опубликовать в репозиторий
native       Создать нативное приложение
test         Запустить тесты
repl         Запустить Clojure REPL
outdated     Проверить устаревшие зависимости
outdated:fix Проверить устаревшие зависимости и обновить
format       Форматировать исходный код
lint         Проверить исходный код линтером
requirements Установить зависимости необходимые проекту

Также доступен Шаблон для библиотеки

Использование шаблона

Прежде чем воспользоваться данным шаблоном убедитесь, что в ОС установлены зависимости (см. раздел Установка зависимостей).

Для генерации нового проекта для приложения, например ru.example/myapp01, необходимо запустить команду:

clojure -Sdeps '{:deps {org.rssys/apptemplate {:git/tag "v0.6.0" :git/sha "1e379a97" :git/url "https://gitflic.ru/project/red-stars-systems/apptemplate.git"}}}' -Tnew create :template org.rssys/apptemplate :name ru.example/myapp01

или клонируйте локально этот проект и запустите из корня проекта следующую команду:

clojure -Sdeps '{:deps {org.rssys/apptemplate {:local/root "."}}}' -Tnew create :template org.rssys/apptemplate :name ru.example/myapp01 :target-dir ../myapp01

После генерации проекта смотри файл README.adoc в корневой папке проекта.

Раздел для разработчиков

Установка языка Clojure

Под учетной записью root нужно установить ряд программ:

  1. Установка базовых программ.

    apt-get update
    apt-get install java-21-openjdk
    apt-get install git
    apt-get install curl rlwrap unzip bash
    
  2. Установка языка Clojure.

    Linux

    curl -L -O https://github.com/clojure/brew-install/releases/latest/download/linux-install.sh
    chmod +x linux-install.sh
    ./linux-install.sh
    

    MacOS

    brew install clojure/tools/clojure
    
  3. Установка Babashka (язык Clojure для разработки скриптов).

    Linux

    bash < <(curl -s https://raw.githubusercontent.com/babashka/babashka/master/install)
    

    MacOS

    brew install borkdude/brew/babashka
    

Установка инструмента управления шаблонами

Установка инструмента работы с шаблонами Leiningen/Boot/clj-template deps-new

clojure -Ttools install-latest :lib io.github.seancorfield/deps-new :as new

Данный инструмент будет установлен в каталог ~/.gitlibs/libs/

Лицензия

© 2025 Михаил Ананьев.

Данный проект распространяется под Открытой лицензией на программное обеспечение “Рэд старс системс”, версия 1.0.
Текст лицензии находится в файле LICENSE или по ссылке.

Описание
Шаблон проекта для приложения на языке Clojure
Конвейеры
0 успешных
0 с ошибкой
Разработчики