Laravel based code that runs my personal website https://jonnybarnes.uk
  • PHP 82.5%
  • Blade 14.3%
  • JavaScript 1.8%
  • CSS 1.2%
  • HTML 0.1%
  • Other 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jonny Barnes 24cb6d61aa
Implement micropub update support with clean exception-based error handling
- Add MicropubUnsupportedModelException for non-note update attempts
- Refactor UpdateHandler to throw exceptions instead of returning JsonResponse objects; extract applySyndication() to DRY up duplicated syndication URL mapping
- Fix MicropubController: InvalidTokenScopeException now returns 401 + insufficient_scope; add catches for ModelNotFoundException (404) and MicropubUnsupportedModelException (500); updates return 200 not 201
- Slim MicropubRequest.normalizeMicropubJson() to branch on action type, keeping update and create fields cleanly separated
- Update tests to match corrected status codes and error keys; remove markTestSkipped() from all update tests

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-02-22 10:15:35 +00:00
app Implement micropub update support with clean exception-based error handling 2026-02-22 10:15:35 +00:00
bootstrap Update dependencies 2025-10-30 11:49:54 +00:00
config Allow files to be added to notes 2025-12-27 17:58:43 +00:00
database Images can be uploaded with alt text 2026-01-04 10:07:25 +00:00
public Update dependencies 2026-02-21 17:06:37 +00:00
resources Images can be uploaded with alt text 2026-01-04 10:07:25 +00:00
routes Redesign v2025.1 2025-12-11 17:17:01 +00:00
scripts Redesign v2025.1 2025-12-11 17:17:01 +00:00
storage Host images locally 2024-10-25 20:40:52 +01:00
tests Implement micropub update support with clean exception-based error handling 2026-02-22 10:15:35 +00:00
.editorconfig Initial work on adding passkeys 2023-08-25 13:43:51 +01:00
.env.example Fix PasskeysController with new webauthn library version 2025-04-07 19:44:13 +01:00
.gitattributes Remove un-needed config files 2025-04-10 21:03:22 +01:00
.gitignore Remove un-needed config files 2025-04-10 21:03:22 +01:00
.stylelintrc Initial work on adding passkeys 2023-08-25 13:43:51 +01:00
artisan Upgrade to Laravel 11 2024-03-19 20:13:36 +00:00
composer.json Update dependencies 2026-02-21 17:06:37 +00:00
composer.lock Update dependencies 2026-02-21 17:06:37 +00:00
docker-compose.yml Switch local setup to PHP8.5 2025-12-13 15:53:00 +00:00
eslint.config.js Update eslint config 2024-06-08 20:55:34 +01:00
helpers.php Update Laravel to v12 2025-04-01 21:10:30 +01:00
jbuk_dev_backup.dump Update dependencies 2026-02-21 17:06:37 +00:00
license.md Add a license file 2016-09-17 21:20:57 +01:00
package-lock.json Update dependencies 2026-02-21 17:06:37 +00:00
package.json Update dependencies 2026-02-21 17:06:37 +00:00
phpcs.xml Fixing various phpcs issues 2019-10-27 19:31:33 +00:00
phpunit.xml Update dependencies 2024-10-23 09:16:11 +01:00
pint.json Configure Laravel Pint 2022-07-09 10:07:59 +01:00
readme.md Tweak the readme 2023-04-08 16:18:02 +01:00
server.php Fix files with Laravel Pint 2022-07-09 10:08:26 +01:00

jonnybarnes.uk

This is the code that runs my website, jonnybarnes.uk.

In theory this is usable by others now 🚀

Set up the database, this software needs PostgreSQL, after installing:

$ createdb -E utf8 db_name

First get the code, and make sure youre on the master branch. This branch will only have tagged releases:

$ git clone https://github.com/jonnybarnes/jonnybarnes.uk mysite.com
$ cd mysite.com
$ git checkout master

Then we need to set up the environment variables that the app will use.

$ cp .env.example .env
$ vim .env

Fill in the various variables. Then we can set up the app:

$ composer install
$ php artisan key:generate
$ php artisan migrate

Now we need to edit some config values. In config/app.php edit name.

Some other things that should be changed. Go to resources/views/master.blade.php, you may not want to link to a projects page. Also in the <head> the two last links are to my profile pic and pgp key, ammend/remove as desired.

Now point your server to public/index.php et viola. Essentially this is a Laravel app so debugging things shouldnt be too hard.