https://github.com/tbreuss/my-website
My personal website built with Mithril.js and FlightPHP
https://github.com/tbreuss/my-website
flightphp mithriljs single-page-app spa
Last synced: 7 months ago
JSON representation
My personal website built with Mithril.js and FlightPHP
- Host: GitHub
- URL: https://github.com/tbreuss/my-website
- Owner: tbreuss
- Created: 2018-09-01T06:18:56.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2025-10-23T04:18:57.000Z (7 months ago)
- Last Synced: 2025-10-23T06:13:40.574Z (7 months ago)
- Topics: flightphp, mithriljs, single-page-app, spa
- Language: PHP
- Homepage: https://www.tebe.ch
- Size: 855 KB
- Stars: 3
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# My Website
This is the code for my personal website which is built with Mithril.js and FlightPHP.
-
-
The design is heavily inspired by:
-
## Install
git clone https://github.com/tbreuss/my-website.git
cd my-website
npm install
composer install
## Add Database
Create a SQLite database with the following schema.
~~~sqlite
CREATE TABLE "article" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"format" TEXT NULL ,
"title" VARCHAR(100) NULL ,
"slug" VARCHAR(50) NULL ,
"abstract" TEXT NULL ,
"content" TEXT NULL ,
"reading_time" INTEGER NULL ,
"created_at" DATETIME NULL ,
"updated_at" DATETIME NULL
);
CREATE TABLE "photo" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"type" TINYINT NOT NULL DEFAULT '0' ,
"name" VARCHAR(500) NOT NULL DEFAULT '' ,
"description" VARCHAR(500) NULL ,
"photodate" DATE NULL ,
"abstract" VARCHAR(500) NOT NULL DEFAULT '' ,
"extension" VARCHAR(10) NULL ,
"panorama" TINYINT NOT NULL DEFAULT '0' ,
"loop" TINYINT NOT NULL DEFAULT '0' ,
"counter" INTEGER NOT NULL DEFAULT '0' ,
"opened" DATETIME NULL ,
"deleted" DATETIME NULL ,
"created" DATETIME NULL ,
"modified" DATETIME NULL
);
CREATE TABLE "page" (
"id" INTEGER PRIMARY KEY AUTOINCREMENT,
"format" TEXT NULL ,
"title" VARCHAR(100) NULL ,
"slug" VARCHAR(50) NULL ,
"content" TEXT NULL ,
"created_at" DATETIME NULL ,
"updated_at" DATETIME NULL
);
~~~
## Add Configuration
Copy `backend/config/example.php` to `backend/config/main.php` and edit settings
## Run
Frontend
npm run start
Backend
php -S localhost:9999 -t web/
Open in your browser.