The source code for my personal website
Find a file
2024-07-27 06:31:15 +02:00
assets Update assets/common/styles.css 2024-06-23 07:52:14 +02:00
docs Was so fucking drunk, fixed description. 2024-07-27 06:31:15 +02:00
.gitignore Add atom feed generation. 2024-07-21 00:04:51 +02:00
database_schema.sql update db schema 2024-07-20 16:50:33 +02:00
deploy-local hopefully final deployment fixes 2023-12-21 17:20:36 +01:00
deploy-server hopefully final deployment fixes 2023-12-21 17:20:36 +01:00
LICENSE Change license to prohibit AI training 2024-06-29 11:19:25 +02:00
README.md fix typo 2024-07-22 23:19:48 +02:00

My personal website

The goal of this website is to serve as my personal dumping grounds for some small web projects, a blog, maybe a booru gallery. Idk yet.

Deploy guide

If you want to use my website as some sort of a template for your own, feel free to do so! I would appreciate if you give me some form of a credit in the footer of your page, especially if you are going to just re-skin my page for your own blog site, but I do not require it. Anyways, let's get to the how.

  • My page is written in PHP, I run it on an apache server, but it probably should run on nginx as well, I am not sure though, as I have never tested it.
  • I am not going to walk you through LAMP setup, as that can be found elsewhere.
  • In the root of the project you will find a database.sql file, you should be able to use it to deploy my database schema. I use mariadb, but if you use mysql it should work as well.
  • The database is documented through comments viewable in phpmyadmin, if you have trouble displaying them in your database manager, let me know and I might get to writing some basic setup instructions here.
  • Please create the file docs/common/config.php which will store database credentials that will then be used in docs/common/header.php to connect to the db and set the global variable $conn to the PDO connection object, you can use that in your own functions, if you add any.
  • The file should define the following constants:
    • SQL_HOSTNAME
    • SQL_USERNAME
    • SQL_PASSWORD
    • SQL_DATABASE
  • Changes to php.ini should include:
    • Enabling the pdo_mysql extension
    • Setting the file_uploads on and setting max upload (and post) size, if you are going to make use of that function. Please note that it is meant for admin use only and normal users shouldn't have access to it as it is unprotected.
  • Also make sure that the directory /assets/uploads/ exists and php has write permissions there - if you are going to use that file upload functionality, that is.
  • Php should also have write permissions in the docs/www/blog directory, so it can update the atom feed.
  • If you have problems connecting to the database, you can try printing the PDO exception being caught there in the function attempt_sql_connect(), but be careful not to leave it in production, as it reveals some information you might want to keep from users.
  • The basic skeleton for any document should be:
<?php
 $COMMONS = $_SERVER['DOCUMENT_ROOT'] . "/../common";

 include_once($COMMONS."/header.php");

// Display the header with desired title.
display_header(<PAGETITLE>);
?>

<!--
Your main content here, try to wrap it in <article> tags for nice padding
-->

<?php
include_once($COMMONS."/footer.php");
?>
  • Do check out the already existing css rules before adding your own, the rule for what you are trying to create might already exist. I might add a more comprehensive guide/documentation for the styles once I find myself getting lost in them, but I don't find it necessary yet so I will not bother. If you do, feel free to send me a pull request.
  • Hmm, what else may I be missing? Not sure now, if you miss something lmk. So I guess have fun!