d114870f87
feat: add links to next and prev articles
2023-09-19 19:29:21 +01:00
2fd4b704cd
feat: add binaryformatter psa
2023-09-16 14:48:26 +01:00
7ae8a749d2
feat: add tutorials page
2023-09-16 14:48:14 +01:00
ffaa2b2fa4
fix(blog): fix rss permalink
2023-08-20 14:23:50 +01:00
0e583de316
feat(blog): add post visibility and password
2023-08-20 14:23:04 +01:00
06fd256ec8
refactor: remove redundant models for privacy policy pages
2023-08-20 13:30:11 +01:00
70bf8aca19
fix: add name to checkbox
2023-08-16 15:22:35 +01:00
bcbf963cd8
style: fix typo
2023-08-16 15:22:10 +01:00
1c044a9c96
style: fix typo on index page
2023-08-16 14:51:08 +01:00
b36a3207ca
docs(blog): use rename interface in param
2023-08-16 14:44:57 +01:00
f18ae5eba4
refactor(web): make dbcontext internal
2023-08-16 14:09:43 +01:00
9e2fa951f1
refactor: use PascalCase for asp-page routes
2023-08-16 14:08:33 +01:00
8202bb7440
style: reword open source text
2023-08-16 14:02:58 +01:00
09f3535d77
refactor: remove unused ns import
2023-08-15 17:07:49 +01:00
20eabeeb1e
refactor: remove unneeded log line
2023-08-15 17:06:00 +01:00
fe4701c1bf
chore(debug): set minlevel for DEBUG config
2023-08-15 17:05:16 +01:00
d9c6034aa0
fix(blog): link to relative index not root index
2023-08-15 17:04:58 +01:00
7ee9d3637c
feat: add support for template variants
2023-08-15 17:04:43 +01:00
1cdad4c17c
fix(blog): set post in ViewData for article
2023-08-14 00:58:58 +01:00
e7cbe0330b
feat: add post metadata for social embed support
2023-08-14 00:57:46 +01:00
9ce4b844fe
style: format RSS link child
2023-08-14 00:57:13 +01:00
c3e64a6cde
style: add theme-color #121212
2023-08-14 00:56:59 +01:00
adf9e63008
style: remove self-closing /
2023-08-14 00:56:45 +01:00
fdea721f4f
fix: fix support for inline templates
2023-08-14 00:56:05 +01:00
eb2a63e136
fix(blog): use tag helpers to generate href
2023-08-13 18:12:42 +01:00
193b2486a1
refactor(blog): use /blog prefix for article endpoints
2023-08-13 18:12:13 +01:00
dc83309db7
perf(blog): cache users
2023-08-13 18:03:08 +01:00
bbc76bc305
refactor(blog): use api controller for /blog/feed endpoint
2023-08-13 18:02:58 +01:00
369436ccce
refactor: use global templates
2023-08-13 18:02:19 +01:00
0a9c2e82d5
refactor: combine sites into one
...
CORS was "cors"ing some issues (heh).
But also it is easier to maintain this way. Development was made much more difficult when I separated it. Combining it all also improves SEO
2023-08-13 17:34:38 +01:00
be44fb4b4b
chore: add per-project Dockerfile
2023-08-13 16:38:56 +01:00
f878bff8f3
refactor: use shared Markdig pipeline
2023-08-13 15:24:57 +01:00
6bbdd0a74d
fix: add missing ns import
2023-08-13 13:28:25 +01:00
287af40501
feat: share template system among all projects
2023-08-13 13:27:44 +01:00
bd5fd6114a
refactor: remove blog CORS policy from principal project
2023-08-13 13:11:50 +01:00
f60b9c754a
fix: remove ref to removed service
2023-08-13 00:53:22 +01:00
692d688dc3
refactor: remove unused config service
2023-08-12 22:38:28 +01:00
58799594ae
refactor: switch to serilog
2023-08-12 21:06:48 +01:00
1432c8e0f1
fix: amend 4c86a43a84
2023-08-12 20:41:14 +01:00
419aae741d
fix: use shared assets in root site
2023-08-12 20:40:46 +01:00
4c86a43a84
chore: remove redundant gitignore
2023-08-12 20:40:31 +01:00
a55c657d91
fix: add missing refs for blog project
2023-08-12 20:32:27 +01:00
86bbf803b5
feat: share wwwroot assets
2023-08-12 20:30:10 +01:00
e8bc50bbdf
refactor: move blog to separate app
...
I'd ideally like to keep the blog. subdomain the same, and while there are a few ways to achieve this it is much simpler to just dedicate a separate application for the subdomain.
This change also adjusts the webhost builder extensions to default to ports 443/80, and each app now explicitly sets the port it needs.
2023-08-12 20:13:47 +01:00
b3fd6e9420
chore: add toml config to common lib
2023-08-12 19:04:18 +01:00
67231c86af
refactor: delegate ssl cert read to common lib
2023-08-12 18:35:57 +01:00
9b9143632a
refactor: remove ref to jquery validation lib
2023-08-12 16:49:37 +01:00
641313f97a
refactor: remove Author schema
...
Introducing new User which serves both as author model and credential model
2023-08-12 14:24:27 +01:00
47b648f327
fix: fix markdown formatting inside templates
2023-08-11 21:51:16 +01:00
6f7fa67135
refactor: move DateFormatter to child ns
2023-08-11 21:34:04 +01:00
034bd66b29
feat: format template arguments
2023-08-11 21:33:14 +01:00
9d0e16abc1
feat: add CORS for /api/blog controller
2023-08-11 17:16:26 +01:00
415726cdcd
fix: add missing _ViewImports for blog area
2023-08-11 17:16:04 +01:00
0aee2aafbc
fix: add missing asp-area for article breadcrumb
2023-08-11 17:15:54 +01:00
cd0f38764d
fix: send charset=utf-8 for content-type header
2023-08-11 16:42:12 +01:00
7bd1c5a45a
refactor: remove redundant write of StatusCode
2023-08-11 16:41:53 +01:00
e9d9836238
refactor: move Template extension to subnamespace
2023-08-11 16:35:13 +01:00
049601a6fb
fix: remove explicit routing
2023-08-11 16:32:29 +01:00
54f3706ba0
refactor: move blog api controller to project root
2023-08-11 16:32:11 +01:00
143131b413
style: remove BOM
2023-08-11 15:51:20 +01:00
1a726b4962
style: format url as yyyy/MM/dd
2023-08-11 15:43:06 +01:00
becd70c865
fix: use area "blog" for page link
2023-08-11 15:42:48 +01:00
1bdd2a04f0
docs: add xmldoc in api controller
2023-08-11 15:41:02 +01:00
fb8848270f
refactor: remove unused ns imports
2023-08-11 14:29:26 +01:00
2844904723
fix: add missing _ViewStart to inherit shared layout
2023-08-11 14:27:38 +01:00
19a398d694
refactor: remove unused Post property
2023-08-11 14:27:13 +01:00
eb2edcb3f6
fix: amend 0ecef1a547
...
Forgot these two
2023-08-11 14:26:38 +01:00
2d4d6d3823
refactor: amend c2deccafae
...
Define new Area for blog
2023-08-11 14:26:21 +01:00
0ecef1a547
refactor: match db change from INT to UUID for pkeys
2023-08-11 14:09:13 +01:00
c2deccafae
refactor: move blog to new asp area
2023-08-11 14:08:14 +01:00
3c6a2209c2
style: remove self-closing tag
2023-08-11 13:52:43 +01:00
31794a1238
feat: add rss icon to layout footer
2023-08-11 13:24:57 +01:00
69e1279a8b
refactor: remove redundant asp-area attr
2023-08-11 13:23:03 +01:00
bb0483d4ae
refactor: rename index link
2023-08-11 02:27:17 +01:00
682b7c2a87
style: use meaningful placeholders
2023-08-11 02:27:07 +01:00
69963a5b81
style: swap roles of strong/underline
2023-08-11 02:26:56 +01:00
ca31a63bb7
feat: use ViewData title in layout
2023-08-11 02:08:18 +01:00
cbb7d07844
fix: add missing ViewData title assignment
2023-08-11 02:08:03 +01:00
1c73ada81c
style: use breadcrumbs for child contact pages
2023-08-11 02:07:39 +01:00
7219c948e6
refactor: remove weird namespace declspec
2023-08-11 02:07:13 +01:00
95b7ed0ae7
feat: create partial for spinner, register as handlebars template
2023-08-11 02:06:52 +01:00
06fab21cd5
feat: link to blog from index
2023-08-11 02:05:27 +01:00
3e3f074e63
style: use dynamic bmc button
2023-08-11 02:05:18 +01:00
f048c619f3
style: reword donate page
2023-08-11 02:05:08 +01:00
b2a7bf3536
feat: read ssl pem/key path from env
2023-08-10 23:33:15 +01:00
3e20e41565
refactor: use HttpGet for api routes
2023-08-10 22:57:24 +01:00
d3958fc22c
feat: validate referer on all routes
2023-08-10 22:56:49 +01:00
159e1ad65d
refactor: return Ok(...) instead of building a JsonResult
2023-08-10 22:55:52 +01:00
9d46d6495e
fix: 0-pad Published properties
2023-08-10 22:53:15 +01:00
d6c24d80c1
fix: remove stdout diagnostic print
2023-08-10 22:52:43 +01:00
74e7187cba
chore: remove redundant NLog ref
...
this is implicitly ref'd by NLog.Extensions.Logging
2023-08-10 22:50:43 +01:00
8dd4468c1a
feat: gracefully shutdown logmanager on exit
2023-08-10 22:49:44 +01:00
dcbc402bfb
refactor: remove redundant ns import
2023-08-10 22:49:15 +01:00
5bb6463a4b
fix: use manual Prism highlighting
2023-08-10 16:16:29 +01:00
4244f9f014
fix: add disqus comment counter after posts have loaded
2023-08-10 16:14:48 +01:00
506347ce9c
feat: add pre-formatted date "dddd, d MMMM yyyy HH:mm"
2023-08-10 15:32:34 +01:00
f3ad04ff1f
feat: add disqus comment count injection to asp page
2023-08-10 15:15:36 +01:00
221a6f0007
fix: add missing method from BlogService
2023-08-10 14:37:52 +01:00
87c54fa5a4
fix: add missing ns import
...
amends 0b9841a724
2023-08-10 14:37:25 +01:00
217c1d660e
feat: use Handlebars to render template excerpt card
2023-08-10 14:36:51 +01:00
3868fcbaa8
feat: add pre-humanized timestamp to api schema
2023-08-10 14:34:52 +01:00
aa69713e49
feat: add handlebars 4.7.8
2023-08-10 14:08:35 +01:00
cb331ff54f
refactor: use - not _ for id word splitter
2023-08-10 14:08:22 +01:00
2036970fa2
fix: remove redundant article tag
2023-08-10 04:56:28 +01:00
95dd7e51e5
perf: add dynamic fetch of blog posts to speed up page load
2023-08-10 04:56:12 +01:00
d11e3f616b
chore: move tsconfig to project root, add ES2020/DOM libs
2023-08-10 04:48:02 +01:00
e64d8b47b8
feat: add support for Discord-style timestamps
2023-08-10 01:49:09 +01:00
fa51e0a189
chore: use es2020
2023-08-10 00:29:31 +01:00
434c61d7fa
fix: remove non-existent css link
2023-08-10 00:29:24 +01:00
738bf1f3ba
feat: use emoji support
2023-08-09 23:19:39 +01:00
5c55318577
feat: use smarty pants extension
2023-08-09 23:19:29 +01:00
0b9841a724
refactor: simplify md pipeline
2023-08-09 23:19:19 +01:00
190e247067
feat: add /raw route to blog posts for markdown output
2023-08-09 23:17:16 +01:00
a138c38009
feat: add mastodon to footer
2023-08-09 22:13:09 +01:00
26b022f7ba
refactor: set OpeningChars for parser
2023-08-09 21:09:50 +01:00
2e17daea52
docs: add xmldoc to TemplateExtension
2023-08-09 21:09:32 +01:00
07071dc7a5
refactor: remove unused ns import
2023-08-09 21:09:14 +01:00
8a1cd689ea
feat: add rss output at route /blog/feed
2023-08-09 21:08:57 +01:00
6743918f44
fix: slice from initial index
2023-08-08 22:25:23 +01:00
030e5fdd3d
perf: inline redundant var
2023-08-08 22:25:06 +01:00
a6afe46891
fix: skip value read for key without =
2023-08-08 22:20:58 +01:00
6d8a1ac5b9
fix: consume token for template param value
2023-08-08 22:19:57 +01:00
dbbc18b8a6
perf: optimize and cleanup template parser
2023-08-08 22:18:42 +01:00
68bff36fa6
style: remove double blank line
2023-08-08 21:04:27 +01:00
aee4052954
docs: add xmldoc to BlogContext members
2023-08-08 21:04:13 +01:00
6af41cba5a
feat: add support for MediaWiki-style templates
2023-08-08 21:03:41 +01:00
da5fe30c7a
feat: add font awesome 6.4.2
2023-08-08 21:01:31 +01:00
0fa43704ea
style: add alt to author image, reorder anchor attrs
2023-08-08 21:01:13 +01:00
77288a0ab5
feat: add operator== for BlogPost
2023-08-08 12:47:34 +01:00
4d10fd4ea1
docs: add xmldoc to members
2023-08-08 12:47:21 +01:00
50a25dad6f
chore: suppress NonReadonlyMemberInGetHashCode
2023-08-08 12:47:05 +01:00
2ef1e47ece
style: order members alphabetically
2023-08-08 12:46:52 +01:00
aaafcaf760
perf: handle content processing in BlogService
2023-08-08 12:46:24 +01:00
983e636635
perf: structure query get a bit better
2023-08-08 12:41:12 +01:00
56a8ba7368
fix: add missing lookup
2023-08-08 12:40:51 +01:00
9de1a84446
refactor: determine disqus param in model; reduce duplication
2023-08-08 12:40:18 +01:00
95a5a9e93b
refactor: readonly IDbContextFactory
2023-08-08 12:25:28 +01:00
96ec83e525
feat: add new permalink to all posts
2023-08-08 12:07:30 +01:00
299e315ddd
style: reword contact page
2023-08-08 11:35:48 +01:00
f14239bcfb
style: add bs alert for legal disclaimer
2023-08-08 11:35:36 +01:00
7f4ef10960
refactor: delegate id lookup to BlogService
2023-08-08 11:35:22 +01:00
6b18b36b96
refactor: get author using BlogService
2023-08-08 11:34:41 +01:00
a8158611b8
chore: target es6
2023-08-08 02:07:08 +01:00
7abc44a58c
feat: use aspnetcore route helper instead of hardcoding url
2023-08-08 02:06:58 +01:00
6d40452fb3
feat: display Update timestamp if post has been updated
2023-08-08 02:06:38 +01:00
84814da85b
feat: describe project sections
2023-08-08 02:06:20 +01:00
69a6f4a3af
refactor: delegate post lookup to BlogService
2023-08-08 02:06:11 +01:00
4a94a404b3
fix: fix legacy 301 route
2023-08-08 01:56:13 +01:00
b584bb84a2
style: guard clause article page
2023-08-08 01:34:27 +01:00
83e5757429
feat: delegate blog listing to BlogService
2023-08-08 01:31:05 +01:00
8768a90d48
fix: force disqus to use dark theme
2023-08-08 01:21:15 +01:00
b9e7e938ba
refactor: remove references to hljs
2023-08-08 01:17:23 +01:00
6524a4f618
feat: inject custom markdown pipeline
2023-08-08 00:34:15 +01:00
d69ef231eb
feat: add KaTeX
2023-08-08 00:31:15 +01:00
e2ecc6dc57
refactor: route blog to asp not remote page
2023-08-08 00:30:57 +01:00
3db59d6ca2
feat: use prism instead of highlightjs
2023-08-08 00:30:43 +01:00
12309c0bf1
style: improve layout of blog/article
2023-08-08 00:29:39 +01:00
e5f01f66a9
refactor: add day to article route
2023-08-08 00:21:22 +01:00
cebaac553c
feat: add gravatar hash calculation
2023-08-08 00:20:52 +01:00
6f3961901e
feat: add comment toggle schema
2023-08-08 00:20:38 +01:00
8b2f0fb454
feat: add post redirect schema
2023-08-08 00:20:21 +01:00
0c594ac306
feat: add Updated property to BlogPost
2023-08-07 23:42:59 +01:00
480363dd5a
chore: ignore dynamically generated assets
2023-08-06 15:58:13 +01:00
bd999f0ed8
feat: add preliminary /blog routes
...
This change also introduces toml file config
2023-08-06 15:57:44 +01:00
518ea1b933
feat: add NLog
2023-08-06 15:56:08 +01:00
d24f9d3996
fix: add rider hot reload support
2023-08-06 15:55:12 +01:00
8ad324227a
refactor: remove localization
2023-08-06 13:55:39 +01:00
d7d3cb6986
refactor: remove RouteCultureProvider
2023-08-06 13:55:27 +01:00
060514aca2
style: use bs-theme "dark"
2023-08-06 13:54:34 +01:00
47eeb276c5
style: use explicit https protocol
2023-08-06 13:54:18 +01:00
494a85a447
style: format privacy policy pages
2023-08-06 13:54:02 +01:00
bcee08347a
feat: add projects page
2023-08-06 02:29:10 +01:00
b2ada7d720
fix: amend 75eed18bc8
2023-08-06 02:27:16 +01:00
75eed18bc8
refactor: remove i18n
...
This can be a problem for Future Me™️
2023-08-06 02:26:45 +01:00
e93db2c7a0
feat: add donation page
2023-08-05 23:28:01 +01:00
6205648e53
refactor: rename project to OliverBooth
2023-08-05 23:27:50 +01:00