Skip to Content

Информације за пројекат

Теме

  • Предложени пројекти морају бити базирани на textX или parglare библиотекама.
  • Могу бити ЈСД имплементације или унапређења поменутих библиотека.
  • Језици морају имплементирати и подршку за едиторе (Code completion, Syntax highlighting итд. за нпр. VS Code). Видети пројекте textX-LS и Language Server Protocol.

О вођењу пројекта

  • Сви пројекти морају бити отвореног кода јавно хостовани на GitHub-у. Избор лиценце се оставља члановима тима, али мора бити OSI одобрена.
  • Предлог се пише у README фајлу пројекта и шаље се линк предметном професору на одобрење.
  • Задаци на пројекту се дефинишу у склопу GitHub issues.
  • Текуће стање се прати употребом Канбан табле.
  • Трајне белешке (commit) се повезују са задацима (issues) употребом

Потребно проверити пре слања професору на преглед

  • Све што се оцењује мора бити на основној грани main.

  • Пројекат може да се инсталира употребом pip алата.

  • Да би ово било могуће пројекат мора имати pyproject.toml са валидним мета-подацима.

  • Проверите да ли се при изградњи wheel фајла пакују сви потребни фајлови. Wheel фајл је зип архива коју можете отворити у произвољном софтверу за рад са архивама и проверити садржај. Ако нешто недостаје погледајте упутство.

    На пример, уколико се изградња спроводи са flit алатом wheel се креира са:

        pip install flit
        flit build
    

    У фолдеру dist биће креиран wheel фајл.

    Као пример, видети како је конфигурисан textX.

  • Уколико се исправно подеси пројекат је могуће инсталирати у виртуелно окружење употребом pip команде директно из гит репозиторијума. На пример:

        python -m venv venv
        source venv/bin/activate
        pip install git+https://github.com/textX/textX.git
    

    Такође је могуће инсталирати пројекат у моду за развој:

        pip install -e .
    
  • Сви textX језици и генератори су регистровани на одговарајући начин у pyproject.toml и доступни textx команди. Видите textX регистрацију и откривање. Као пример видети сам textX пројекат.

    Генератори се могу позвати са:

        textx generate ...
    
  • Ако пројекат има CLI или GUI команду, и она мора бити регистрована у pyproject.toml тако да је доступна по обављеној инсталацији. Видети како је регистрована textx CLI команда у textX пројекту.

  • README.md мора да садржи опис пројекта, упутство за инсталацију и пример употребе. Језик може бити српски или енглески али мора бити конзистентно коришћен.