PHPackages                             apriolo/buscador-cursos - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. apriolo/buscador-cursos

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

apriolo/buscador-cursos
=======================

Projeto para buscar cursos no site da alura

v1.1.0(5y ago)07GPL-3.0PHP

Since May 24Pushed 5y ago1 watchersCompare

[ Source](https://github.com/apriolo/composer-alura)[ Packagist](https://packagist.org/packages/apriolo/buscador-cursos)[ RSS](/packages/apriolo-buscador-cursos/feed)WikiDiscussions master Synced 3w ago

READMEChangelogDependencies (6)Versions (3)Used By (0)

Primeira parte do trinamento
============================

[](#primeira-parte-do-trinamento)

Como teste foi feito um projeto para crawler dos cursos de php da Alura

Foram utilizados as seguintes ferramentas Docker e Compose Usados para criar o ambiente Docker com o php e o compose para administrar os containers do docker, neste caso foi utilizado apena 1 com o php. - docker-compose build (para baixar as dependencias da imagem) - docker-compose up -d (construir a imagem e subir os containers) No compose foi utilizado a versão 3 Os services criados foram PHP Dockerfile-php utilizando a imagem do php:fpm-stratch (imagem:versao) instalando algumas ferramentas junto git,zlib1g,libxml2,libzip,mysqli Instalando o composer para orquestrar o projeto Fazendo um curl para o instalador do composer, e depois movendo o arquivo composer.phar para o diretorio do composer no container Definido o WORKDIR para /var/www dentro do container Volumes os volumes são o local onde o projeto vai ser copiado e utilizado dentro do container do docker Utilizado neste projeto foi ".:/var/www/composerTest" Networks São as redes de comunicação internas dos containers, por onde eles fazem as comunicações substituindo o ip pelo nome do container networks: - symfony

Composer Orquestrador de dependecias do php

com o composer require podemos adicionar dependecias existentes no packgist no projeto, como exemplo adiconamos algumas: phpunit, phpcs para adionar dentro do projeto "composer require distribuidor/dependencias" exemplo &gt; "composer require guzzlehttp/guzzle" ou no arquivo composer.json podemos adicionar a dependencias dentro do indice de require EX "require": { "guzzlehttp/guzzle": "^7.3", "symfony/dom-crawler": "^4.2", "symfony/css-selector": "^5.2" } ou se a dependencia for somente para o ambiente de desenvolvimento usamos a tag --dev no composer require ou no composer.json "require-dev": { "phpunit/phpunit": "^9.5", "squizlabs/php\_codesniffer": "^3.6", "phan/phan": "^4.0" }

Vimos o autoload, para facilitar a importação de classes dentro do composer temos a opção de importar arquivos de funções importantes que podem ser usadas em qualquer lugar do projeto "autoload": { "files": \[ "./functions.php" \] } Importar classes que estão fora do padrão PSR4 sobre as definições de nomes de classe e namesapce
"autoload": { "files": \[ "./functions.php" \], "classmap": \[ "./Teste.php" \] } Utilizar as classes do projeto como namespace adequada a PSR4 "autoload": { "files": \[ "./functions.php" \], "classmap": \[ "./Teste.php" \], "psr-4": { "Alura\\BuscadorDeCursos\\" : "src/" } }

na aula utilizamos algumas dependecias de teste e suas configurações, criamos scripts para usar as dependencias. - phpunit - phpcs - phan Criamos scripts para executar as ferramentas direto com o composer "scripts": { "test": "phpunit tests/TestBuscadorDeCursos.php", "cs" : "phpcs --standard=PSR12 src/", "phan" : "phan --allow-polyfill-parser", } e para facilitar criamos um script que executa todas de uma vez "scripts": { "test": "phpunit tests/TestBuscadorDeCursos.php", "cs" : "phpcs --standard=PSR12 src/", "phan" : "phan --allow-polyfill-parser", "check" : \[ "@phan", "@cs", "@test" \] } E também é possivel executar scripts com o composer após algum evento, como exemplo apos o composer update rodar o check "scripts": { "test": "phpunit tests/TestBuscadorDeCursos.php", "cs" : "phpcs --standard=PSR12 src/", "phan" : "phan --allow-polyfill-parser", "check" : \[ "@phan", "@cs", "@test" \], "post-update-cmd": \[ "teste" \] }

###  Health Score

23

—

LowBetter than 26% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity4

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity53

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~0 days

Total

2

Last Release

1868d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/77355017?v=4)[Arian Priolo](/maintainers/apriolo)[@apriolo](https://github.com/apriolo)

---

Top Contributors

[![apriolo](https://avatars.githubusercontent.com/u/77355017?v=4)](https://github.com/apriolo "apriolo (3 commits)")

###  Code Quality

TestsPHPUnit

Code StylePHP\_CodeSniffer

### Embed Badge

![Health badge](/badges/apriolo-buscador-cursos/health.svg)

```
[![Health](https://phpackages.com/badges/apriolo-buscador-cursos/health.svg)](https://phpackages.com/packages/apriolo-buscador-cursos)
```

###  Alternatives

[craftcms/cms

Craft CMS

3.6k3.6M3.1k](/packages/craftcms-cms)[spatie/crawler

Crawl all internal links found on a website

2.8k18.5M67](/packages/spatie-crawler)[spatie/laravel-export

Create a static site bundle from a Laravel app

674146.0k6](/packages/spatie-laravel-export)[sproutcms/cms

Enterprise content management and framework

242.5k4](/packages/sproutcms-cms)[blackfire/player

A powerful web crawler and web scraper with Blackfire support

49617.1k](/packages/blackfire-player)[drupal/core-dev

require-dev dependencies from drupal/drupal; use in addition to drupal/core-recommended to run tests from drupal/core.

2022.6M344](/packages/drupal-core-dev)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
