First commiut
This commit is contained in:
commit
8e81736a94
30 changed files with 1596 additions and 0 deletions
21
.editorconfig
Normal file
21
.editorconfig
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
[*.{css,scss,less,js,json,ts,sass,html,hbs,mustache,phtml,html.twig,md,yml}]
|
||||||
|
charset = utf-8
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 2
|
||||||
|
end_of_line = lf
|
||||||
|
insert_final_newline = true
|
||||||
|
trim_trailing_whitespace = true
|
||||||
|
|
||||||
|
[*.md]
|
||||||
|
indent_size = 4
|
||||||
|
trim_trailing_whitespace = false
|
||||||
|
|
||||||
|
[site/templates/**.php]
|
||||||
|
indent_size = 2
|
||||||
|
|
||||||
|
[site/snippets/**.php]
|
||||||
|
indent_size = 2
|
||||||
|
|
||||||
|
[package.json,.{babelrc,editorconfig,eslintrc,lintstagedrc,stylelintrc}]
|
||||||
|
indent_style = space
|
||||||
|
indent_size = 2
|
||||||
74
.gitignore
vendored
Normal file
74
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,74 @@
|
||||||
|
# System files
|
||||||
|
# ------------
|
||||||
|
|
||||||
|
Icon
|
||||||
|
.DS_Store
|
||||||
|
|
||||||
|
# Temporary files
|
||||||
|
# ---------------
|
||||||
|
|
||||||
|
/media/*
|
||||||
|
!/media/index.html
|
||||||
|
|
||||||
|
# Lock files
|
||||||
|
# ---------------
|
||||||
|
|
||||||
|
.lock
|
||||||
|
|
||||||
|
# Editors
|
||||||
|
# (sensitive workspace files)
|
||||||
|
# ---------------------------
|
||||||
|
*.sublime-workspace
|
||||||
|
/.vscode
|
||||||
|
/.idea
|
||||||
|
|
||||||
|
# -------------SECURITY-------------
|
||||||
|
# NEVER publish these files via Git!
|
||||||
|
# -------------SECURITY-------------
|
||||||
|
|
||||||
|
# Cache Files
|
||||||
|
# ---------------
|
||||||
|
|
||||||
|
/site/cache/*
|
||||||
|
!/site/cache/index.html
|
||||||
|
|
||||||
|
# Accounts
|
||||||
|
# ---------------
|
||||||
|
|
||||||
|
/site/accounts/*
|
||||||
|
!/site/accounts/index.html
|
||||||
|
|
||||||
|
# Sessions
|
||||||
|
# ---------------
|
||||||
|
|
||||||
|
/site/sessions/*
|
||||||
|
!/site/sessions/index.html
|
||||||
|
|
||||||
|
# License
|
||||||
|
# ---------------
|
||||||
|
|
||||||
|
/site/config/.license
|
||||||
|
|
||||||
|
# Claude settings
|
||||||
|
# ---------------
|
||||||
|
.claude
|
||||||
|
|
||||||
|
# Content
|
||||||
|
# ---------------
|
||||||
|
content/
|
||||||
|
/content/*
|
||||||
|
|
||||||
|
# Media
|
||||||
|
# ---------------
|
||||||
|
media/
|
||||||
|
/media/*
|
||||||
|
|
||||||
|
# Vendor
|
||||||
|
# ---------------
|
||||||
|
vendor/
|
||||||
|
/vendor/*
|
||||||
|
|
||||||
|
# Kirby
|
||||||
|
# ---------------
|
||||||
|
kirby/
|
||||||
|
/kirby/*
|
||||||
67
.htaccess
Normal file
67
.htaccess
Normal file
|
|
@ -0,0 +1,67 @@
|
||||||
|
# Kirby .htaccess
|
||||||
|
# revision 2023-07-22
|
||||||
|
|
||||||
|
# rewrite rules
|
||||||
|
<IfModule mod_rewrite.c>
|
||||||
|
|
||||||
|
# enable awesome urls. i.e.:
|
||||||
|
# http://yourdomain.com/about-us/team
|
||||||
|
RewriteEngine on
|
||||||
|
|
||||||
|
# make sure to set the RewriteBase correctly
|
||||||
|
# if you are running the site in a subfolder;
|
||||||
|
# otherwise links or the entire site will break.
|
||||||
|
#
|
||||||
|
# If your homepage is http://yourdomain.com/mysite,
|
||||||
|
# set the RewriteBase to:
|
||||||
|
#
|
||||||
|
# RewriteBase /mysite
|
||||||
|
|
||||||
|
# In some environments it's necessary to
|
||||||
|
# set the RewriteBase to:
|
||||||
|
#
|
||||||
|
# RewriteBase /
|
||||||
|
|
||||||
|
# block files and folders beginning with a dot, such as .git
|
||||||
|
# except for the .well-known folder, which is used for Let's Encrypt and security.txt
|
||||||
|
RewriteRule (^|/)\.(?!well-known\/) index.php [L]
|
||||||
|
|
||||||
|
# block all files in the content folder from being accessed directly
|
||||||
|
RewriteRule ^content/(.*) index.php [L]
|
||||||
|
|
||||||
|
# block all files in the site folder from being accessed directly
|
||||||
|
RewriteRule ^site/(.*) index.php [L]
|
||||||
|
|
||||||
|
# block direct access to Kirby and the Panel sources
|
||||||
|
RewriteRule ^kirby/(.*) index.php [L]
|
||||||
|
|
||||||
|
# make site links work
|
||||||
|
RewriteCond %{REQUEST_FILENAME} !-f
|
||||||
|
RewriteCond %{REQUEST_FILENAME} !-d
|
||||||
|
RewriteRule ^(.*) index.php [L]
|
||||||
|
|
||||||
|
</IfModule>
|
||||||
|
|
||||||
|
# pass the Authorization header to PHP
|
||||||
|
SetEnvIf Authorization "(.+)" HTTP_AUTHORIZATION=$1
|
||||||
|
|
||||||
|
# compress text file responses
|
||||||
|
<IfModule mod_deflate.c>
|
||||||
|
AddOutputFilterByType DEFLATE text/plain
|
||||||
|
AddOutputFilterByType DEFLATE text/html
|
||||||
|
AddOutputFilterByType DEFLATE text/css
|
||||||
|
AddOutputFilterByType DEFLATE text/javascript
|
||||||
|
AddOutputFilterByType DEFLATE application/json
|
||||||
|
AddOutputFilterByType DEFLATE application/javascript
|
||||||
|
AddOutputFilterByType DEFLATE application/x-javascript
|
||||||
|
</IfModule>
|
||||||
|
|
||||||
|
# set security headers in all responses
|
||||||
|
<IfModule mod_headers.c>
|
||||||
|
|
||||||
|
# serve files as plain text if the actual content type is not known
|
||||||
|
# (hardens against attacks from malicious file uploads)
|
||||||
|
Header set Content-Type "text/plain" "expr=-z %{CONTENT_TYPE}"
|
||||||
|
Header set X-Content-Type-Options "nosniff"
|
||||||
|
|
||||||
|
</IfModule>
|
||||||
36
README.md
Normal file
36
README.md
Normal file
|
|
@ -0,0 +1,36 @@
|
||||||
|
<img src="http://getkirby.com/assets/images/github/plainkit.jpg" width="300">
|
||||||
|
|
||||||
|
**Kirby: the CMS that adapts to any project, loved by developers and editors alike.**
|
||||||
|
The Plainkit is a minimal Kirby setup with the basics you need to start a project from scratch. It is the ideal choice if you are already familiar with Kirby and want to start step-by-step.
|
||||||
|
|
||||||
|
You can learn more about Kirby at [getkirby.com](https://getkirby.com).
|
||||||
|
|
||||||
|
### Try Kirby for free
|
||||||
|
|
||||||
|
You can try Kirby and the Plainkit on your local machine or on a test server as long as you need to make sure it is the right tool for your next project. … and when you’re convinced, [buy your license](https://getkirby.com/buy).
|
||||||
|
|
||||||
|
### Get going
|
||||||
|
|
||||||
|
Read our guide on [how to get started with Kirby](https://getkirby.com/docs/guide/quickstart).
|
||||||
|
|
||||||
|
You can [download the latest version](https://github.com/getkirby/plainkit/archive/main.zip) of the Plainkit.
|
||||||
|
If you are familiar with Git, you can clone Kirby's Plainkit repository from Github.
|
||||||
|
|
||||||
|
git clone https://github.com/getkirby/plainkit.git
|
||||||
|
|
||||||
|
## What's Kirby?
|
||||||
|
|
||||||
|
- **[getkirby.com](https://getkirby.com)** – Get to know the CMS.
|
||||||
|
- **[Try it](https://getkirby.com/try)** – Take a test ride with our online demo. Or download one of our kits to get started.
|
||||||
|
- **[Documentation](https://getkirby.com/docs/guide)** – Read the official guide, reference and cookbook recipes.
|
||||||
|
- **[Issues](https://github.com/getkirby/kirby/issues)** – Report bugs and other problems.
|
||||||
|
- **[Feedback](https://feedback.getkirby.com)** – You have an idea for Kirby? Share it.
|
||||||
|
- **[Forum](https://forum.getkirby.com)** – Whenever you get stuck, don't hesitate to reach out for questions and support.
|
||||||
|
- **[Discord](https://chat.getkirby.com)** – Hang out and meet the community.
|
||||||
|
- **[Mastodon](https://mastodon.social/@getkirby)** – Spread the word.
|
||||||
|
- **[Bluesky](https://bsky.app/profile/getkirby.com)** – Spread the word.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
© 2009 Bastian Allgeier
|
||||||
|
[getkirby.com](https://getkirby.com) · [License agreement](https://getkirby.com/license)
|
||||||
0
assets/css/style.scss
Normal file
0
assets/css/style.scss
Normal file
BIN
assets/materials/expanding-filters.png
Normal file
BIN
assets/materials/expanding-filters.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 246 KiB |
BIN
assets/materials/taxinomie.png
Normal file
BIN
assets/materials/taxinomie.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 378 KiB |
39
composer.json
Normal file
39
composer.json
Normal file
|
|
@ -0,0 +1,39 @@
|
||||||
|
{
|
||||||
|
"name": "getkirby/plainkit",
|
||||||
|
"description": "Kirby Plainkit",
|
||||||
|
"type": "project",
|
||||||
|
"keywords": [
|
||||||
|
"kirby",
|
||||||
|
"cms",
|
||||||
|
"plainkit"
|
||||||
|
],
|
||||||
|
"authors": [
|
||||||
|
{
|
||||||
|
"name": "Bastian Allgeier",
|
||||||
|
"email": "bastian@getkirby.com",
|
||||||
|
"homepage": "https://getkirby.com"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"homepage": "https://getkirby.com",
|
||||||
|
"support": {
|
||||||
|
"email": "support@getkirby.com",
|
||||||
|
"forum": "https://forum.getkirby.com",
|
||||||
|
"source": "https://github.com/getkirby/plainkit"
|
||||||
|
},
|
||||||
|
"require": {
|
||||||
|
"php": "~8.2.0 || ~8.3.0 || ~8.4.0 || ~8.5.0",
|
||||||
|
"getkirby/cms": "^5.2"
|
||||||
|
},
|
||||||
|
"config": {
|
||||||
|
"allow-plugins": {
|
||||||
|
"getkirby/composer-installer": true
|
||||||
|
},
|
||||||
|
"optimize-autoloader": true
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"start": [
|
||||||
|
"Composer\\Config::disableProcessTimeout",
|
||||||
|
"@php -S localhost:8000 kirby/router.php"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
1219
composer.lock
generated
Normal file
1219
composer.lock
generated
Normal file
File diff suppressed because it is too large
Load diff
5
index.php
Normal file
5
index.php
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
require 'kirby/bootstrap.php';
|
||||||
|
|
||||||
|
echo (new Kirby)->render();
|
||||||
0
site/accounts/index.html
Normal file
0
site/accounts/index.html
Normal file
22
site/blueprints/pages/card.yml
Normal file
22
site/blueprints/pages/card.yml
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
title: Fiche
|
||||||
|
|
||||||
|
tabs:
|
||||||
|
content:
|
||||||
|
label: Contenu
|
||||||
|
columns:
|
||||||
|
- width: 1/2
|
||||||
|
sections:
|
||||||
|
mediaSection:
|
||||||
|
type: fields
|
||||||
|
fields:
|
||||||
|
vue3DSection:
|
||||||
|
type: files
|
||||||
|
label: Vue 3D
|
||||||
|
multiple: false
|
||||||
|
layout: cards
|
||||||
|
gallerySection:
|
||||||
|
type: files
|
||||||
|
label: Galerie
|
||||||
|
layout: cards
|
||||||
|
files: tabs/files
|
||||||
|
seo: seo/page
|
||||||
7
site/blueprints/pages/database.yml
Normal file
7
site/blueprints/pages/database.yml
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
title: Base de données
|
||||||
|
|
||||||
|
tabs:
|
||||||
|
content:
|
||||||
|
label: Contenu
|
||||||
|
tabs: tabs/files
|
||||||
|
seo: seo/page
|
||||||
21
site/blueprints/pages/default.yml
Normal file
21
site/blueprints/pages/default.yml
Normal file
|
|
@ -0,0 +1,21 @@
|
||||||
|
title: Default Page
|
||||||
|
|
||||||
|
columns:
|
||||||
|
main:
|
||||||
|
width: 2/3
|
||||||
|
sections:
|
||||||
|
fields:
|
||||||
|
type: fields
|
||||||
|
fields:
|
||||||
|
text:
|
||||||
|
type: textarea
|
||||||
|
size: huge
|
||||||
|
sidebar:
|
||||||
|
width: 1/3
|
||||||
|
sections:
|
||||||
|
pages:
|
||||||
|
type: pages
|
||||||
|
template: default
|
||||||
|
files:
|
||||||
|
type: files
|
||||||
|
|
||||||
7
site/blueprints/pages/home.yml
Normal file
7
site/blueprints/pages/home.yml
Normal file
|
|
@ -0,0 +1,7 @@
|
||||||
|
title: Accueil
|
||||||
|
|
||||||
|
tabs:
|
||||||
|
content:
|
||||||
|
label: Contenu
|
||||||
|
files: tabs/files
|
||||||
|
seo: seo/page
|
||||||
14
site/blueprints/site.yml
Normal file
14
site/blueprints/site.yml
Normal file
|
|
@ -0,0 +1,14 @@
|
||||||
|
title: Site
|
||||||
|
|
||||||
|
tabs:
|
||||||
|
content:
|
||||||
|
label: Contenu
|
||||||
|
sections:
|
||||||
|
database:
|
||||||
|
label: Base de données
|
||||||
|
type: pages
|
||||||
|
parent: page('base-de-donnees')
|
||||||
|
layout: cards
|
||||||
|
template: card
|
||||||
|
files: tabs/files
|
||||||
|
seo: seo/site
|
||||||
16
site/blueprints/tabs/files.yml
Normal file
16
site/blueprints/tabs/files.yml
Normal file
|
|
@ -0,0 +1,16 @@
|
||||||
|
label: Fichiers
|
||||||
|
icon: attachment
|
||||||
|
columns:
|
||||||
|
- width: 1/4
|
||||||
|
fields:
|
||||||
|
manageFilesInfo:
|
||||||
|
label: false
|
||||||
|
type: info
|
||||||
|
text: À droite, tous les fichiers que stocke la page. Supprimez les fichiers inutilisés pour éviter de surcharger inutilement le serveur.
|
||||||
|
|
||||||
|
- width: 3/4
|
||||||
|
sections:
|
||||||
|
filesSection:
|
||||||
|
label: Fichiers
|
||||||
|
type: files
|
||||||
|
batch: true
|
||||||
0
site/cache/index.html
vendored
Normal file
0
site/cache/index.html
vendored
Normal file
5
site/config/config.php
Normal file
5
site/config/config.php
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
return [
|
||||||
|
'debug' => true
|
||||||
|
];
|
||||||
0
site/sessions/index.html
Normal file
0
site/sessions/index.html
Normal file
8
site/snippets/card.php
Normal file
8
site/snippets/card.php
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
<!--
|
||||||
|
- titre
|
||||||
|
- date
|
||||||
|
- image
|
||||||
|
- tags (cf. assets/materials/taxinomie.png)
|
||||||
|
- début description ?
|
||||||
|
- auteur de la fiche ?
|
||||||
|
-->
|
||||||
4
site/snippets/filters.php
Normal file
4
site/snippets/filters.php
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
<!--
|
||||||
|
- cf. assets/materials/taxinomie.png
|
||||||
|
- ref : assets/materials/expanding-filters.png (https://expanding.adrien-payet.fr/en/database)
|
||||||
|
-->
|
||||||
4
site/snippets/footer.php
Normal file
4
site/snippets/footer.php
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
|
||||||
|
<?php snippet('seo/schemas'); ?>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
10
site/snippets/header.php
Normal file
10
site/snippets/header.php
Normal file
|
|
@ -0,0 +1,10 @@
|
||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||||
|
<title>Document</title>
|
||||||
|
<?php snippet('seo/head'); ?>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<?php snippet('nav') ?>
|
||||||
0
site/snippets/index.html
Normal file
0
site/snippets/index.html
Normal file
4
site/snippets/nav.php
Normal file
4
site/snippets/nav.php
Normal file
|
|
@ -0,0 +1,4 @@
|
||||||
|
<!--
|
||||||
|
- logo
|
||||||
|
- menu
|
||||||
|
-->
|
||||||
2
site/templates/card.php
Normal file
2
site/templates/card.php
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
<?php snippet('header') ?>
|
||||||
|
<?php snippet('footer') ?>
|
||||||
2
site/templates/database.php
Normal file
2
site/templates/database.php
Normal file
|
|
@ -0,0 +1,2 @@
|
||||||
|
<?php snippet('header') ?>
|
||||||
|
<?php snippet('footer') ?>
|
||||||
1
site/templates/default.php
Normal file
1
site/templates/default.php
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
<h1><?= $page->title() ?></h1>
|
||||||
8
site/templates/home.php
Normal file
8
site/templates/home.php
Normal file
|
|
@ -0,0 +1,8 @@
|
||||||
|
<?php snippet('header') ?>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
- section recherche / filtres
|
||||||
|
- grille d'éléments (card.php)
|
||||||
|
-->
|
||||||
|
|
||||||
|
<?php snippet('footer') ?>
|
||||||
Loading…
Add table
Add a link
Reference in a new issue