| 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 (2 months 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.
 If you know an application of this package, send a message to the author to add a link here.