Recommend this page to a friend! |
Download |
Info | Documentation | Files | Install with Composer | Download | Reputation | Support forum | Blog | Links |
Last Updated | Ratings | Unique User Downloads | Download Rankings | |||||
2025-01-11 (27 days ago) | Not enough user ratings | Total: 23 This week: 6 | All time: 11,291 This week: 7 |
Version | License | PHP version | Categories | |||
personal 1.0.0 | MIT/X Consortium ... | 5 | PHP 5, Content management, Business, A... |
Description | Author | |
This package can generate a portfolio site. |
Este projeto é um site de portfólio dinâmico desenvolvido com PHP puro, utilizando o padrão MVC clássico e sem arquitetura REST. O objetivo do site é oferecer um layout moderno e funcional, onde o conteúdo é gerenciado de forma dinâmica por uma área administrativa, ideal para exibir projetos, habilidades e informações de contato.
O site desenvolvido com as seguintes tecnologias e ferramentas:
O League\Plates é uma biblioteca de templates leve e eficiente para PHP. Utilizamos essa ferramenta para separar a lógica da apresentação, permitindo:
No projeto, utilizamos o League\Plates\Engine
para renderizar templates de forma dinâmica. Aqui está um exemplo:
Configuração da Engine no Backend:
use League\Plates\Engine;
class View
{
public static function render($template, $data = [])
{
$engine = new Engine(__DIR__ . '/../views');
echo $engine->render($template, $data);
}
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title><?= $title ?? 'Portfolio Website' ?></title>
<link rel="stylesheet" href="/assets/css/styles.css">
</head>
<body>
<header>
<?= $this->insert('partials/header') ?>
</header>
<main>
<?= $this->section('content') ?>
</main>
<footer>
<?= $this->insert('partials/footer') ?>
</footer>
</body>
</html>
detalhe importante (sistema de templates) https://platesphp.com/
class Portifolio{
public function index()
{
$projects = Project::all();
View::render('portfolio', [
'title' => 'My Portfolio',
'projects' => $projects,
]);
}
}
Menu Dinâmico: Gerado com base em configurações do backend. Filtros de Portfólio: Filtragem de projetos por categoria (Design, Fotos, Arte, etc.). Área de Contato: Formulário funcional para envio de mensagens. Layout Responsivo: Compatível com dispositivos móveis e desktops. Área Administrativa: Para gerenciar conteúdo do portfólio.
A organização do projeto segue uma estrutura simples e eficiente:
project/
??? app/
? ??? controllers/
? ??? database/
? ? ??? models/
? ? ??? Model.php
? ? ??? Connection.php
? ? ??? Transaction.php
? ??? models/
? ??? views/
? ??? admin/
? ??? auth/
? ??? pages/
? ??? partial/
?
??? vendor/
??? public/
? ??? assets/
? ??? css/
? ??? js/
? ??? images/
? ??? index.php
??? .env
Clone o repositório:
git clone https://github.com/faustinopsy/personal.git
arquivo .env
STRIPE_KEY=token do striper se for receber dinhero
DATABASE_NAME=a01_teste
DATABASE_HOST=localhost
DATABASE_USER=root
DATABASE_PASSWORD=root123
BASE_URL=http://localhost:1230
EMAIL=conta de email
SENHA=senha para envio de email
APP_SECRET_KEY=53xy69
composer install
php -S localhost:8000 -t public
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues ou enviar pull requests.
Este projeto é licenciado sob a MIT License.
Files (116) |
File | Role | Description | ||
---|---|---|---|---|
app (6 directories) | ||||
public (2 files, 2 directories) | ||||
.env.example | Data | Auxiliary data | ||
.htaccess | Data | Auxiliary data | ||
composer.json | Data | Auxiliary data | ||
composer.lock | Data | Auxiliary data | ||
database.sql | Data | Auxiliary data | ||
iniciar_estrtutura.bat | Data | Auxiliary data | ||
readme.md | Doc. | Documentation | ||
SECURITY.md | Data | Auxiliary data |
Files (116) | / | app |
Files (116) | / | app | / | controllers |
File | Role | Description |
---|---|---|
AdminBlogPostController.php | Class | Class source |
AdminController.php | Class | Class source |
AdminPortfolioController.php | Class | Class source |
AdminResumeController.php | Class | Class source |
AdminUserController.php | Class | Class source |
HomeController.php | Class | Class source |
LoginController.php | Class | Class source |
NotFoundController.php | Class | Class source |
PageController.php | Class | Class source |
PasswordResetController.php | Class | Class source |
PortifolioController.php | Class | Class source |
RegisterController.php | Class | Class source |
ResumeController.php | Class | Class source |
TwoFactorController.php | Class | Class source |
Files (116) | / | app | / | database |
File | Role | Description | ||
---|---|---|---|---|
models (1 file) | ||||
Connection.php | Class | Class source | ||
Transaction.php | Class | Class source |
Files (116) | / | app | / | lang |
Files (116) | / | app | / | library |
File | Role | Description |
---|---|---|
Auth.php | Class | Class source |
AuthMiddleware.php | Class | Class source |
Controller.php | Class | Class source |
Lang.php | Class | Class source |
Mailer.php | Class | Class source |
Redirect.php | Class | Class source |
Route.php | Class | Class source |
Router.php | Class | Class source |
View.php | Class | Class source |
Files (116) | / | app | / | models |
File | Role | Description |
---|---|---|
BlogPost.php | Class | Class source |
PasswordReset.php | Class | Class source |
PortfolioItem.php | Class | Class source |
Resume.php | Class | Class source |
ResumeEducation.php | Class | Class source |
ResumeExperience.php | Class | Class source |
ResumeSkill.php | Class | Class source |
ResumeSocial.php | Class | Class source |
ResumeTechnology.php | Class | Class source |
User.php | Class | Class source |
Files (116) | / | app | / | views |
File | Role | Description | ||
---|---|---|---|---|
admin (1 file, 4 directories) | ||||
auth (3 files) | ||||
blog (1 file) | ||||
pages (2 files) | ||||
partials (2 files) | ||||
home.php | Example | Example script | ||
login.php | Example | Example script | ||
portifolio.php | Example | Example script | ||
resume.php | Example | Example script | ||
template.php | Example | Example script | ||
two_factor.php | Example | Example script |
Files (116) | / | app | / | views | / | admin |
File | Role | Description | ||
---|---|---|---|---|
blog-posts (3 files) | ||||
portfolio (3 files) | ||||
resumes (3 files) | ||||
users (3 files) | ||||
index.php | Example | Example script |
Files (116) | / | app | / | views | / | admin | / | blog-posts |
File | Role | Description |
---|---|---|
create.php | Example | Example script |
edit.php | Example | Example script |
index.php | Example | Example script |
Files (116) | / | app | / | views | / | admin | / | portfolio |
File | Role | Description |
---|---|---|
create.php | Example | Example script |
edit.php | Example | Example script |
index.php | Example | Example script |
Files (116) | / | app | / | views | / | admin | / | resumes |
File | Role | Description |
---|---|---|
create.php | Example | Example script |
edit.php | Example | Example script |
index.php | Example | Example script |
Files (116) | / | app | / | views | / | admin | / | users |
File | Role | Description |
---|---|---|
create.php | Example | Example script |
edit.php | Example | Example script |
index.php | Example | Example script |
Files (116) | / | app | / | views | / | auth |
File | Role | Description |
---|---|---|
esqueci_senha.php | Example | Example script |
register.php | Example | Example script |
reseta_senha.php | Example | Example script |
Files (116) | / | app | / | views | / | pages |
File | Role | Description |
---|---|---|
privacy-policy.php | Example | Example script |
terms-and-conditions.php | Example | Example script |
Files (116) | / | app | / | views | / | partials |
File | Role | Description |
---|---|---|
footer.php | Aux. | Configuration script |
nav.php | Example | Example script |
Files (116) | / | public |
File | Role | Description | ||
---|---|---|---|---|
assets (2 directories) | ||||
logs (1 file) | ||||
index.php | Example | Example script | ||
iniciar.php | Example | Example script |
Files (116) | / | public | / | assets | / | css |
File | Role | Description | ||
---|---|---|---|---|
font-awesome-4.7.0 (1 file, 4 directories) | ||||
fonts-google.css | Data | Auxiliary data | ||
w3.css | Data | Auxiliary data |
Files (116) | / | public | / | assets | / | css | / | font-awesome-4.7.0 |
File | Role | Description | ||
---|---|---|---|---|
css (2 files) | ||||
fonts (1 file) | ||||
less (14 files) | ||||
scss (14 files) | ||||
HELP-US-OUT.txt | Doc. | Documentation |
Files (116) | / | public | / | assets | / | css | / | font-awesome-4.7.0 | / | css |
File | Role | Description |
---|---|---|
font-awesome.css | Data | Auxiliary data |
font-awesome.min.css | Data | Auxiliary data |
Files (116) | / | public | / | assets | / | css | / | font-awesome-4.7.0 | / | fonts |
File | Role | Description |
---|---|---|
fontawesome-webfont.svg | Data | Auxiliary data |
Files (116) | / | public | / | assets | / | css | / | font-awesome-4.7.0 | / | less |
File | Role | Description |
---|---|---|
animated.less | Data | Auxiliary data |
bordered-pulled.less | Data | Auxiliary data |
core.less | Data | Auxiliary data |
fixed-width.less | Data | Auxiliary data |
font-awesome.less | Data | Auxiliary data |
icons.less | Data | Auxiliary data |
larger.less | Data | Auxiliary data |
list.less | Data | Auxiliary data |
mixins.less | Data | Auxiliary data |
path.less | Data | Auxiliary data |
rotated-flipped.less | Data | Auxiliary data |
screen-reader.less | Data | Auxiliary data |
stacked.less | Data | Auxiliary data |
variables.less | Data | Auxiliary data |
Files (116) | / | public | / | assets | / | css | / | font-awesome-4.7.0 | / | scss |
File | Role | Description |
---|---|---|
font-awesome.scss | Data | Auxiliary data |
_animated.scss | Data | Auxiliary data |
_bordered-pulled.scss | Data | Auxiliary data |
_core.scss | Data | Auxiliary data |
_fixed-width.scss | Data | Auxiliary data |
_icons.scss | Data | Auxiliary data |
_larger.scss | Data | Auxiliary data |
_list.scss | Data | Auxiliary data |
_mixins.scss | Data | Auxiliary data |
_path.scss | Data | Auxiliary data |
_rotated-flipped.scss | Data | Auxiliary data |
_screen-reader.scss | Data | Auxiliary data |
_stacked.scss | Data | Auxiliary data |
_variables.scss | Data | Auxiliary data |
Files (116) | / | public | / | assets | / | plugin | / | markdown |
File | Role | Description |
---|---|---|
custom-markdown.js | Data | Auxiliary data |
simplemde.min.css | Data | Auxiliary data |
simplemde.min.js | Data | Auxiliary data |
The PHP Classes site has supported package installation using the Composer tool since 2013, as you may verify by reading this instructions page. |
Install with Composer |
Version Control | Unique User Downloads | Download Rankings | |||||||||||||||
100% |
|
|
Applications that use this package |
If you know an application of this package, send a message to the author to add a link here.