1f5e151314
Ignore more blocks when getting plaintext
2022-09-25 21:54:02 +01:00
92f1a17b9f
Always show pagination buttons
2022-09-25 21:10:35 +01:00
79c9550ee2
Make sure commento works in dark mode
2022-09-23 17:27:03 +01:00
dcb8162517
Ensure tags use code font
2022-09-23 16:44:22 +01:00
e4476e1b2a
Ensure heading ids are always valid ids
2022-09-23 15:36:23 +01:00
bee03a8e64
Add link to tags list to tags on content details
2022-09-23 08:45:17 +01:00
4b10ce6f6f
Restyle content details to be icons rather than tags
...
This looks much nicer, and is simpler to work with
2022-09-23 08:34:49 +01:00
bccc948995
Restructure fields in editor pages
...
Move as much as possible out of the "Content" tab, so that's just about
the actual content
2022-09-21 13:30:06 +01:00
fb15c480a3
Add link to full content in iframe block
2022-09-08 20:58:13 +01:00
c6c913c3e7
Make subtitle more visually distinct from content
2022-09-08 14:42:45 +01:00
8b027206b1
Add comments and sharing to all content pages
...
Listing pages already have this block overwritten for pagination
controls
2022-09-08 14:37:18 +01:00
63909a31c0
Add iframe block
2022-09-08 14:31:01 +01:00
c7e56ab038
Don't show word count if there isn't one
...
This mostly covers spotify pages, which use a custom reading time but
don't have words.
2022-09-06 09:17:42 +01:00
71f74251bb
Don't require code header
2022-09-06 08:58:44 +01:00
b95506d711
Don't load analytics when logged in or preview
2022-09-06 08:24:54 +01:00
1474131771
Thin fonts on 500 page
2022-09-05 14:29:17 +01:00
0711288197
Style 500 page
2022-09-05 14:17:48 +01:00
0a136496f4
Remove caches from base template
...
These components are pretty efficient, and it makes content editing more
annoying.
2022-09-05 13:58:36 +01:00
a76b9df329
Fix 404s if there's no resolver match
2022-09-04 18:17:06 +01:00
f40681d06a
Add caching to listing feeds
2022-09-04 17:34:04 +01:00
e21d525259
Reset migrations
...
During dev I made loads, but I don't need them now
2022-09-04 15:56:51 +01:00
ee307bcfbf
Define rich text features in settings
...
This removes them from migrations, avoiding the need to create new ones
when they change
2022-09-03 21:07:27 +01:00
a053e27833
Use richtext for subtitle
2022-09-03 17:00:09 +01:00
6dfbb830ef
Add IE11 deterrent
2022-09-03 16:35:39 +01:00
eaa5b063f4
Use smaller, PNG image for meta image
...
This ensures it's not too large, but also crawlers are more likely to
support PNG than webp
2022-09-03 16:21:24 +01:00
8691d11a15
Only render comments in debug
2022-09-02 17:20:03 +01:00
7fff13f0ab
Add lightbox for content images
2022-09-02 17:18:40 +01:00
611e343564
Just use a simple icon field
...
The library has some issues, even if it is great
https://github.com/saschaludwig/django-fontawesome-6/pull/2
2022-09-02 15:29:12 +01:00
7026aca934
Add account links to footer
...
Putting them in the navbar is too crowded.
2022-09-02 09:28:35 +01:00
6d60cedc6f
Add comments
2022-09-02 08:27:42 +01:00
54af457d8e
Add SRI
2022-09-01 08:36:39 +01:00
5d370a0712
Unify pygments stylesheet
...
It's less generic and less cool, but this bakes the styles for dark and
light into a single stylesheet, and deals with switching without any JS.
2022-08-31 23:02:13 +01:00
488369a247
Add filename and header show checkbox to code block
2022-08-31 22:30:08 +01:00
df09ec0f38
Ensure request is passed into the singleton URL cache
...
This removes needing extra queries
2022-08-31 19:06:02 +01:00
25e49de081
Don't cache page bodies
...
They're still pretty fast to generate, and doing this breaks previews
completely
2022-08-31 18:54:09 +01:00
e7c4acce8b
Add the ability to password protect pages
...
Useful for sharing drafts
2022-08-28 22:02:02 +01:00
6f073c6cfc
Update module name
...
This will handle more than just URLs
2022-08-28 20:30:50 +01:00
442aeb21b8
Use singleton URL cache
2022-08-28 20:22:55 +01:00
557a28833b
Only show public pages
2022-08-28 16:51:27 +01:00
c660e54bae
Add method to prefetch for listing
2022-08-28 14:52:27 +01:00
735ab73ec0
Inline select_related
calls
2022-08-28 12:59:09 +01:00
4ca2a97b2a
Update queries for favicon and add cache
...
It shouldn't change much, so let's cache it
2022-08-28 00:13:19 +01:00
358013e16a
Add favicon
2022-08-27 23:44:56 +01:00
46836a6d30
dark-mode
2022-08-27 23:20:30 +01:00
eddf4c88d1
Use monokai as the dark mode
...
I prefer how it looks
2022-08-27 22:48:22 +01:00
27bce00c46
Remove subtitle from listing pages
2022-08-27 19:55:44 +01:00
2df1e82f31
Allow customizing HTML and hero titles
2022-08-27 13:12:45 +01:00
3d155bb46f
Add management command to refresh caches of spotify playlists
2022-08-27 13:10:33 +01:00
48c5aa0e56
Test queries for list page
2022-08-27 12:39:50 +01:00
d83e3e0afe
Ensure all listing pages have pagination controls and feed links
2022-08-27 12:32:16 +01:00
e19a2456e7
Move listing functionality to generic base page
2022-08-27 12:21:13 +01:00
d2e1cde927
Remove unnecessary extra div in footer
2022-08-26 23:25:02 +01:00
0fbd36ce3e
Add pagination to blog post list
2022-08-26 23:13:06 +01:00
309955a052
Load images async
2022-08-25 22:42:33 +01:00
2539cc3538
Refresh body HTML async
2022-08-25 14:24:00 +01:00
01d84fd29b
Add keybase URL
2022-08-25 14:11:47 +01:00
37ab598d0d
Move well-known templates to well-known app
2022-08-25 14:07:08 +01:00
82e7a00d8a
Add plausible
2022-08-25 14:01:32 +01:00
a48aeeb55d
Add management command to refresh content pages
2022-08-25 01:29:22 +01:00
e6c44e9a8a
Cache page content for a little
...
This is mostly useful on listing pages
2022-08-24 23:59:17 +01:00
10005dfe02
Add all pages feed
...
This one is much simpler than the pages one, as there could be a lot of
pages
2022-08-22 23:17:16 +01:00
bfa4755871
Move well-known URLs into their own app
2022-08-22 20:33:52 +01:00
e74dbcc228
Add matrix client well-known view
2022-08-22 14:43:58 +01:00
521595a781
Add view to serve matrix server well-known URL
2022-08-22 14:37:29 +01:00
2fe0960623
Add management command to clear cache
2022-08-20 18:51:01 +01:00
32a1486840
Ensure captions are optional
2022-08-20 18:38:28 +01:00
2a46a70620
Add more elements to the dark mode
2022-08-20 17:45:12 +01:00
727ad725d1
Add dark mode toggle
2022-08-20 15:31:14 +01:00
94efdfb1cc
Remove icons from navbar
2022-08-20 12:12:42 +01:00
710a4c7955
Humanize reading time
2022-08-19 17:31:40 +01:00
2dd660ed13
Add meta tags
2022-08-19 16:56:20 +01:00
af6449c9f8
Add a way to disable SEO indexing
...
Well, "disable"
2022-08-19 15:31:27 +01:00
cd4252cd64
Return 200 when viewing the dedicated 404 page
2022-08-19 15:07:59 +01:00
f452f5deed
Add security.txt
2022-08-19 15:06:18 +01:00
1abc6da19b
Add robots.txt
2022-08-19 14:35:38 +01:00
24d92f4760
Use smaller image URL for listing
2022-08-19 14:33:57 +01:00
09c4b93245
Add typed table block
2022-08-19 13:48:45 +01:00
5affe274bd
Don't serialize all language options in migrations
2022-08-19 13:40:40 +01:00
57f5505c24
Add 404 page
2022-08-19 09:36:03 +01:00
c26397ae8d
Separate common tests and add tests for common pages
2022-08-17 18:52:07 +01:00
f554c9fb48
Add custom buttons to hero
2022-08-17 13:40:07 +01:00
0fa1d1c8be
Add references to RSS feeds to HTML
2022-08-17 08:45:15 +01:00
c5e662f2d8
Account for search page not existing
2022-08-16 23:24:17 +01:00
37cc1979be
Start doing a dark mode myself
...
darkreader is pretty big, and this is nice, simple and fast.
Not to mention has much less JS
2022-08-16 22:51:03 +01:00
8952f7eae5
Create base content page rather than need mixin
...
This makes the subclassing much simpler, and removes type ignore hacks
2022-08-16 21:32:46 +01:00
489a212b7a
Only render content once
2022-08-16 20:50:34 +01:00
4e177f9400
Link search button to search page
...
For now...
2022-08-05 09:46:55 +01:00
4869b47d53
Restructure base templates to pull hero into base and remove duplication
2022-08-05 09:25:30 +01:00
a0e88f0f78
Remove root template dir
2022-08-05 08:58:21 +01:00
e096dd8cf5
Install curlylint
2022-08-03 20:34:18 +01:00
bc18764ccf
Hide "to top" footer buttons on homepage
...
The homepage doesn't scroll, so it's a bit pointless
2022-08-02 22:10:34 +01:00
11932fa49e
Don't show code in plaintext
2022-07-29 09:11:04 +01:00
cf0a365277
Ensure additional content fields get indexed
2022-07-28 23:06:11 +01:00
d995b412a0
Remove django-stubs
...
It's just not quite there yet for a lot of things, and makes certain things a right pain!
2022-07-28 20:15:20 +01:00
0601ced3f5
Add indexes to snippets
2022-07-26 08:41:40 +01:00
9288f97381
Remove redundant condition
2022-07-25 20:10:49 +01:00
71c08f5568
Use class name rather than database name for body classes
...
This avoids duplication and makes the classnames a bit shorter, and more sane.
2022-07-25 19:30:47 +01:00
fafc0e8828
Simplify navbar styling and disable variants
2022-07-20 21:54:09 +01:00
9b7a2b2c21
Move accounts snippet to new contact app
2022-07-20 09:15:12 +01:00
85afe6c41b
Add alt tags to image blocks
2022-07-16 16:04:06 +01:00
c110318608
Test all pages have templates
2022-07-16 15:50:01 +01:00
dddecae190
Show content on listing pages
2022-07-16 10:39:20 +01:00
3306ec4e5a
Fix resolving parent pages
...
The order is actually correct for what we want. Also update the type
2022-07-16 10:29:47 +01:00
690095ea52
Replace tag snippets with full pages
...
Makes the page tree a bit more messy, but is much more versatile and means there are fewer hacks in the code to make snippets act like pages in the tree.
2022-07-16 10:29:01 +01:00
1326214c8f
Rename namespace for static pygments URL
2022-07-16 01:13:48 +01:00
78660500a5
Add tag filtered view to blog list
2022-07-16 00:56:20 +01:00
781870321e
Add snippet links to plain and simple rich text fields
2022-07-15 10:12:15 +01:00
8b16d94bc8
Add tests for steamfield and richtext lists
2022-07-15 10:11:02 +01:00
feba307de7
Add mermaid embed
2022-07-15 10:10:37 +01:00
1acaca3ce6
Add social accounts snippet
2022-07-14 22:03:24 +01:00
72ac1bc1da
Add reusable referral links
2022-07-14 22:02:01 +01:00
b155ec2e9b
Allow unsplash images to be used as hero images
2022-07-12 22:45:50 +01:00
72dc3cc4ea
Add chooser for unsplash photos
...
It doesn't show images, yet
2022-07-12 15:14:27 +01:00
ef9128313d
Add a tangent block
2022-07-05 09:03:45 +01:00
e8c3ec86ae
Have animated scroll on table of contents
...
Animated and offset correctly with hero. Requires some extra JS to keep the height up to date.
2022-07-04 22:17:46 +01:00
c526ff0d47
Define font family in CSS not HTML
2022-07-04 20:40:50 +01:00
b9a00e9b83
Use Fira Code for all code
2022-07-04 20:36:19 +01:00
9694ae71bc
Use fira code for code blocks
2022-07-04 20:27:08 +01:00
39f10c1c7c
Add shareon
2022-07-04 20:06:04 +01:00
d5ef68ce32
Style hero a bit more
2022-07-04 19:13:23 +01:00
88b6f4b61b
Get content based on original HTML
...
It can't be done post anchoring, else the '#' end up in the ToC
2022-07-04 19:00:20 +01:00
65044361a6
Only parse header tags when looking for ToC
2022-07-04 18:56:11 +01:00
ccb481726c
Optimise getting content HTML by only parsing the necessary tags
2022-07-04 18:55:18 +01:00
66ccd52b15
Don't allow H1 tags to be used
...
These should be for the page title only
2022-07-04 09:28:09 +01:00
bb8ef22bfd
Add tests for word count
2022-07-04 09:26:47 +01:00
60e4913e43
Add basic tests for extract_text
2022-07-04 09:21:12 +01:00
51be747103
Remove current page from part of navbar caching
...
We don't show the currently active page in the nav, so this isn't necessary. This also allows the cache to be shared between pages.
2022-07-03 23:13:59 +01:00
4702afd5dd
Reduce complexity trying to save computation on rendering streamfield
...
This replaces more custom iteration with caching, which will end up faster anyway, and is more drop-in with the new structure.
Sadly it still renders the content twice, as `get_content_html` requires access to the blocks.
2022-07-03 23:10:57 +01:00
ebfb909c98
Add missing type annotation
2022-07-03 22:00:52 +01:00
03e9da57a1
Add anchor links to headers
2022-07-01 09:25:57 +01:00
1c7917cb86
Add tests for ToC generator
2022-07-01 08:55:42 +01:00
af2dba84cd
Get table of contents from body
2022-06-30 23:27:50 +01:00
8a7dba4ca0
Use bs4 to extract plain text from HTML
...
It's slower, but it keeps spaces between tags, which is what we want.
2022-06-30 21:32:47 +01:00
b6c87d9583
Only load content styles on content pages
2022-06-28 22:19:28 +01:00
e6c8546129
Constrain images to 16:9
2022-06-28 21:59:38 +01:00
f0239b40fc
Use lite-youtube-embed for YouTube embeds
2022-06-28 21:43:44 +01:00
c23c03ec33
Add custom image model
2022-06-28 18:54:11 +01:00
a1d72c122a
Add code block
2022-06-27 23:29:55 +01:00
72f9374c03
Add image figure block
2022-06-27 20:40:55 +01:00
38c4c695cf
Setup features for richtext
2022-06-27 19:58:08 +01:00
2012b245a8
Add summary to content
2022-06-26 19:52:20 +01:00
299a6342cc
Add basic word count and reading time
2022-06-26 19:25:30 +01:00
b7163c3076
Create basic streamfield
2022-06-26 18:37:04 +01:00
d37c0dfbfa
Fix scroll top button
2022-06-26 15:18:28 +01:00
b2df6aa7d2
Refactor content details to use tags
2022-06-26 15:13:51 +01:00
ed535626b5
Use bulma tags for tags
2022-06-26 12:55:20 +01:00
83c25328e6
Add spacing between title and subtitle in hero
2022-06-26 10:25:40 +01:00
693184f7fa
Don't assume image on listing item
2022-06-26 10:06:51 +01:00
70c9a986b4
Add elevator.js
2022-06-20 08:46:42 +01:00
6f3c7a0162
Pull reading times and word count from Python
2022-06-19 21:16:03 +01:00