Laravel based code that runs my personal website https://jonnybarnes.uk
  • PHP 83.3%
  • Blade 13%
  • JavaScript 1.8%
  • CSS 1.7%
  • HTML 0.1%
  • Other 0.1%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jonny Barnes 5483712e29
Reject Micropub updates that would do nothing
Updating a property we don't support returned a 200 with no change, so
clients believed the update had worked. Return invalid_request instead,
and apply nothing if any part of the request is unsupported.

This also covers empty operations, syndication URLs we have nowhere to
store, and photos added without an https URL, all of which were being
silently ignored.

Mastodon and Bluesky URLs can now be added and deleted through updates,
as they are our active syndication targets and q=source returns them.
Mastodon can be on any host, so accept the instances we have syndication
targets for rather than hard-coding one.

Stop reading instagram_url in q=source, as notes have no such column.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 21:26:26 +00:00
app Reject Micropub updates that would do nothing 2026-11-02 21:26:26 +00:00
bootstrap Fix CSRF exemption and array-input crash on revocation/introspection 2026-08-13 17:03:43 +01:00
config Send Brrr push notifications for new webmentions 2026-08-02 18:07:39 +01:00
database Drop the unused notes.shorturl column 2026-11-01 15:29:05 +00:00
public Persist the theme selector choice across page loads 2026-10-24 20:23:02 +01:00
resources Link to likes through the uri attribute in the like template 2026-11-01 15:29:00 +00:00
routes Return 404 for non-numeric like and bookmark IDs 2026-10-29 19:01:28 +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 Reject Micropub updates that would do nothing 2026-11-02 21:26:26 +00:00
.editorconfig Initial work on adding passkeys 2023-08-25 13:43:51 +01:00
.env.example Send Brrr push notifications for new webmentions 2026-08-02 18:07:39 +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 Replace JWT Micropub tokens with revocable opaque tokens 2026-08-13 16:07:07 +01:00
composer.lock Replace JWT Micropub tokens with revocable opaque tokens 2026-08-13 16:07:07 +01: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 Upgrade to Laravel 13 2026-04-07 09:01:19 +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 Bring back winter snow effect, gated by an admin setting 2026-08-23 10:17:26 +01:00
package.json Bring back winter snow effect, gated by an admin setting 2026-08-23 10:17:26 +01: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 Upgrade to Laravel 13 2026-04-07 09:01:19 +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 you’re 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 shouldn’t be too hard.