#хочу_спросить
Задавайте любые вопросы о программировании и получайте ответы от пользователей. В комментариях под постом укажите #язык, #стек и/или #библиотеку, по которым задаете вопрос.
Задавайте любые вопросы о программировании и получайте ответы от пользователей. В комментариях под постом укажите #язык, #стек и/или #библиотеку, по которым задаете вопрос.
PHPup
Однофайловый бинарник с нулевыми зависимостями, включающий Composer и другие инструменты PHP. Он вдохновлен rustup и позволяет устанавливать PHP для каждого проекта на основе вашего composer.json.
Однофайловый бинарник с нулевыми зависимостями, включающий Composer и другие инструменты PHP. Он вдохновлен rustup и позволяет устанавливать PHP для каждого проекта на основе вашего composer.json.
GitHub
GitHub - pronskiy/phpup: The PHP toolchain: run Composer, PHPStan, Rector, or any PHP script without having PHP installed.
The PHP toolchain: run Composer, PHPStan, Rector, or any PHP script without having PHP installed. - pronskiy/phpup
👍14😁4❤1
Самые полезные каналы для программистов в одной подборке!
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
🤖Про нейросети
Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей
Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка
Библиотека нейротекста | ChatGPT, Gemini, Bing
Библиотека нейровидео | Sora AI, Runway ML, дипфейки
Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion
#️⃣C#
Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel
☁️DevOps
Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
🐘PHP
Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты
🐍Python
Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты
☕Java
Книги для джавистов | Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🦫Go
Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go
🧠C++
Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие каналы
Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT
Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *
* Организация Meta запрещена на территории РФ
Сохраняйте себе, чтобы не потерять 💾
🔥Для всех
Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
🤖Про нейросети
Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей
Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка
Библиотека нейротекста | ChatGPT, Gemini, Bing
Библиотека нейровидео | Sora AI, Runway ML, дипфейки
Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion
#️⃣C#
Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel
☁️DevOps
Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
🐘PHP
Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты
🐍Python
Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты
☕Java
Книги для джавистов | Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков
👾Data Science
Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту
🦫Go
Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go
🧠C++
Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++
💻Другие каналы
Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈
Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT
Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *
* Организация Meta запрещена на территории РФ
👍4🥱2
Потребление всех транспортов в Symfony 6.4
В Symfony до версии 7.1 опция --all для команды messenger:consume была недоступна. В более ранних версиях необходимо было явно передавать список транспортов в выполняемую команду. Однако, если вам нужна эта функция, ее можно легко перенести на версию 6.4.
В Symfony до версии 7.1 опция --all для команды messenger:consume была недоступна. В более ранних версиях необходимо было явно передавать список транспортов в выполняемую команду. Однако, если вам нужна эта функция, ее можно легко перенести на версию 6.4.
blog.codito.dev
Messenger: consume all transports on Symfony 6.4
It’s hard to believe, but the --all option for the messenger:consume command in Symfony was unavailable until version 7.1 — on lower versions list of transports must be passed explicitly to the executed command. But if you need this, it’s really easy to port…
👍2
PHP: 8 уровней логов
Большинство фреймворков и пакетов следуют стандарту PSR-3, который описывает, как работает система ведения логов. Это интерфейс, на который вы должны опираться при отправке логов в систему. В PHP чаще всего используют имплементацию Monolog, как очень гибкий и простой в понимании.
Реализация PSR-3 описывает 8 уровней логов. В порядке убывания «строгости»: Emergency, Alert, Critical, Error, Warning, Notice, Info и Debug. Попытка решить, какой из них выбрать, иногда сбивает с толку. Здесь рассказывается об этом подробно.
Большинство фреймворков и пакетов следуют стандарту PSR-3, который описывает, как работает система ведения логов. Это интерфейс, на который вы должны опираться при отправке логов в систему. В PHP чаще всего используют имплементацию Monolog, как очень гибкий и простой в понимании.
Реализация PSR-3 описывает 8 уровней логов. В порядке убывания «строгости»: Emergency, Alert, Critical, Error, Warning, Notice, Info и Debug. Попытка решить, какой из них выбрать, иногда сбивает с толку. Здесь рассказывается об этом подробно.
Хабр
PHP: 8 уровней логов
В реальности, скорее всего, вы будете использовать четыре. Каждый раз, когда мне приходится создавать приложение, есть вещи, которые я хочу занести в лог по разным причинам: отладка, статистика,...
👍5
💬 Удается ли вам отдыхать вне работы?
👍 — да, почти всегда
🙏 — да, иногда
🤔 — нет, всегда работа в голове
🥱 — какой отдых? Я же айтишник
#холивар
👍 — да, почти всегда
🙏 — да, иногда
🤔 — нет, всегда работа в голове
🥱 — какой отдых? Я же айтишник
#холивар
🥱62👍47🙏32🤔13❤2
Flexhub — хранилище приватных рецептов symfony/flex
Self-hosted решение для управления приватными рецептами symfony/flex. Flex-рецепты позволяют автоматизировать установку и конфигурацию Symfony-бандлов.
Приложение создано с использованием PHP 8.2 + Symfony 6.4 и TypeScript + Vue 3.
Поставляется в виде Docker-образа, который упращает развертывание сервера рецептов в своей инфраструктуре.
Self-hosted решение для управления приватными рецептами symfony/flex. Flex-рецепты позволяют автоматизировать установку и конфигурацию Symfony-бандлов.
Приложение создано с использованием PHP 8.2 + Symfony 6.4 и TypeScript + Vue 3.
Поставляется в виде Docker-образа, который упращает развертывание сервера рецептов в своей инфраструктуре.
GitHub
GitHub - sonnymilton/flexhub: Server for private Symfony Flex recipes
Server for private Symfony Flex recipes. Contribute to sonnymilton/flexhub development by creating an account on GitHub.
👍3
Еще один #дайджест новостей по PHP за неделю:
🔎Сборки NativePHP для Windows уже здесь — Была объявлена поддержка NativePHP для Windows, а это значит, что теперь вы можете создавать приложения для платформы Windows.
🔎Выпущен Symfony 7.1.0-BETA1 — Только что состоялся релиз Symfony 7.1.0-BETA1. Вот список наиболее важных изменений с версии 7.0.
🔎Выпущен CakePHP 5.0.8 — Улучшения включают: Улучшена совместимость с искателями 4.x. Журналы ошибок, возникающих при откате в WebExceptionRenderer, теперь включают трассировку стека, что упрощает отладку + многое другое.
🔎Выпущены PHP 8.3.7 и PHP 8.2.19!
🔎Rule::array() и whereJsonOverlaps() для MySQL в Laravel 11.7 — На этой неделе команда Laravel выпустила версию 11.7, в которой появились метод валидации Rule::array(), метод whereJsonOverlaps() для MySQL, провайдер Slack OpenID для Laravel Socialite и многое другое.
🔎Неделя Symfony #906 (6-12 мая 2024 г.)
🔎Сборки NativePHP для Windows уже здесь — Была объявлена поддержка NativePHP для Windows, а это значит, что теперь вы можете создавать приложения для платформы Windows.
🔎Выпущен Symfony 7.1.0-BETA1 — Только что состоялся релиз Symfony 7.1.0-BETA1. Вот список наиболее важных изменений с версии 7.0.
🔎Выпущен CakePHP 5.0.8 — Улучшения включают: Улучшена совместимость с искателями 4.x. Журналы ошибок, возникающих при откате в WebExceptionRenderer, теперь включают трассировку стека, что упрощает отладку + многое другое.
🔎Выпущены PHP 8.3.7 и PHP 8.2.19!
🔎Rule::array() и whereJsonOverlaps() для MySQL в Laravel 11.7 — На этой неделе команда Laravel выпустила версию 11.7, в которой появились метод валидации Rule::array(), метод whereJsonOverlaps() для MySQL, провайдер Slack OpenID для Laravel Socialite и многое другое.
🔎Неделя Symfony #906 (6-12 мая 2024 г.)
👍3🎉1
Автоматизация Laravel CI/CD с помощью GitHub Actions на Namecheap
Здесь рассматривается автоматизация процессов непрерывной интеграции и развертывания (CI/CD) для приложений на Laravel с использованием GitHub Actions на платформе Namecheap.
Здесь рассматривается автоматизация процессов непрерывной интеграции и развертывания (CI/CD) для приложений на Laravel с использованием GitHub Actions на платформе Namecheap.
DEV Community
Automating Laravel CI/CD with GitHub Actions on Namecheap
Who is this article for? Have you had some struggles hosting your Laravel application on namecheap?...
❤🔥5🤔2
PHP c 2014 по 2024
В видео обсуждается, как за последние десять лет PHP стал более мощным и функциональным.
В видео обсуждается, как за последние десять лет PHP стал более мощным и функциональным.
YouTube
PHP from 2014 to 2024
PHP has come a long way, let's highlight some of the most impactful features.
Check out my channel for more videos about awesome PHP! https://www.youtube.com/@phpannotated
If you want to learn more about how PHP has evolved, check out my blog series about…
Check out my channel for more videos about awesome PHP! https://www.youtube.com/@phpannotated
If you want to learn more about how PHP has evolved, check out my blog series about…
🔥11🥱2👍1
php-vips
Очень быстрый пакет для работы с изображениями, который в ~5 раз быстрее Imagick или GD и потребляет меньше памяти. Это хороший пример FFI.
Очень быстрый пакет для работы с изображениями, который в ~5 раз быстрее Imagick или GD и потребляет меньше памяти. Это хороший пример FFI.
GitHub
GitHub - libvips/php-vips: php binding for libvips
php binding for libvips. Contribute to libvips/php-vips development by creating an account on GitHub.
👍23❤1
Какова разница между веб-маршрутами и API-маршрутами в Laravel?
В Laravel и веб-маршруты, и API-маршруты служат точками входа для обработки входящих запросов, но обычно они используются для разных целей.
Веб-маршруты:
✔️Веб-маршруты в Laravel в основном используются для обслуживания HTML-представлений и обработки веб-запросов от браузеров.
✔️Они отвечают за отображение веб-страниц, обработку отправленных форм и управление сеансами.
✔️Веб-маршруты определяются по умолчанию в файле routes/web.php.
✔️Они часто включают взаимодействие с пользовательским интерфейсом, такое как отображение форм, представлений и обработка аутентификации пользователей.
API-маршруты:
✔️API-маршруты, напротив, предназначены для обработки запросов и ответов для точек входа API.
✔️Они обычно используются для создания RESTful API или предоставления данных для мобильных приложений, одностраничных приложений (SPA) или других служб.
✔️API-маршруты определяются по умолчанию в файле routes/api.php.
✔️Они обычно возвращают данные в формате JSON или XML, а не отображают HTML-представления.
✔️API-маршруты часто включают операции CRUD (Create, Read, Update, Delete) с ресурсами, такие как извлечение данных из базы данных, создание новых записей, обновление существующих записей или удаление записей.
Таким образом, веб-маршруты используются для обслуживания веб-страниц и обработки запросов браузера, в то время как API-маршруты используются для предоставления данных и взаимодействия с приложениями или службами программным способом.
#вопросы_с_собеседований
В Laravel и веб-маршруты, и API-маршруты служат точками входа для обработки входящих запросов, но обычно они используются для разных целей.
Веб-маршруты:
✔️Веб-маршруты в Laravel в основном используются для обслуживания HTML-представлений и обработки веб-запросов от браузеров.
✔️Они отвечают за отображение веб-страниц, обработку отправленных форм и управление сеансами.
✔️Веб-маршруты определяются по умолчанию в файле routes/web.php.
✔️Они часто включают взаимодействие с пользовательским интерфейсом, такое как отображение форм, представлений и обработка аутентификации пользователей.
API-маршруты:
✔️API-маршруты, напротив, предназначены для обработки запросов и ответов для точек входа API.
✔️Они обычно используются для создания RESTful API или предоставления данных для мобильных приложений, одностраничных приложений (SPA) или других служб.
✔️API-маршруты определяются по умолчанию в файле routes/api.php.
✔️Они обычно возвращают данные в формате JSON или XML, а не отображают HTML-представления.
✔️API-маршруты часто включают операции CRUD (Create, Read, Update, Delete) с ресурсами, такие как извлечение данных из базы данных, создание новых записей, обновление существующих записей или удаление записей.
Таким образом, веб-маршруты используются для обслуживания веб-страниц и обработки запросов браузера, в то время как API-маршруты используются для предоставления данных и взаимодействия с приложениями или службами программным способом.
#вопросы_с_собеседований
👍12🥱10🌚2
Оптимизируйте свои запросы Eloquent с помощью ИИ
Пакет Laravel Slower предоставляет команды для анализа и очистки старых записей в зависимости от конфигурации планировщика приложения. Рекомендации, созданные с помощью команды slower:analyze, сохраняются в таблице базы данных, созданной этим пакетом, и могут быть просмотрены после завершения анализа ИИ.
Основные особенности пакета включают:
- Настройку порога медленности запросов.
- Использование конфигурируемых моделей ИИ, таких как GPT-4, для анализа.
- Возможность отключения анализа медленных запросов.
- Настройку подсказок для ИИ.
В качестве примера в статье, пакет может предложить добавление комбинированного (составного) индекса на столбцы product_id, price и discount_total для ускорения выполнения запроса
Пакет Laravel Slower предоставляет команды для анализа и очистки старых записей в зависимости от конфигурации планировщика приложения. Рекомендации, созданные с помощью команды slower:analyze, сохраняются в таблице базы данных, созданной этим пакетом, и могут быть просмотрены после завершения анализа ИИ.
Основные особенности пакета включают:
- Настройку порога медленности запросов.
- Использование конфигурируемых моделей ИИ, таких как GPT-4, для анализа.
- Возможность отключения анализа медленных запросов.
- Настройку подсказок для ИИ.
В качестве примера в статье, пакет может предложить добавление комбинированного (составного) индекса на столбцы product_id, price и discount_total для ускорения выполнения запроса
Laravel News
Optimize Your Eloquent Queries with AI - Laravel News
The Laravel Slower package identifies slow queries and suggests optimizations such as indexing and other improvements.
🥱6👏1
📣 Используйте through вместо map в Laravel, когда используете пагинацию. Когда вы хотите отобразить данные из пагинации и вернуть только подмножество полей, используйте through вместо map.
map разрушает объект пагинации и изменяет его идентификатор. В то время как through работает с самими пагинационными данными.
map разрушает объект пагинации и изменяет его идентификатор. В то время как through работает с самими пагинационными данными.
👏17👍7❤3👾1
🧑💻 Статьи для IT: как объяснять и распространять значимые идеи
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
Напоминаем, что у нас есть бесплатный курс для всех, кто хочет научиться интересно писать — о программировании и в целом.
Что: семь модулей, посвященных написанию, редактированию, иллюстрированию и распространению публикаций.
Для кого: для авторов, копирайтеров и просто программистов, которые хотят научиться интересно рассказывать о своих проектах.
👉Материалы регулярно дополняются, обновляются и корректируются. А еще мы отвечаем на все учебные вопросы в комментариях курса.
❤1
Как проверить емейл в PHP: regex, filter_var() и API
Существует три способа проверки емейл адреса:
Функция filter_var(): Эта встроенная функция проста и эффективна для базовой проверки, обеспечивая правильность формата электронной почты.
Регулярные выражения (Regex): Предлагают настраиваемую проверку путем определения определенных шаблонов, но требуют тщательной проработки для обработки всех допустимых форматов электронной почты.
API: Эти службы обеспечивают расширенную проверку, проверяя не только формат, но и существование и возможность доставки адреса электронной почты.
У каждого метода есть свои преимущества и варианты использования в зависимости от требуемого уровня проверки.
Подробные объяснения и примеры кода читайте в полной версии статьи здесь.
Существует три способа проверки емейл адреса:
Функция filter_var(): Эта встроенная функция проста и эффективна для базовой проверки, обеспечивая правильность формата электронной почты.
Регулярные выражения (Regex): Предлагают настраиваемую проверку путем определения определенных шаблонов, но требуют тщательной проработки для обработки всех допустимых форматов электронной почты.
API: Эти службы обеспечивают расширенную проверку, проверяя не только формат, но и существование и возможность доставки адреса электронной почты.
У каждого метода есть свои преимущества и варианты использования в зависимости от требуемого уровня проверки.
Подробные объяснения и примеры кода читайте в полной версии статьи здесь.
DEV Community
How to Validate Emails in PHP: regex, filter_var(), and API Explained
Be it marketing or transactional emails, email address validation is a necessity, or you could risk...
❤6👍2👾2
💬 Что вас мотивирует в работе?
❤️ — развитие своих профессиональных скиллов
👍 — преимущественно деньги
🤔 — я просто не хочу умереть с голоду
🌚 — одобрение коллег, поддержка определённого статуса
👾 — я верю, что занимаюсь чем-то полезным и ценным
#интерактив
❤️ — развитие своих профессиональных скиллов
👍 — преимущественно деньги
🤔 — я просто не хочу умереть с голоду
🌚 — одобрение коллег, поддержка определённого статуса
👾 — я верю, что занимаюсь чем-то полезным и ценным
#интерактив
👍98❤44🤔31👾24🌚5
CSV Blueprint
Строгая и автоматизированная построчная проверка CSV на основе настраиваемых схем Yaml.
За считанные секунды вы можете убедиться, что каждый символ в гигабайтном файле соответствует вашим ожиданиям.
Строгая и автоматизированная построчная проверка CSV на основе настраиваемых схем Yaml.
За считанные секунды вы можете убедиться, что каждый символ в гигабайтном файле соответствует вашим ожиданиям.
GitHub
GitHub - JBZoo/CSV-Blueprint: CSV Validator - Strict and automated line-by-line CSV checking tool based on customizable Yaml schemas
CSV Validator - Strict and automated line-by-line CSV checking tool based on customizable Yaml schemas - JBZoo/CSV-Blueprint
👍4