- PVSM.RU - https://www.pvsm.ru -

Как я создал более 100 приложений с открытым кодом, используя инструменты автоматизации

Представляем вам перевод статьи Sm0ke [1], опубликованной на сайте dev.to. Автор рассказывает о своем опыте генерации веб-приложений и способе автоматизации процесса их создания.

Привет, кодеры!

Я — разработчик-фрилансер, и я сгенерировал более 100 приложений на различных языках и платформах, используя инструменты автоматизации, парсинг HTML [2] и бойлерплейт-код [3].

Все мои приложения, как платные, так и бесплатные, находятся в открытом хранилище [4] GitHub. О некоторых из них я расскажу в этой статье.

#1  Сгенерированные JAMstack-приложения [5]

Всего я создал более 40 таких приложений. Дизайн для них разрабатывали известные веб-агентства.

Как я создал более 100 приложений с открытым кодом, используя инструменты автоматизации - 1

  • Бесплатные приложения с лицензией MIT — Argon Design [6], Material Kit [7], Now UI [8], Paper Kit [9].
  • Бесплатные приложения с лицензией CCA 3.0 (при их использовании нужно сохранять информацию об авторстве) —  Fractal [10], Landed [11], BigPicture [12].

#2 Сгенерированные Flask-приложения [13]

Все эти приложения, как платные, так и бесплатные, используют бойлерплейт, базу данных SQLite, ORM, аутентификацию, хелперы и базовый набор инструментов (статический экспорт через Frozen-Flask и скрипт развертывания на FTP).

  • Бесплатные приложения с лицензией MIT — Paper Kit [14], FlaskPlay [15].
  • Бесплатные приложения с лицензией CCA 3.0 (при их использовании нужно сохранять информацию об авторстве) — Phantom [16], SolidState [17].

Как я создал более 100 приложений с открытым кодом, используя инструменты автоматизации - 2

#3 Сгенерированные админ-панели [18]

Все мои админ-панели созданы с помощью Flask и используют базу данных SQLite, аутентификацию, ORM и базовый набор инструментов (полный список панелей можно увидеть тут [18]).

Вот некоторые панели: Flask Dashboard Argon [19] , Flask Dashboard Material  [20] и Flask Dashboard NowUi [21]. Все они имеют лицензию MIT.

Как я создал более 100 приложений с открытым кодом, используя инструменты автоматизации - 3

Другие сгенерированные приложения и бойлерплейты

  • Full Stack [22] — приложения с двухуровневой архитектурой, а также Vue и React (на уровне интерфейса). Имеют лицензию MIT.
  • Бойлерплейт-код [3] для Node.js, Laravel и Flask — тоже с лицензией MIT.

О процессе автоматизации

Однажды я решил упростить процесс создания приложений. Опираясь на свой фрилансерский опыт за последние два года, а также на требования клиентов и обратную связь, я сделал следующие выводы:

  • Клиентам всегда нужно несколько дизайнов для приложения (чтобы было из чего выбирать).
  • Мои приложения должны быть совместимы даже с самыми новыми устройствами.
  • Необходимо, чтобы миграция устаревших версий приложений на новые устройства укладывалась в небольшой бюджет.

Чтобы решить эти задачи, процесс разработки нужно было сделать автоматизированным. В моем случае понадобилось несколько этапов:

  • Извлекаем компоненты для различных шаблонных движков (Jinja2, Pug, Blade) из простых HTML-файлов с помощью HTML-парсера [2].
  • Внедряем обработанный дизайн в существующий бойлерплейт-код [3]Laravel [23], Node.js [24], JAMstack [5] или Flask [25].
  • Запускаем минимальное количество автотестов.

Дальнейшие шаги

  • Расширяем парсер HTML [2], чтобы конвертировать устаревшие HTML-дизайны в темы Vue, React и Angular.
  • Готовим темы для современных фреймворков (Gatsby.js, Gridsome, Hugo), начиная с дизайна, созданного на Bootstrap.
  • Переносим дизайны из предыдущих версий CSS-фреймворка (Bootstrap) на Bulma и Tailwind.
  • Добавляем в пайплайн больше бойлерплейтов — например, для Django, Fastify и подобных фреймворков.

Заранее спасибо за обратную связь!

Автор: Plarium

Источник [26]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/web-razrabotka/331895

Ссылки в тексте:

[1] Sm0ke: https://dev.to/sm0ke

[2] парсинг HTML: https://github.com/app-generator/html-parser

[3] бойлерплейт-код: https://github.com/app-generator/boilerplate-code

[4] открытом хранилище: https://github.com/app-generator?tab=repositories

[5] JAMstack-приложения: https://github.com/app-generator/jamstack

[6] Argon Design: https://appseed.us/apps/jamstack/jamstack-argon-design

[7] Material Kit: https://appseed.us/apps/jamstack/jamstack-material-kit

[8] Now UI: https://appseed.us/apps/jamstack/jamstack-now-ui-kit

[9] Paper Kit: https://appseed.us/apps/jamstack/jamstack-paper-kit

[10] Fractal: https://appseed.us/apps/jamstack/html5up-fractal

[11] Landed: https://appseed.us/apps/jamstack/html5up-landed

[12] BigPicture: https://appseed.us/apps/jamstack/html5up-big-picture

[13] Flask-приложения: https://github.com/app-generator/flask-apps

[14] Paper Kit: https://flask-paper-kit.appseed.us/

[15] FlaskPlay: https://appseed.us/apps/flask-apps/bulmaplay-flask-and-bulma-css

[16] Phantom: https://flask-phantom.appseed.us/

[17] SolidState: https://github.com/app-generator/flask-solid-state

[18] админ-панели: https://github.com/app-generator/admin-dashboards

[19] Flask Dashboard Argon: https://github.com/app-generator/flask-argon-dashboard

[20] Flask Dashboard Material : https://github.com/app-generator/flask-material-dashboard

[21] Flask Dashboard NowUi: https://github.com/app-generator/flask-now-ui-dashboard

[22] Full Stack: https://github.com/app-generator?utf8=%E2%9C%93&tab=repositories&q=fullstack

[23] Laravel: https://github.com/app-generator/laravel-boilerplate

[24] Node.js: https://appseed.us/boilerplate-code/nodejs-starter

[25] Flask: https://github.com/app-generator/flask-boilerplate

[26] Источник: https://habr.com/ru/post/469829/?utm_campaign=469829&utm_source=habrahabr&utm_medium=rss