Un template PHP moderne inspiré de Next.js avec des composants UI inspirés de shadcn/ui.
- Design moderne : Interface inspirée de Next.js avec des composants UI élégants
- Système de composants : Architecture modulaire avec 30+ composants UI
- Responsive : Design adaptatif pour tous les appareils
- Performance : Code optimisé et léger
- Accessibilité : Composants conformes aux standards WCAG
- Métadonnées dynamiques : Configuration via fichier JSON
php-site/
├── build/ # Site web (index.php, components, assets, etc.)
├── deploy/ # Configuration Docker et métadonnées
│ ├── docker-compose.yaml
│ ├── docker-compose.dev.yaml
│ └── metadata.json
├── docs/ # Documentation
├── test/ # Tests
└── README.md # Ce fichier
- Lancer avec Docker Compose
cd php-site/deploy
docker-compose up -d
- Accéder au site
- Site principal : http://localhost:8000
- phpMyAdmin : http://localhost:8080
- Arrêter les services
docker-compose down
cd php-site/deploy
docker-compose -f docker-compose.dev.yaml up -d
cd php-site/build
php -S localhost:8000
Modifiez le fichier deploy/metadata.json
pour personnaliser :
- Nom et description du site
- Navigation
- Liens du footer
- Informations du challenge CTF
- Port du site : 8000
- Port MySQL : 3306
- Port phpMyAdmin : 8080
- Base de données : cyberctf
- Utilisateur : cyberctf
- Mot de passe : cyberctf123
- Button : Boutons avec variantes et états
- Card : Conteneurs avec ombres et bordures
- Input : Champs de saisie stylisés
- Badge : Étiquettes et badges
- Alert : Messages d'alerte
- Dialog : Modales et dialogues
- Tabs : Navigation par onglets
- Table : Tableaux de données
- Progress : Barres de progression
- Skeleton : Placeholders de chargement
- ChallengeToast : Notifications pour les défis CTF
- Avatar : Images de profil
- Breadcrumb : Navigation hiérarchique
<?php include 'components/ui/Button.php'; ?>
<?php echo Button::render('Cliquer ici', ['variant' => 'primary']); ?>
<?php
require_once 'config/metadata.php';
$siteName = Metadata::get('site.name');
$challengeTitle = Metadata::get('challenge.title');
?>
cd php-site/build
npm test
Consultez le dossier docs/
pour :
- Guide d'utilisation des composants
- Configuration avancée
- Bonnes pratiques
- Exemples d'implémentation
- Modifiez
deploy/docker-compose.yaml
pour la production - Configurez les variables d'environnement
- Déployez avec
docker-compose up -d
- Uploadez le contenu du dossier
build/
sur votre serveur - Configurez votre serveur web pour pointer vers
index.php
- Vérifiez les permissions des dossiers
- Fork le projet
- Créez une branche pour votre fonctionnalité
- Committez vos changements
- Poussez vers la branche
- Ouvrez une Pull Request
Ce projet est sous licence MIT. Voir le fichier LICENSE
pour plus de détails.
- Documentation : Consultez le dossier
docs/
- Issues : Ouvrez une issue sur GitHub
- Discussions : Utilisez les discussions GitHub
Développé avec ❤️ pour la communauté CyberCTF