Como criar seu próprio portfólio
Este guia mostra como clonar o repositório github.com/pvitorv/portfolio, configurar o ambiente e criar o banco de dados para rodar o projeto na sua máquina.
1. Requisitos
- PHP 8.2+
- Composer
- Node.js e npm (para compilar CSS/JS com Vite; opcional no início)
- Git
- Banco de dados: MySQL 8+, PostgreSQL ou SQLite
2. Clonar o repositório
Abra o terminal na pasta onde deseja criar o projeto e execute:
git clone https://github.com/pvitorv/portfolio.git
cd portfolio
3. Instalar dependências PHP
composer install
4. Configurar o ambiente
Copie o arquivo de exemplo e gere a chave da aplicação:
cp .env.example .env
php artisan key:generate
Edite o arquivo .env e ajuste pelo menos:
APP_NAME– nome do seu portfólioAPP_URL– ex.:http://localhost:8000- As variáveis de banco de dados (
DB_*) conforme a seção abaixo.
5. Criar o banco de dados
Escolha uma das opções abaixo.
Opção A: MySQL / MariaDB
No MySQL (client ou phpMyAdmin), crie o banco e o usuário (se precisar):
CREATE DATABASE portfolio CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- Opcional: criar usuário
-- CREATE USER 'portfolio'@'localhost' IDENTIFIED BY 'sua_senha';
-- GRANT ALL ON portfolio.* TO 'portfolio'@'localhost';
-- FLUSH PRIVILEGES;
No .env:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=portfolio
DB_USERNAME=root
DB_PASSWORD=
Opção B: SQLite
Crie o arquivo do banco e ajuste o .env:
touch database/database.sqlite
DB_CONNECTION=sqlite
# DB_DATABASE=absolute/path/to/database/database.sqlite
# Ou deixe em branco: Laravel usa database/database.sqlite por padrão
Opção C: PostgreSQL
No terminal (ou pgAdmin):
createdb portfolio
No .env:
DB_CONNECTION=pgsql
DB_HOST=127.0.0.1
DB_PORT=5432
DB_DATABASE=portfolio
DB_USERNAME=postgres
DB_PASSWORD=
6. Rodar as migrations
Isso cria as tabelas (usuários, projetos, cache, filas, etc.):
php artisan migrate
7. Criar seu usuário (admin)
O primeiro usuário do sistema é o “perfil” exibido na página inicial. Crie-o pelo Artisan Tinker:
php artisan tinker
Dentro do Tinker, execute (troque nome, e-mail e senha pelos seus):
\App\Models\User::create([
'name' => 'Seu Nome',
'email' => 'seu@email.com',
'password' => bcrypt('sua-senha-segura'),
]);
Digite exit para sair do Tinker.
8. Assets (opcional)
Para compilar CSS e JavaScript com Vite (Tailwind e Alpine):
npm install
npm run build
Se não rodar npm run build, o projeto usa Tailwind e Alpine via CDN (fallback já configurado no layout).
9. Subir o servidor e acessar
php artisan serve
Abra no navegador:
- Página inicial: http://localhost:8000
- Painel admin: http://localhost:8000/login — use o e-mail e a senha que você criou no passo 7.
No admin você pode editar seu perfil (nome, foto, título, bio, redes sociais) e gerenciar os projetos exibidos na página inicial.
Resumo dos comandos
git clone https://github.com/pvitorv/portfolio.git
cd portfolio
composer install
cp .env.example .env
php artisan key:generate
# Criar o banco (MySQL/PostgreSQL/SQLite) e configurar DB_* no .env
php artisan migrate
php artisan tinker
# Dentro do tinker: \App\Models\User::create([...]);
npm install && npm run build # opcional
php artisan serve
Repositório: github.com/pvitorv/portfolio