Compare commits

...

1077 Commits

Author SHA1 Message Date
Jonathan Branan
c2af905066 Merge branch 'main' of https://github.com/timlrx/tailwind-nextjs-starter-blog into upstream 2024-11-04 22:31:11 -06:00
Jonathan Branan
e04cd599c9 updated blog
All checks were successful
Build and Deploy docker container / build (push) Successful in 2m19s
2024-11-04 17:45:52 -06:00
Jonathan Branan
f60e71116b Updated author image
All checks were successful
Build and Deploy docker container / build (push) Successful in 2m41s
2024-11-03 17:24:40 -06:00
Timothy Lin
12a03e3844 2.3.0 2024-11-03 17:26:49 +08:00
Timothy
9d3d7cd99c Merge pull request #1051 from timlrx/docs/docker
Add faq to deploy with docker
2024-11-03 17:11:49 +08:00
Timothy Lin
9a3c82fb85 add faq to deploy with docker 2024-11-03 17:10:13 +08:00
秋刀鱼之愿
6289f94e87 feat: add rehype-katex-notranslate plugin for preventing symbols in formulas to be translated by browser translate-tools. (#1049)
* fix(format): format the codes

* fix(format): format the code

* feat: add rehype-katex-notranslate plugin to prevent symbol in formulas to be translated.

* update(dep): update `rehype-katex-notranslate` version
2024-11-03 17:01:35 +08:00
Jonathan Branan
ea7403a82e fixed lint errors
All checks were successful
Build and Deploy docker container / build (push) Successful in 1m53s
2024-11-03 01:52:30 -06:00
Jonathan Branan
0d63ca3288 modified likes page
Some checks failed
Build and Deploy docker container / build (push) Failing after 1m15s
2024-11-03 01:48:17 -06:00
Jonathan Branan
c8222a73f3 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 1m42s
2024-11-02 23:55:42 -05:00
Jonathan Branan
3c86b3ab73 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 1m51s
2024-11-02 23:50:29 -05:00
Jonathan Branan
33e62b3c87 a
Some checks failed
Build and Deploy docker container / build (push) Failing after 15s
2024-11-02 23:49:20 -05:00
Jonathan Branan
c03b7d74a7 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 5s
2024-11-02 23:38:47 -05:00
Jonathan Branan
1ad980266b a
Some checks failed
Build and Deploy docker container / build (push) Failing after 26s
2024-11-02 23:35:34 -05:00
Jonathan Branan
2d35fbba62 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 1m42s
Build and Deploy docker container / deploy (push) Successful in 4s
2024-11-02 23:05:55 -05:00
Timothy
35ec4b25ef Merge pull request #1047 from eshut/dev_blog
Add Schedles blog example
2024-11-03 12:03:44 +08:00
Jonathan Branan
338567b7a1 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 1m58s
Build and Deploy docker container / deploy (push) Successful in 5s
2024-11-02 23:03:23 -05:00
Timothy
5406b12662 Merge pull request #1048 from timlrx/next-15
Update to next-15
2024-11-03 12:02:54 +08:00
Timothy Lin
a25226f8ba update eslint and pliny 2024-11-03 11:56:23 +08:00
Jonathan Branan
f36307dfc6 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 2m13s
Build and Deploy docker container / deploy (push) Successful in 5s
2024-11-02 22:52:00 -05:00
Jonathan Branan
5259467f44 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 1m55s
Build and Deploy docker container / deploy (push) Successful in 5s
2024-11-02 22:43:04 -05:00
Jonathan Branan
2dc25fbf78 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 2m4s
Build and Deploy docker container / deploy (push) Successful in 5s
2024-11-02 22:37:04 -05:00
Jonathan Branan
b89accc396 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 1m53s
Build and Deploy docker container / deploy (push) Successful in 4s
2024-11-02 22:27:02 -05:00
Jonathan Branan
c1430ebc30 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 2m55s
Build and Deploy docker container / deploy (push) Successful in 21s
2024-11-02 22:06:33 -05:00
Jonathan Branan
07d76d4fee a
All checks were successful
Build and Deploy docker container / build (push) Successful in 3m12s
2024-11-02 22:00:07 -05:00
Jonathan Branan
92164ecbdb a
Some checks failed
Build and Deploy docker container / build (push) Failing after 1m52s
2024-11-02 21:52:10 -05:00
Jonathan Branan
ac7f161f41 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 1m32s
2024-11-02 21:46:12 -05:00
Jonathan Branan
6584a6638f a
All checks were successful
Build and Deploy docker container / build (push) Successful in 1m55s
2024-11-02 21:39:57 -05:00
Jonathan Branan
e1ab90969d a
All checks were successful
Build and Deploy docker container / build (push) Successful in 1m56s
2024-11-02 21:35:11 -05:00
Jonathan Branan
421c9d81da a
All checks were successful
Build and Deploy docker container / build (push) Successful in 2m33s
2024-11-02 21:31:39 -05:00
Jonathan Branan
b6770f3bba a
Some checks failed
Build and Deploy docker container / build (push) Failing after 39s
2024-11-02 21:28:57 -05:00
Jonathan Branan
4145aede62 a
Some checks failed
Build and Deploy docker container / build (push) Failing after 40s
2024-11-02 21:27:21 -05:00
Jonathan Branan
c4887b206a a
Some checks failed
Build and Deploy docker container / build (push) Failing after 1m24s
2024-11-02 21:23:51 -05:00
Jonathan Branan
e5476d11e4 a
Some checks failed
Build and Deploy docker container / build (push) Failing after 1s
2024-11-02 21:22:56 -05:00
Jonathan Branan
b03f001682 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 2m11s
2024-11-02 20:55:20 -05:00
Jonathan Branan
2a7a14b4c2 a
Some checks failed
Build and Deploy docker container / build (push) Failing after 12s
2024-11-02 20:50:34 -05:00
Jonathan Branan
63b8865cf3 a
Some checks failed
Build and Deploy docker container / build (push) Failing after 1m23s
2024-11-02 20:45:28 -05:00
Jonathan Branan
98d3427bc5 a
Some checks failed
Build and Deploy docker container / build (push) Failing after 0s
2024-11-02 20:44:21 -05:00
Jonathan Branan
9ea6e470e2 actions ci 2024-11-02 20:43:00 -05:00
Timothy Lin
caedfeac50 add force-static 2024-10-31 22:49:51 +08:00
Timothy Lin
85fe09b13e apply async codemod 2024-10-31 22:37:40 +08:00
Timothy Lin
c7c61a8609 update next-15 and react-19 2024-10-31 22:35:01 +08:00
Timothy Lin
f410fc3ab0 upgrade to next 15 2024-10-31 14:35:40 +08:00
Jonathan Branan
678d6f84dc test cache
All checks were successful
Build and Deploy docker container / build (push) Successful in 3m17s
Build and Deploy docker container / deploy (push) Successful in 13s
2024-10-27 20:27:34 -05:00
Jonathan Branan
ecf830d9df test cache
All checks were successful
Build and Deploy docker container / build (push) Successful in 3m22s
Build and Deploy docker container / deploy (push) Successful in 49s
2024-10-27 20:20:32 -05:00
Jonathan Branan
6929da7e19 a
Some checks failed
Build and Deploy docker container / build (push) Failing after 3m20s
Build and Deploy docker container / deploy (push) Successful in 50s
2024-10-27 20:01:30 -05:00
Jonathan Branan
4ccd827681 cache
All checks were successful
Build and Deploy docker container / build (push) Successful in 3m18s
Build and Deploy docker container / deploy (push) Successful in 50s
2024-10-27 19:56:24 -05:00
Jonathan Branan
4b0cd35609 2
All checks were successful
Build and Deploy docker container / build (push) Successful in 2m54s
2024-10-27 19:48:56 -05:00
Jonathan Branan
ad3df443ab 1
All checks were successful
Build and Deploy docker container / build (push) Successful in 31s
2024-10-27 19:46:57 -05:00
Jonathan Branan
1e066714b2 d
All checks were successful
Build and Deploy docker container / build (push) Successful in 31s
2024-10-27 19:46:04 -05:00
Jonathan Branan
7c0166a5d3 c
All checks were successful
Build and Deploy docker container / build (push) Successful in 30s
2024-10-27 19:41:47 -05:00
Jonathan Branan
1e42f3a6fd b
All checks were successful
Build and Deploy docker container / build (push) Successful in 31s
2024-10-27 19:37:44 -05:00
Jonathan Branan
8cd125c662 a
All checks were successful
Build and Deploy docker container / build (push) Successful in 31s
2024-10-27 19:35:20 -05:00
Jonathan Branan
3eb94b02fd test 2024-10-27 19:34:47 -05:00
Jonathan Branan
92761dde15 test 2024-10-27 19:33:45 -05:00
Jonathan Branan
503f84fc7a test
All checks were successful
Build and Deploy docker container / build (push) Successful in 36s
2024-10-27 19:29:52 -05:00
Jonathan Branan
ae3bda17e1 test
All checks were successful
Build and Deploy docker container / build (push) Successful in 26s
2024-10-27 19:27:41 -05:00
Jonathan Branan
88491eb8c2 test
All checks were successful
Build and Deploy docker container / build (push) Successful in 27s
2024-10-27 19:14:28 -05:00
Jonathan Branan
ba234be5e8 test automation
Some checks failed
Build and Deploy docker container / build (push) Failing after 47s
2024-10-27 18:12:58 -05:00
eshut
30a0deb125 add blog example 2024-10-27 14:40:52 +01:00
Jonathan Branan
e0e5159af9 updated timeout
All checks were successful
Build and Deploy docker container / build (push) Successful in 3m18s
Build and Deploy docker container / deploy (push) Successful in 49s
2024-10-20 10:45:27 -05:00
Jonathan Branan
ef60ff14c3 moved delpoy to a seperate job
Some checks failed
Build and Deploy docker container / build (push) Successful in 3m19s
Build and Deploy docker container / deploy (push) Failing after 9s
2024-10-20 10:37:46 -05:00
Jonathan Branan
254b3da3ba added tool cache
Some checks failed
Build and Deploy docker container / build (push) Failing after 3m29s
2024-10-20 10:08:18 -05:00
Jonathan Branan
97c99e4ed8 deploy app test
All checks were successful
Build and Deploy docker container / build (push) Successful in 34s
2024-10-20 09:48:43 -05:00
Jonathan Branan
a27431ef21 updated build work flow
All checks were successful
Build and Deploy docker container / build (push) Successful in 3m25s
2024-10-20 00:45:46 -05:00
Jonathan Branan
e9853f51ec confirmed job works
Some checks failed
Build docker container / build (push) Failing after 3m27s
2024-10-20 00:33:23 -05:00
Jonathan Branan
99c5f00093 changed token
All checks were successful
Build docker container / build (push) Successful in 2s
2024-10-20 00:28:18 -05:00
Jonathan Branan
8baa762863 troubleshooting
Some checks failed
Build docker container / build (push) Failing after 8s
2024-10-20 00:25:03 -05:00
Jonathan Branan
7f16bf9157 change custom headers 2024-10-20 00:24:35 -05:00
Jonathan Branan
bfb86dcd41 change hostname once again
Some checks failed
Build docker container / build (push) Failing after 3m19s
2024-10-20 00:19:04 -05:00
Jonathan Branan
00b518ff7f changed hostname
Some checks failed
Build docker container / build (push) Failing after 3m21s
2024-10-20 00:12:20 -05:00
Jonathan Branan
16bbec99e2 Changed header links and added auto deployment
Some checks failed
Build docker container / build (push) Failing after 3m55s
2024-10-20 00:07:34 -05:00
Jonathan Branan
4b4e1855a8 updated tag
All checks were successful
Build docker container / build (push) Successful in 3m17s
2024-10-17 13:52:00 -05:00
Jonathan Branan
8fa28f81f3 updated ci
Some checks failed
Build docker container / build (push) Failing after 3m5s
2024-10-17 13:34:22 -05:00
Jonathan Branan
0b36ded9d0 added build automation
Some checks failed
Build docker container / build (push) Failing after 1m36s
2024-10-17 13:23:20 -05:00
Jonathan Branan
eb3dc92f54 Merge branch 'main' of https://git.jonb.io/jblu/jonbio 2024-10-17 12:37:21 -05:00
Jonathan Branan
ae91966d8f yatta yatta yatta 2024-10-17 12:36:30 -05:00
jblu
a938046681 Merge branch 'main' of https://git.jonb.io/jblu/jonbio 2024-10-17 12:34:48 -05:00
jblu
d11d700992 yabba dabba do 2024-10-17 12:34:23 -05:00
Timothy
4d212bd4e6 Merge pull request #1039 from timlrx/fix-static-feed
fix: static build should write to out folder
2024-10-17 22:23:16 +08:00
Timothy Lin
e729f64909 fix: static build should write to out folder 2024-10-17 22:20:36 +08:00
Timothy
a9d3d4a4e7 Merge pull request #1035 from hta218/patch-1
Add my blog to Examples V2
2024-10-17 08:00:38 +08:00
Timothy
4887e9f4b3 Merge branch 'main' into patch-1 2024-10-17 08:00:10 +08:00
Timothy
1089edbdff Merge pull request #1034 from dariusz-wozniak/patch-1
add a link to source code
2024-10-17 07:59:15 +08:00
Timothy
3f971eae44 Merge branch 'main' into patch-1 2024-10-17 07:59:06 +08:00
Timothy
59fe3c9d55 Merge pull request #1033 from dergigi/patch-1
Add OpenSats to Examples V2
2024-10-17 07:58:21 +08:00
Timothy
e1faae83f5 Merge pull request #1029 from Violet-Bora-Lee/add-medium
Add the Medium to Footer
2024-10-17 07:56:57 +08:00
Timothy
b8489174ba Merge pull request #1032 from PrinOrange/main
[update] update the new domain for blog site
2024-10-17 07:51:06 +08:00
Jonathan Branan
51e22599dd Merge branch 'main' of https://git.jonb.io/jblu/jonbio 2024-10-16 17:01:59 -05:00
Jonathan Branan
0e12571879 blah 2024-10-16 17:01:45 -05:00
jblu
c0d205f77e Merge branch 'main' of https://git.jonb.io/jblu/jonbio 2024-10-16 12:13:49 -05:00
jblu
d52e1bdd12 Updated files 2024-10-16 12:12:44 -05:00
Tuan Anh (Leo) Huynh
cad4c1554e Add my blog to Examples V2 2024-10-01 18:05:03 +07:00
Dariusz Woźniak
229a77381b add a link to source code 2024-09-26 21:32:39 +02:00
Gigi
c60761089c Add OpenSats to Examples
https://opensats.org/blog
https://github.com/OpenSats/website
2024-09-25 12:02:36 +01:00
PrinOrange
271452a73c [update] update the new domain for blog site 2024-09-23 20:27:35 +08:00
Bora Lee
2d60e62271 Add medium to Footer 2024-09-20 18:52:18 +09:00
Timothy
250a4c50f9 Merge pull request #1023 from timlrx/fix/contentlayer-toc-type
Fix contentlayer toc type
2024-09-12 23:12:34 +08:00
Timothy Lin
c8c0d9c245 bump contentlayer to v0.5.1 2024-09-12 22:00:47 +08:00
Timothy Lin
717fe4aee3 fix toc wrong typing 2024-09-12 21:59:17 +08:00
Timothy
142c14c6f3 Merge pull request #1012 from yanyao2333/main
Add decodeURI to ListLayoutWithTags
2024-09-12 21:54:20 +08:00
Timothy
6db2d513a7 Merge pull request #1022 from edenreich/patch-1
Fix: syntax error
2024-09-12 21:47:29 +08:00
Eden Reich
44353478ff Fix syntax error
Commas are not needed here
2024-09-08 19:33:20 +02:00
Timothy
5b9758c0f1 Merge pull request #1015 from giovanni-orciuolo/patch-1
Add Giovanni Orciuolo blog
2024-09-04 22:13:31 +08:00
Timothy
2492f08aa0 Merge pull request #1014 from armujahid/add-armujahidme
add Abdul Rauf's blog
2024-09-04 22:13:00 +08:00
Timothy
f8c2719d68 Merge pull request #1002 from lappemic/add-beehiiv-info
Add beehiiv as newsletter platform
2024-09-04 22:08:03 +08:00
Timothy
9aa25d5f56 Merge pull request #1007 from tadashi0713/patch-1
Update devcontainer image
2024-09-04 22:07:45 +08:00
Giovanni Orciuolo
a4aa4fd76f Add Giovanni Orciuolo blog 2024-09-02 11:49:31 +02:00
Abdul Rauf
2260efe605 add Abdul Rauf's blog 2024-09-01 00:22:03 +05:00
Roitium.
396b13a66b add decodeURI 2024-08-27 21:07:30 +08:00
Tadashi Nemoto
b6c6152e6c Update devcontainer image 2024-08-23 02:10:00 +09:00
Timothy
81fd4bef53 Merge pull request #1001 from eltociear/patch-1
chore: update release-of-tailwind-nextjs-starter-blog-v2.0.mdx
2024-08-16 20:42:56 +08:00
Timothy
d5c2978e04 Merge pull request #1000 from trillium/trillium_blog_source_update
chore: Provide blog source for Trillium blog
2024-08-16 20:42:26 +08:00
Michael Scheiwiller
6f7b576b60 feat: add beehiiv as newsletter platform 2024-08-16 11:25:31 +02:00
Ikko Eltociear Ashimine
53063eeb01 chore: update release-of-tailwind-nextjs-starter-blog-v2.0.mdx
specifiying -> specifying
2024-08-15 00:17:24 +09:00
Trillium Smith
465dca48e4 chore: Provide blog source for Trillium blog 2024-08-11 10:06:38 -07:00
Timothy
032055580d Merge pull request #980 from atchox/main
add functionality for fixed navbar
2024-08-11 18:19:54 +08:00
Atreya Choudhury
3c948ccdde stacking fix 2024-08-11 09:06:30 +02:00
Atreya
bb81935f0c Merge branch 'timlrx:main' into main 2024-08-11 02:03:13 -04:00
Timothy
1b6f385d65 Merge pull request #995 from bensonmacharia/main
Update README.md to add website bmacharia.com
2024-08-11 12:55:03 +08:00
Timothy
6a540fcd79 Merge pull request #991 from ray-android/patch-3
Resolve Issue #990
2024-08-11 12:54:54 +08:00
Timothy
80bb67396e Merge pull request #989 from ray-android/patch-2
Fix issue #988
2024-08-11 12:49:58 +08:00
Benson Macharia
ff5c15e454 Update README.md to add website bmacharia.com
Update README.md to add website bmacharia.com
2024-08-07 11:33:51 +03:00
Atreya Choudhury
620252b856 ref fix + overflow for nav 2024-07-30 14:34:19 -04:00
ray-android
f04fc9d38b Resolve Issue #990
Resolve Add Accessible Name to Theme Switcher Button #990
2024-07-31 01:14:00 +08:00
ray-android
30e77eda9a Fix issue #988
Fix Invalid Tag Page Returns Status 200 Instead of 404 #988
2024-07-31 01:01:48 +08:00
Atreya
d789f8055b Merge branch 'timlrx:main' into main 2024-07-30 08:39:08 -04:00
Atreya Choudhury
31c0776d9d prettier run 2024-07-30 08:37:51 -04:00
Timothy
6b5287e066 Merge pull request #983 from ray-android/patch-1
Add website LyricsDecode.com
2024-07-30 17:21:18 +08:00
Timothy
cf64f3bf02 Merge pull request #985 from ffffffffspace/abernier-patch-1
more BASE_PATH catches
2024-07-30 17:21:04 +08:00
Timothy
f7d1e20cee Merge pull request #978 from pmndrs/fix/timestamp-hydration
Fix hydration warning on blog timestamp
2024-07-30 17:02:04 +08:00
Timothy
1a32fb7781 Merge pull request #977 from abernier/patch-1
`process.env.BASE_PATH` doc
2024-07-30 16:53:45 +08:00
Timothy
2984b87c5f Merge pull request #975 from asanchezyali/fix-invalid-dom-properties/themeSwitch
fix: resolve console warning when switching between light and dark modes
2024-07-30 16:52:57 +08:00
Antoine BERNIER
235f556900 Update siteMetadata.js 2024-07-29 00:07:24 +02:00
ray-android
210f2cb75d Add website LyricsDecode.com 2024-07-28 02:25:25 +08:00
Atreya Choudhury
d1daf73bff functionality for fixed navbar 2024-07-25 01:52:13 -04:00
Kris Baumgartner
91b427abd8 Fix hydration warning on timestamp 2024-07-20 12:53:56 -07:00
Antoine BERNIER
d2e32a83d4 process.env.BASE_PATH doc 2024-07-20 20:27:52 +02:00
Alejandro Sánchez Yalí
56a08dadf6 fix: resolve console error when switching between light and dark modes
This commit addresses the issue where an error was logged in the console when the user switched between light and dark modes. The warning was caused by the inappropriate use of SVG tags in JSX. The solution involved correcting the SVG tag usage to comply with JSX syntax requirements.

Closes #974
2024-07-18 20:44:23 -05:00
Timothy
947d3a0fa7 Merge pull request #972 from ffffffffspace/fix-favicons-basepath
fix layout `BASE_PATH` URLs
2024-07-15 23:24:16 +08:00
Timothy
0ec906689e Merge pull request #968 from EmilMoe/patch-1
Support config for self hosted plausible
2024-07-15 23:10:40 +08:00
Antoine BERNIER
110f24a8e1 prepend BASE_PATH if here 2024-07-14 18:03:58 +02:00
Emil Moe
e8fe853325 Support config for self hosted plausible 2024-07-13 10:10:46 +02:00
Timothy
1f9c7db465 Merge pull request #962 from abernier/fix-basepath-searchjson
`searchDocumentsPath` taking `BASE_PATH` into account
2024-07-13 11:42:52 +08:00
Timothy
dceb283322 Merge pull request #964 from webws/song/feature/add-site
Add blog website: blog.taoluyuan.com
2024-07-13 11:42:21 +08:00
webws
2f1b5cab88 Add blog website: blog.taoluyuan.com 2024-07-11 23:35:35 +08:00
Antoine BERNIER
6acab36a5d searchDocumentsPath taking BASE_PATH into account 2024-07-10 23:08:39 +02:00
Timothy
209a947206 Merge pull request #959 from abernier/patch-1
devcontainer
2024-07-10 22:32:18 +08:00
Timothy
13563ff8c5 Merge pull request #958 from abernier/pages
Pages custom Actions workflow
2024-07-10 21:59:32 +08:00
Timothy
8b446d30f9 Clarify features that cannot be used in static build 2024-07-10 21:55:47 +08:00
Timothy
c97f7f076e Merge pull request #957 from umihico/patch-1
Allow line breaks for <a> tags to keep body width on mobile
2024-07-10 21:38:27 +08:00
Timothy
405742b04f Merge pull request #950 from cxf213/patch-1
Fix button alignment in ThemeSwitch component
2024-07-10 21:36:34 +08:00
Timothy
c344b157f2 Run prettier on Link.tsx 2024-07-10 21:34:54 +08:00
Timothy
7a4b954801 Run prettier on theme switch 2024-07-10 21:28:18 +08:00
Timothy
9f2ed5195d Merge pull request #949 from rullydamara/main
add damaraputra.my.id
2024-07-10 21:21:38 +08:00
Antoine BERNIER
efe4d12986 new pages workflow 2024-07-10 10:30:29 +02:00
Antoine BERNIER
6a7c551dce devcontainer 2024-07-07 18:10:49 +02:00
Umihiko Iwasa
bbe62ea0b2 Allow line breaks for <a> tags 2024-07-07 11:29:07 +09:00
MisakiAkeno
acc04280ee Fix button alignment in ThemeSwitch component 2024-07-01 13:42:10 +08:00
Rulli Damara Putra
9a1065b0ac add damaraputra.my.id 2024-06-28 23:25:39 +07:00
Timothy
a2fde6dc7e Merge pull request #948 from timlrx/fix/email-domain
Fix email domain validation
2024-06-23 17:50:35 +08:00
Timothy
f4476ba55f Fix email domain validation 2024-06-23 17:45:11 +08:00
Timothy
7501b2c135 Merge pull request #941 from vioao/post_name_support_chinese
Make post name support Non-ASCII characters
2024-06-22 17:15:53 +08:00
Timothy
d9489346b9 Format with prettier 2024-06-22 16:39:20 +08:00
Timothy
c6f5f6c56b Merge pull request #945 from andrew-sameh/patch-1
Added andrewsam.xyz to README.md
2024-06-22 16:29:12 +08:00
Timothy
326a0f7565 Merge pull request #944 from lalugue/main
Fix Github icon title typo
2024-06-22 16:28:23 +08:00
Timothy
d81f28ba3a Merge pull request #943 from Spiteless/ts.refactor_MobileNav
Refactor MobileNav to use headlessui
2024-06-22 16:27:47 +08:00
Timothy
f345685f71 Merge branch 'main' into ts.refactor_MobileNav 2024-06-22 16:21:03 +08:00
Timothy
3c53f5851c Merge pull request #942 from Spiteless/ts.highlight_nav_links
Add highlighting to Nav links, ThemeSwitch dropdown
2024-06-22 16:08:17 +08:00
Andrew Sameh
57cee38463 Added andrewsam.xyz to readme 2024-06-21 10:18:53 +03:00
lalugue
2accf84475 change Github to GitHub 2024-06-20 20:36:25 +08:00
Trillium Smith
eb88980d4e feat: Refactor MobileNav to use headlessui Dialog 2024-06-19 14:40:49 -07:00
Trillium Smith
0c2c8adb53 feat: Move close button to end of MobileNav drawer 2024-06-19 14:38:14 -07:00
Trillium Smith
a4e8b84de4 feat: Add headlessui imports 2024-06-19 14:32:32 -07:00
Trillium Smith
ee996476d0 feat: Refactor menu items with { active } to use headlessui highlighting 2024-06-19 13:26:39 -07:00
Trillium Smith
44b5637398 feat: Adapt svg classes to use color of parent, add group:hover 2024-06-19 13:19:52 -07:00
Trillium Smith
8665738d27 feat: Add hover highlight classes to Nav links and svgs 2024-06-19 13:13:48 -07:00
Trillium Smith
3044443bf1 feat: Render Blank icon if theme isn't mounted yet 2024-06-19 13:09:12 -07:00
Trillium Smith
1101b2c266 feat: Create Blank svg as placeholder while ThemeSwitch mounts 2024-06-19 13:07:13 -07:00
vio.ao
e35b76249c Make post name support chinese 2024-06-17 16:09:58 +08:00
vio.ao
3ea21afa0d Revert "Make post name support chinese"
This reverts commit b61c582259.
2024-06-17 16:09:34 +08:00
vio.ao
b61c582259 Make post name support chinese 2024-06-17 16:08:30 +08:00
Trillium Smith
3241ab766c feat: Add hidden class to MobileNav conditional render 2024-06-16 13:49:15 -07:00
Timothy
391f4c679b Merge pull request #934 from JcobCN/main
add Jigu's blog link in README.md
2024-06-09 18:59:48 +08:00
Timothy
cdb30e757f Merge pull request #935 from timlrx/update-kbar-docs
Update customize-kbar-search.md
2024-06-08 23:19:51 +08:00
Timothy
e618d0846a Update customize-kbar-search.md 2024-06-08 23:19:38 +08:00
JT
1776279742 add Jigu's blog in README.md 2024-06-08 12:42:56 +08:00
Timothy
ae747f9353 Merge pull request #932 from timlrx/feat/github-alerts
Add Github alerts feature
2024-06-02 22:13:10 +08:00
Timothy Lin
f01a4a0517 add github alerts to feature 2024-06-02 22:07:19 +08:00
Timothy Lin
681b7b7be9 add support for github alerts 2024-06-02 22:05:25 +08:00
Timothy
cd25e6138a Merge pull request #931 from timlrx/fix/genPageMetadata
standardize description and og:description
2024-06-02 21:39:08 +08:00
Timothy Lin
d62fa4633e standerdize description and og:description 2024-06-02 21:36:29 +08:00
Timothy
0ecfba4706 Merge pull request #925 from LorenzoCruccu/main
add meamenu.com to project examples V2
2024-06-02 21:13:21 +08:00
Timothy
58ed998e81 Merge pull request #921 from jdhaines/addBlogReference
add JoshHaines.com blog reference for v2
2024-06-02 21:12:29 +08:00
Timothy
da933e1bbc Merge pull request #916 from kpoxo6op/main
Fix yarn workaround for Windows
2024-06-02 21:10:10 +08:00
~Cru
05f15ec552 added meamenu.com to project examples V2 2024-05-23 11:22:24 +02:00
Josh Haines
9dc9aecaf5 docs(readme): add JoshHaines.com blog reference for v2 2024-05-17 12:51:50 -04:00
Timothy
7439f59ce3 Merge pull request #913 from AmosChenZixuan/patch-1
Update README.md
2024-05-12 23:01:21 +08:00
Timothy
cda28c9199 Merge pull request #912 from mark-pitblado/patch-2
remove markpitblado.me from README v2
2024-05-12 23:00:54 +08:00
kpoxo6op
0e64058845 fix yarn workaround for Windows 2024-05-11 20:33:04 +12:00
Amos
0546680a9f Update README.md
add example site
2024-05-06 23:23:19 +02:00
Mark Pitblado
22e349b39d remove markpitblado.me from README v2
Loved the theme but I have now switched to a different framework and thus no longer fair to claim space here!
2024-05-05 23:13:44 -07:00
Timothy
ffb793ea9a Merge pull request #910 from wujieli0207/main
doc: update README
2024-05-02 21:22:46 +08:00
Timothy
68e9e588ef Merge branch 'main' into main 2024-05-02 21:22:39 +08:00
Timothy
d3c0c57c32 Merge pull request #905 from buxuku/feature/add-site
Update README.md
2024-05-02 21:21:55 +08:00
wujieli0207
a6da2a106e doc: update README 2024-05-02 10:34:22 +08:00
Timothy
61960777e7 Merge pull request #907 from timlrx/x-social
Add X icon and update dependencies
2024-05-01 11:20:41 +08:00
Timothy Lin
8b378b128f add title for social icons 2024-05-01 11:17:30 +08:00
Timothy Lin
22e0dc7d7a update core dependencies 2024-05-01 11:09:48 +08:00
Timothy Lin
194d7072d4 add x logo 2024-05-01 11:09:29 +08:00
Timothy
37f3195288 Merge pull request #906 from PxlSyl/patch-1
Fix z-index in ThemeSwitch.tsx
2024-05-01 10:38:06 +08:00
PxlSyl
cbb1007dca Fix z-index in ThemeSwitch.tsx 2024-04-30 21:28:26 +02:00
Lin Xiaodong
a93e3cdbba Update README.md
add examples v2 with my personal blog
2024-04-30 22:56:25 +08:00
Timothy
c55932f2d4 Merge pull request #895 from frank-mendez/feature/update-read-me
Update read me
2024-04-21 18:05:33 +08:00
Timothy Lin
b2d0c6c67d v2.2.0 2024-04-17 22:53:08 +08:00
Timothy Lin
318fb7fc29 2.2.0 2024-04-17 22:52:29 +08:00
Frank Mendez
60b893c872 Merge branch 'main' into feature/update-read-me 2024-04-17 17:58:32 +08:00
Frank Mendez
354e5b0791 feat: updated README.md 2024-04-17 17:55:25 +08:00
Timothy Lin
7ffdcc81da resolve system theme switch merge conflict 2024-04-17 16:29:45 +08:00
Timothy
8eba3a7e7a Merge pull request #894 from timlrx/update/next-14.2.1
update to next 14.2.1
2024-04-17 16:06:26 +08:00
Timothy Lin
781d11d7a2 update to next 14.2.1 2024-04-17 16:06:01 +08:00
Timothy
136662653e Merge pull request #893 from timlrx/feature/header-link-icon
add header link icon
2024-04-17 15:54:06 +08:00
Timothy Lin
55cd4b478a add header link icon 2024-04-17 15:51:20 +08:00
Timothy Lin
5d670d51c4 add header link icon 2024-04-17 15:49:10 +08:00
Timothy
afdda22e08 Merge pull request #885 from Spiteless/add_trillium_blog
feat: Add Trillum's blog to examples
2024-04-17 11:23:19 +08:00
Timothy
ee79db9104 Merge pull request #888 from umihico/patch-1
chore: fix typo (wrong path)
2024-04-17 11:18:05 +08:00
Umihiko Iwasa
3ec96877f9 chore: fix typo (wrong path) 2024-04-08 23:13:34 +07:00
Trillium Smith
9e7eec3730 feat: Add Trillum's blog to examples 2024-04-05 15:43:55 -07:00
Timothy
f88e368113 Merge pull request #843 from talhatahir/main
fix: update comments component incase of no provider
2024-04-04 23:08:01 +09:00
Talha Tahir
88fafffd4b fix: lint error 2024-04-01 14:29:08 +05:00
Timothy Lin
b03b9973ea update to husky v9 2024-03-31 23:37:51 +08:00
Timothy Lin
a4a7bb0c76 fix prettier 2024-03-31 23:33:41 +08:00
Timothy
c65ac01460 Merge pull request #858 from Spiteless/fix_layout_shift_on_ThemeSwitch_load
feat: Move conditional rendering inside svg to prevent layout shift
2024-03-31 22:45:27 +08:00
Timothy
be6c021f0b Merge pull request #850 from iksflow/fix-layout-shifting
fix: layout shifting issue with navbar caused by scroll bar
2024-03-31 22:41:16 +08:00
Timothy
5e187a455b Merge pull request #860 from gnehs/gnehs-patch-1
Update PostLayout to support parsing x.com usernames
2024-03-31 22:34:17 +08:00
Timothy
b8b6df67c6 Merge pull request #856 from mikedidomizio/EmailOctopus-help
Add quick links where to find EmailOctopus API key and List ID
2024-03-31 22:29:58 +08:00
Timothy
49659968b3 Merge pull request #851 from ndamulelonemakh/patch-1
Adding my personal blog(CRUD flow) to the list of v2 showcase projects
2024-03-31 22:23:38 +08:00
Timothy
0e05feb8e8 Merge pull request #854 from drakerossman/patch-1
Update README.md
2024-03-31 22:22:32 +08:00
Timothy
866b05043a Merge pull request #876 from hominsu/patch-1
chore: modified the domain
2024-03-31 22:20:34 +08:00
Timothy
94ac882c83 Merge pull request #881 from timlrx/upgrade/unifiedjs-contentlayer
change to contentlayer2 and update dependencies
2024-03-31 21:51:11 +08:00
Timothy Lin
8db1ff3765 change to contentlayer2 and update dependencies 2024-03-31 21:45:41 +08:00
Homing So
3b36f4754c chore: modified the domain
Migrated to a new domain
2024-03-20 12:28:39 +08:00
Frank Mendez
5cfc51fb03 Update blog link 2024-03-10 15:06:41 +08:00
Frank Mendez
522ac8ed13 Update README.md 2024-03-10 15:05:19 +08:00
gnehs
d1e84b91d2 Update PostLayout to support parsing x.com usernames 2024-02-26 14:21:30 +08:00
Trillium Smith
8b357c3b45 feat: Move conditional rendering inside svg to prevent layout shift 2024-02-19 13:21:48 -08:00
Mike DiDomizio
679a344161 Add quick links where to find EmailOctopus API key and List ID 2024-02-18 09:22:32 -05:00
drakerossman
6cabb9bb3d Update README.md
Include personal blog drakerossman.com
2024-02-14 16:33:43 -05:00
Ndamulelo Nemakhavhani
c9b4b51abb Adding my personal blog(CRUD flow) to the list of v2 showcase projects 2024-02-14 01:50:12 +02:00
iksflow
1d58cf83d7 fix: layout shifting issue with navbar caused by scroll bar 2024-02-13 15:22:33 +09:00
Timothy
abfa4b6940 Merge pull request #845 from tommyasai/update-examples
Add London Tech Talk to example-v2
2024-02-05 15:54:08 +08:00
Tommy Asai
857d7c62b1 Add London Tech Talk to example-v2 2024-02-04 16:45:15 +01:00
talhatahir
70e4a39d85 fix: update comments component incase of no provider 2024-02-03 18:58:46 +05:00
Timothy
f15acd0010 Merge pull request #840 from CuB3y0nd/patch-1
Update README.md
2024-02-02 09:18:27 +08:00
CuB3y0nd
36f74bfb2e Update README.md 2024-02-01 19:02:22 +08:00
Timothy
2c220fa10e Merge pull request #838 from timlrx/upgrade/dependencies
feat: upgrade next 14.1, tailwind 3.4 and pliny 0.1.7
2024-01-28 11:31:22 +08:00
Timothy Lin
2aa47049e6 feat: upgrade next 14.1, tailwind 3.4 and pliny 0.1.7 2024-01-28 11:28:05 +08:00
Timothy
6c79596f0d Merge pull request #822 from sgardn/clarify-umami-regional-instructions
docs: add example of src overwriting for US umami.is tracking
2024-01-25 23:26:02 +08:00
Timothy
a3b9bc230d Merge pull request #835 from HansKing98/patch-1
Update README about V2 example
2024-01-25 23:22:15 +08:00
Timothy
4e3a01f8ad Merge branch 'main' into patch-1 2024-01-25 23:22:01 +08:00
Timothy
281a13515a Merge pull request #832 from akiyamasho/main
docs: add Remote Startup Senpai anime series landing page to Examples v2
2024-01-25 23:20:51 +08:00
Timothy
c45bcc8541 Merge branch 'main' into main 2024-01-25 23:20:44 +08:00
Timothy
d561c65a19 Merge pull request #831 from jachsu/jachsu-patch-1
Update README.md, V2 example added
2024-01-25 23:19:41 +08:00
Timothy
d926f8ebc8 Merge branch 'main' into jachsu-patch-1 2024-01-25 23:19:33 +08:00
Timothy
f8f84701f4 Merge pull request #825 from bdani93/docs/zsebinformatikus
docs: Added Zsebinformatikus to Examples V2
2024-01-25 23:18:14 +08:00
Timothy
1ac5ba83d3 Merge branch 'main' into docs/zsebinformatikus 2024-01-25 23:18:07 +08:00
Timothy
53a103520b Merge pull request #821 from anmorgunov/patch-1
Add an example of template in use to README.md
2024-01-25 23:17:18 +08:00
HansKing98
efb4ebda5b Update README about V2 example 2024-01-25 18:55:27 +08:00
Pavel Zwerschke
6b4832de7c Add system to ThemeSwitch 2024-01-24 11:53:13 +01:00
sho
dec6b7515d docs: add Remote Startup Senpai anime series landing page to Examples v2 2024-01-20 19:11:33 +09:00
jachsu
2b56c69e00 Update README.md, V2 example added 2024-01-19 13:45:06 -05:00
bdani93
a642d8ae71 docs: Added Zsebinformatikus to Examples V2 2024-01-13 17:23:48 +01:00
Scott Gardner
620033be91 docs: add example of src overwriting for US umami.is tracking 2024-01-11 15:35:50 -05:00
Anton Morgunov
57619a6e8a Add an example of template in use to README.md 2024-01-10 20:44:21 -05:00
Timothy
f14179100a Merge pull request #807 from Karhdo/main
chore(readme): Add blog example V2 in README
2024-01-08 11:13:24 +08:00
Timothy
3fc483ba50 Merge pull request #818 from stephondoestech/add-meta-socials
Adding in social options for Instagram and Threads
2024-01-08 11:12:06 +08:00
Timothy
b463e2184f Merge pull request #812 from francisaguilar21/main
docs(readme): Add another blog V2 example
2024-01-06 17:53:20 +08:00
Timothy
78928732a0 Merge branch 'main' into main 2024-01-06 17:53:09 +08:00
Timothy
00c26466a5 Merge pull request #810 from mingi3442/main
Update README.md about V2 example
2024-01-06 17:52:22 +08:00
Timothy
82614a09ef Merge branch 'main' into main 2024-01-06 17:52:12 +08:00
Timothy
4175cfe38f Merge pull request #808 from kasin-it/patch-1
docs(readme): add note when installing on windows
2024-01-06 17:48:35 +08:00
Timothy
f47eccf2f2 Merge pull request #801 from iamkroot/typed-projs
Add type to `projectsData.ts`
2024-01-06 17:47:43 +08:00
Timothy
f1cb3a39b4 Merge pull request #804 from earayu/main
add blog example in README
2024-01-06 17:30:36 +08:00
Stephon Parker
0eb782ad15 adding in social options for instagram and threads 2024-01-03 03:42:42 -05:00
Francis
d93a63ecca Add another blog V2 example 2023-12-25 20:53:48 +08:00
Lee MinGi
1f53f524a5 Update README about V2 example 2023-12-23 23:07:14 +09:00
Lee MinGi
cc51fa5857 Update README about V2 example 2023-12-23 23:05:24 +09:00
Kacper
24d76cb4e8 docs(readme): add note when installing on windows 2023-12-22 11:53:35 +01:00
Đỗ Trọng Khánh
43d59e9480 chore(readme): Add blog example V2 in README 2023-12-22 14:42:47 +07:00
earayu
5756c681a0 add blog example in README 2023-12-19 22:08:54 +08:00
iamkroot
fa27419599 Add type to projectsData 2023-12-11 02:05:53 -06:00
Timothy
03c1115ebf Merge pull request #790 from mark-pitblado/patch-1
Adding example of site using v2 of template to README
2023-12-09 15:14:49 +08:00
Timothy
91254c8c39 Merge pull request #788 from zS1m/docs/update-readme
update README.md
2023-12-09 15:13:57 +08:00
Mark Pitblado
1977767e47 Update README.md 2023-11-24 06:35:03 +00:00
zS1m
8ecf6bdeba update website info 2023-11-22 21:37:03 +08:00
Terminels
0a8e1dbbdc Fix the table element overflow (#787)
* add terminals.run blog for example
* fix table element overflow
2023-11-21 18:17:58 +08:00
Timothy Lin
052165a30c 2.1.0 2023-11-21 11:42:07 +08:00
Timothy
c470ed3a78 Merge pull request #785 from timlrx/faq
add separate FAQ section
2023-11-21 11:40:02 +08:00
Timothy Lin
02ce0940c4 add question mark 2023-11-21 11:39:19 +08:00
Timothy Lin
09255c118b use bullets 2023-11-21 11:38:18 +08:00
Timothy Lin
415c6edf12 add separate faq section 2023-11-21 11:37:13 +08:00
Timothy
e75cc62995 Merge pull request #784 from timlrx/next-14
upgrade to next 14.0.3 and pliny 0.1.6
2023-11-21 10:07:38 +08:00
Timothy Lin
f79d8cecb6 upgrade to next 14.0.3 and pliny 0.0.6 2023-11-21 10:00:16 +08:00
Timothy
e4b6438dca Merge pull request #778 from zziri/dev/sitemap-draft-not-include
draft posts should not be included in the sitemap
2023-11-21 00:08:01 +08:00
Timothy
fa262d0419 prettier 2023-11-20 23:12:38 +08:00
zziri
f6762c350a [dev/sitemap-draft-not-include] draft posts are not included in the sitemap 2023-11-17 18:51:43 +09:00
Timothy
a17e244770 Update README.md 2023-11-14 12:25:43 +08:00
Timothy
52cd31476b Merge pull request #773 from chrisvasey/patch-2
Updated file names to use .ts rather than .js
2023-11-14 11:38:44 +08:00
Timothy
c83ae42230 Merge pull request #771 from z2015/feat/support-chinese-tag
feat: support chinese tag name
2023-11-14 11:37:32 +08:00
Chris Vasey
a921afcf4a Update file ref to .ts rather than .js 2023-11-12 14:18:05 +00:00
Chris Vasey
a39fadd8bc Updated file names to use .ts rather than .js 2023-11-12 14:14:47 +00:00
Jan William
aa7ab3f610 feat: support chinese tag name 2023-11-12 15:58:17 +08:00
Timothy
81a2bb554c Merge pull request #770 from timlrx/fix/katex-overflow
fix katex overflow
2023-11-11 12:42:58 +08:00
Timothy Lin
1bb897672c fix katex overflow 2023-11-11 12:42:05 +08:00
Timothy
901365e329 Merge pull request #768 from zS1m/docs/update-readme
Add contrails.space to README.md
2023-11-11 11:13:17 +08:00
Timothy
cd22f4a37b Merge branch 'main' into docs/update-readme 2023-11-11 11:13:10 +08:00
Timothy
340a571648 Merge pull request #764 from talhatahir/main
Move blog to v2 in readme.md
2023-11-11 11:12:14 +08:00
Timothy
93e23369cf Merge branch 'main' into main 2023-11-11 11:12:05 +08:00
Timothy
095d207372 Merge pull request #762 from dariusz-wozniak/patch-1
Add dariuszwozniak.net to v2 examples
2023-11-11 11:11:03 +08:00
zS1m
4314188829 Add contrails.space to README.md 2023-11-09 21:42:36 +08:00
Talha Tahir
589ba09948 Merge branch 'main' into main 2023-11-08 12:57:45 +05:00
talhatahir
9776368c12 fix: move blog to v2 2023-11-08 12:54:04 +05:00
Dariusz Woźniak
11c9a1e42d Update README.md 2023-11-07 21:13:17 +01:00
Timothy
419e9a60d2 Merge pull request #758 from Romstar/fix-404-missing-blog-post
Closes #757.  Added return notFound() to app/blog/[...slug]/page.tsx …
2023-11-06 10:25:40 +08:00
Timothy
152e8b2462 Merge pull request #750 from hominsu/main
chore: add v2 examples
2023-11-06 10:23:01 +08:00
Timothy
b2735779bf Merge pull request #753 from talhatahir/main
Add thetalhatahir.com
2023-11-06 10:22:16 +08:00
Romstar
06338b334b Closes #757. Added return notFound() to app/blog/[...slug]/page.tsx instead of under construction so that missing pages return 404s and default error page 2023-11-05 21:18:52 -05:00
talhatahir
e8b192f310 Add thetalhatahir.com 2023-11-03 23:37:22 +05:00
Homing So
e331fa5b08 chore: add v2 examples
Signed-off-by: Homing So <homingso@foxmail.com>
2023-11-01 23:54:20 +08:00
Timothy
12b4ed236f Merge pull request #749 from curt-mitch/a11y-score-boost
Accessibility improvement: match aria-label to tag text for "read more" links
2023-11-01 13:50:42 +08:00
Curtis Mitchell
b7705c0d9f Match aria-label to tag text 2023-10-31 16:36:41 -07:00
Timothy
dbb52da729 Merge pull request #748 from dlarroder/main
docs: move dalelarroder.com to v2 examples
2023-10-31 21:34:42 +08:00
Dale Larroder
dacfe6a92c Update README.md 2023-10-31 20:22:41 +08:00
Timothy
47bfef0276 Merge pull request #743 from SangeetAgarwal/patch-1
chore: update readme to mention remix-run alternative
2023-10-19 22:53:26 +08:00
Sangeet Agarwal
ee78ed3fae chore: update readme to mention remix-run alternative
Add a mention to Remix-run alternative per conversation https://github.com/timlrx/tailwind-nextjs-starter-blog/discussions/710#discussioncomment-7321796
2023-10-19 08:29:40 -04:00
Timothy
e820966d28 Merge pull request #742 from timlrx/fix/head
upgrade to next 13.5.6
2023-10-19 10:46:37 +08:00
Timothy Lin
f6e9ca4323 upgrade to next 13.5.6 2023-10-19 10:43:55 +08:00
Timothy
c3f1586fd8 Merge pull request #741 from timlrx/fix/head
fix: remove unused head.tsx
2023-10-19 10:16:33 +08:00
Timothy Lin
01413828b1 fix: remove unused head.tsx 2023-10-19 10:12:36 +08:00
Timothy
bfa921dcc3 Merge pull request #740 from BenjaminLesne/fix/prettier-plugin-tailwindcss-not-used
fix prettier-plugin-tailwindcss not being used
2023-10-19 10:05:06 +08:00
Benjamin Lesne
65ee7833fe ran prettier on layouts directory 2023-10-18 20:16:51 +02:00
Benjamin Lesne
c9ae2edb93 ran prettier with new config on components directory 2023-10-18 14:50:19 +02:00
Benjamin Lesne
3c7e2c5c53 fix prettier-plugin-tailwindcss not being used 2023-10-18 14:41:02 +02:00
Timothy
89dc81fb79 Merge pull request #734 from timlrx/timlrx-astro-readme
Add link to astro template
2023-10-13 10:58:48 +08:00
Timothy
6d4d2b569b Add link to astro template 2023-10-13 10:57:58 +08:00
Timothy
09c65bdff3 Merge pull request #733 from ttys3/fix-rss-last-build-date
fix: use sort posts for rss, fix lastBuildDate
2023-10-13 10:51:34 +08:00
ttyS3
d754ca9dfd fix: use sort posts for rss, fix lastBuildDate 2023-10-12 01:05:45 +08:00
Timothy
102e1fee7f Merge pull request #725 from jktrn/main
Add enscribe.dev to V2 examples
2023-10-05 11:41:25 +08:00
Jason
572baeeac6 Add enscribe.dev to V2 examples 2023-10-01 13:41:56 -07:00
Timothy Lin
7f645810f4 2.0.2 2023-09-26 10:46:14 +08:00
Timothy
76de3970db Merge pull request #718 from timlrx/update/next-13.5.3
update to next 13.5.3
2023-09-26 10:44:16 +08:00
Timothy Lin
862f73ab73 update to next 13.5.3 2023-09-26 10:35:21 +08:00
Timothy
b7655a2d50 Merge pull request #717 from timlrx/fix/themeswitch
fix: revert to use resolvedTheme
2023-09-26 10:30:41 +08:00
Timothy Lin
7d8443152e fix: revert to use resolvedTheme 2023-09-26 10:23:31 +08:00
Timothy
90c3a671cc Merge pull request #716 from timlrx/fix/lson-ld
Remove authors field in ld+json
2023-09-26 10:21:53 +08:00
Timothy Lin
ae36330d46 fix: remove redundant authors ld+json field 2023-09-26 10:17:04 +08:00
Timothy Lin
0ae7921c7b fix: include authors in ld+json 2023-09-26 10:07:48 +08:00
Timothy
038bd1d49f Merge pull request #715 from dishs/main
bugfix: Fix for missing image in ld+json blob
2023-09-26 10:06:10 +08:00
Dushyant Singh
516d123640 bugfix: Fix for missing image in ld+json blob 2023-09-22 16:54:42 -07:00
Timothy
2cd0c8184a Merge pull request #708 from L4ys/main
fix: sort posts in tags page
2023-09-08 15:49:32 +08:00
Lays
a06efea2cb chore: run prettier for tags page 2023-09-08 15:45:27 +08:00
Timothy
01e33572b7 Merge pull request #707 from rabbyalone/rabbyalone-patch-1
Added Rabby Hasan's blog ref into readme
2023-09-08 15:36:51 +08:00
Lays
669d821b80 fix: sort posts in tags page 2023-09-03 21:45:13 +08:00
Md Rabby Hasan
fe323c702b Added Rabby Hasan's blog ref into readme 2023-09-03 16:04:51 +06:00
Timothy
fef559b247 Merge pull request #706 from timlrx/docs/mdx-component
docs: add example on creating a mdx chart component
2023-09-01 18:34:49 +08:00
Timothy Lin
5b7661721c docs: add example on creating a mdx chart component 2023-09-01 17:21:23 +08:00
Timothy
27e48f5087 Merge pull request #705 from PrabhuKiran8790/patch-1
added Prabhu's Blog link
2023-08-29 11:23:48 +08:00
Prabhu Kiran Konda
87a7fd85f5 added Prabhu's Blog link 2023-08-28 21:11:58 +05:30
Timothy
cc4e17d5b1 Merge pull request #701 from rareyesdev/fix/include-drafts-in-tag-data-during-development
fix: include drafts in tag data during development
2023-08-28 10:46:17 +08:00
Alejandro Reyes
8cc036a88f fix: include drafts in tag data during development 2023-08-27 00:07:13 -07:00
Timothy
ef87df56a0 Merge pull request #700 from rareyesdev/fix/draft-state-during-development
fix: remove hardcoded check for draft in development
2023-08-27 12:44:27 +08:00
Alejandro Reyes
d2ae32835e fix: hardcoded check for draft in development 2023-08-26 17:04:18 -07:00
Timothy Lin
4b4147c077 2.0.1 2023-08-25 20:43:55 +08:00
Timothy
52d3aa9cef Merge pull request #697 from timlrx/enhance/kbar
Bump package versions and enhance kbar
2023-08-25 21:59:07 +08:00
Timothy
153e067cde Merge branch 'main' into enhance/kbar 2023-08-25 21:54:54 +08:00
Timothy
1347707503 Merge pull request #696 from acsoto/main
add SOTO's Blog to V2 examples
2023-08-25 21:53:03 +08:00
soto
df0470c4b3 add SOTO's Blog to V2 examples 2023-08-25 21:28:50 +08:00
Timothy
d3c8f678a9 Merge pull request #695 from thekoc/skip-draft-posts
Prevent drafts from showing on PostLayout
2023-08-25 21:23:52 +08:00
Timothy Lin
98fc0c72a9 add faq with kbar customization 2023-08-25 20:35:15 +08:00
Timothy Lin
bb7a8db162 bump next to 13.4.19 and pliny to 0.1.2 2023-08-25 20:23:29 +08:00
thekoc
598623e025 Prevent drafts from showing on PostLayout.
Uses `allCoreContent` to filter out drafts in production.
Otherwise drafts will appear on PostLayout as "Previous/Next Article".
2023-08-25 16:25:53 +08:00
Timothy
9eb8876eb7 Merge pull request #692 from chasingboy95/tag-match-display-fix
fix non-english tags filter failed, display error
2023-08-25 09:22:45 +08:00
Timothy
18c54c9f7d Merge pull request #693 from Felixao9/main-1
Fix README typo
2023-08-25 09:17:49 +08:00
Timothy
f3bcdd1f12 Merge pull request #694 from tsix2019/main
add tsix blog
2023-08-25 09:17:16 +08:00
Tsix666
67785b4b8b add tsix blog 2023-08-24 15:57:48 +08:00
Felixao9
eee576d035 Update README.md
Fixed the spelling of "contributers" which should be "contributors." 🐛
2023-08-24 11:56:53 +05:00
Marino
19ce00d58b fix non-english tags filter failed, display error 2023-08-23 17:00:11 +08:00
Timothy
3c09e66a18 Merge pull request #688 from 5ym/5ym-patch-1
Update ListLayoutWithTags.tsx to fix overflow
2023-08-21 21:39:53 +08:00
Ruk
8adb2351b9 Update ListLayoutWithTags.tsx 2023-08-20 12:02:39 +09:00
Timothy
af33eb2b8e Merge pull request #687 from timlrx/docs/static-build
add code sample for image.tsx
2023-08-19 15:29:49 +08:00
Timothy Lin
91b9b6e4f2 add code sample for image.tsx 2023-08-19 15:29:10 +08:00
Timothy
fd6a88a8d1 Merge pull request #683 from eXon/feature/add-bendotcodes
Add ben.codes in V2 examples
2023-08-16 15:32:15 +08:00
Timothy
54ef428467 Merge pull request #682 from kavehtehrani/kaveh.page
docs: adding kaveh.page to the list of blogs using the template
2023-08-16 15:29:49 +08:00
Benoit Tremblay
5a3ba098c4 Add ben.codes in V2 examples 2023-08-15 23:42:49 -04:00
kwar
60d7880715 docs: adding kaveh.page to the list of blogs using the template 2023-08-15 13:42:19 -04:00
Timothy
420b6f4a31 Merge pull request #678 from timlrx/doc/static-build
update readme on static build
2023-08-13 10:47:18 +08:00
Timothy Lin
4fa87b0f58 update readme on static build 2023-08-13 10:46:27 +08:00
Timothy
664a075c68 Merge pull request #674 from petrsiegl/main
Add missing directory to lint command
2023-08-11 21:39:22 +08:00
Timothy
f4380299c0 Merge pull request #677 from timlrx/fix/json-ld
fix: ld json serialization
2023-08-11 21:36:31 +08:00
Timothy Lin
78e47a210e fix: ld json serialization 2023-08-11 18:56:35 +08:00
Petr Siegl
484784b255 fix(lint): add missing directory to lint command
Add new app directory of next.js 13
2023-08-09 09:49:33 +02:00
Timothy
eea57df132 Merge pull request #673 from timlrx/timlrx.com
Add my blog to list of v2 blogs
2023-08-05 18:36:59 +08:00
Timothy
15c5b3c026 Add my blog to list of v2 blogs 2023-08-05 18:36:30 +08:00
Timothy
a718936889 Merge pull request #672 from timlrx/fix/list-layout-style
fix: list layout style
2023-08-05 18:10:47 +08:00
Timothy Lin
5226bfad9a fix: list layout style 2023-08-05 18:10:20 +08:00
Timothy
828984c3a8 Update README.md 2023-08-05 16:46:56 +08:00
Timothy
44cf923c24 Merge pull request #671 from timlrx/v2
bump version to 2.0
2023-08-05 16:38:01 +08:00
Timothy Lin
e1127f9570 bump version to 2.0 2023-08-05 16:36:55 +08:00
Timothy
da1985aeb1 Merge pull request #670 from timlrx/v2
move katex and prism css to the blog page
2023-08-05 16:34:29 +08:00
Timothy Lin
a9d3d2ecb8 move katex and prism css to the blog page 2023-08-05 16:32:49 +08:00
Timothy
0edfd060b1 Merge pull request #658 from timlrx/v2
V2 Release
2023-08-05 16:00:13 +08:00
Timothy Lin
4c087f257a change branch ref from master to main 2023-08-05 15:53:09 +08:00
Timothy Lin
87ff574e24 resolve merge conflict 2023-08-05 15:51:49 +08:00
Timothy Lin
5ee2251344 add blog post for v2 release 2023-08-05 13:17:36 +08:00
Timothy Lin
2ea12dff88 fix: sort post for kbar search 2023-08-05 13:17:36 +08:00
Timothy
354c628879 Update README.md
Add v1 showcase video
2023-08-05 11:16:25 +08:00
Timothy
c281adc879 Update README.md
Clean v1 example list
2023-08-05 11:01:29 +08:00
Timothy Lin
9a38d927d1 update readme 2023-07-30 21:19:08 +08:00
Timothy Lin
d94c31ddea add search component 2023-07-30 17:20:28 +08:00
Timothy
50869bac5e Merge pull request #621 from silent1mezzo/master
Add quotes to title and summary
2023-07-29 23:05:06 +08:00
Timothy Lin
3dcb7e56f9 add navigation to home for mobile 2023-07-29 22:35:45 +08:00
Timothy Lin
0fc89247ba update pliny to stable version 2023-07-29 22:33:39 +08:00
Timothy Lin
ad47ca6980 change default font from inter to space grotesk 2023-07-29 19:00:04 +08:00
Timothy Lin
94091a089b add new list layout 2023-07-29 12:31:36 +08:00
Timothy Lin
f8a5233460 fix loading of inter font 2023-07-29 11:06:46 +08:00
Timothy Lin
ceb913f767 feat: add new post banner layout 2023-07-26 17:04:56 +08:00
Timothy Lin
7b56a4836b fix draft post display and improve typings 2023-07-26 00:49:18 +08:00
Timothy Lin
f133d76695 update prism style 2023-07-25 18:59:18 +08:00
Timothy Lin
4278bec763 refactor tailwind typography to v3 and update styling 2023-07-25 18:58:58 +08:00
Timothy Lin
ed54f2fcaf fix: decodeURI to support non-english slugs 2023-07-24 17:06:28 +08:00
Timothy Lin
2d3b825246 fix: encode both slug and path 2023-07-24 00:21:24 +08:00
Timothy Lin
cd8dc0a230 update yarn lock 2023-07-24 00:12:06 +08:00
Timothy
a9f6ac4bd4 Merge pull request #665 from ttys3/v2-patch
v2 misc changes
2023-07-24 00:27:41 +08:00
ttyS3
09d4b96741 fix(build): add mising @types/mdx required by "import type { MDXComponents } from 'mdx/types'" 2023-07-23 23:47:06 +08:00
ttyS3
74c2f16f81 chore: enable ignoreMissing option for rehypePrismPlus 2023-07-23 23:39:27 +08:00
ttyS3
44ffc642cf fix: fix compile error for non-latin slug blog posts 2023-07-23 23:35:39 +08:00
ttyS3
6990bb210a chore: tags can be empty, set default value to avoid compilation failure 2023-07-23 23:29:48 +08:00
ttyS3
2338fd1819 fix: import missing katex css 2023-07-23 23:27:37 +08:00
ttyS3
14067f2039 chore: layouts/PostLayout.tsx use main branch for editUrl 2023-07-23 23:26:33 +08:00
Timothy Lin
293e16e1df fix: use the right escape function 2023-07-23 23:06:10 +08:00
Timothy Lin
ed0b0eb953 feat: allow user to modify rss feed page name 2023-07-23 23:01:00 +08:00
Timothy Lin
6140ff7780 comment out unused analytics services and fix csp 2023-07-23 22:37:40 +08:00
Timothy Lin
1bbcb92333 chore: remove unused components 2023-07-23 22:26:15 +08:00
Timothy Lin
343e1a921a update pliny and use new analytics setup with umami 2023-07-23 22:21:26 +08:00
Timothy Lin
1e19247ae1 inline svg and add mastodon 2023-07-22 18:16:06 +08:00
Timothy Lin
d9f6f367fa chore: ignore eslint no unused var 2023-07-22 16:26:08 +08:00
Timothy Lin
2a18a80fd1 chore: prettier lint 2023-07-22 16:18:02 +08:00
Timothy Lin
dadff718bb update packages 2023-07-22 16:02:57 +08:00
Timothy Lin
67e7801462 fix: remove search from postbuild 2023-07-22 16:02:36 +08:00
Timothy Lin
a23ba55396 fix: use correct component 2023-07-22 16:01:51 +08:00
Timothy Lin
71513a6740 fix: ignore hydration warning 2023-07-22 16:01:25 +08:00
Timothy Lin
af0aa079e2 update pliny dependencies 2023-07-17 22:32:49 +08:00
Timothy Lin
d43404a7d8 fix: remove type checking on siteMetadata 2023-07-16 23:53:47 +08:00
Timothy Lin
9b9355baed chore: tidy up some code 2023-07-16 23:42:48 +08:00
Timothy Lin
f063d4d8b0 fix newsletter api route 2023-07-16 23:42:19 +08:00
Timothy Lin
20704c9f75 sync with pliny dev 2023-07-16 18:52:51 +08:00
Adam McKerlie
96b7b3d20e Merge branch 'timlrx:master' into master 2023-07-11 15:37:04 -04:00
Timothy Lin
d61487efa4 refactor: aggregate tag count with contentlayer 2023-07-12 00:51:31 +08:00
Timothy Lin
391e529083 fix: remove async and improve typing 2023-07-12 00:45:49 +08:00
Timothy
5326015099 Remove spam websites
Remove websites as mentioned in: https://github.com/timlrx/tailwind-nextjs-starter-blog/issues/651
2023-07-10 09:03:58 +08:00
Timothy Lin
988b1aa2ce feat: add alternate rss xml meta tag 2023-07-09 23:29:39 +08:00
Timothy Lin
202fa62b3f feat: add back json ld 2023-07-09 23:09:07 +08:00
Timothy Lin
fab1ead77b fix: restore individual tag route 2023-07-09 17:27:47 +08:00
Timothy Lin
a3085fbc06 chore: remove unused lib folder 2023-07-09 16:19:17 +08:00
Timothy Lin
54ff8c7b48 refactor: use robots and sitemap metadata 2023-07-09 15:55:41 +08:00
Timothy
b0b6916975 Merge pull request #535 from hta218/master
Update Leo's blog description on README.md
2023-07-09 11:01:07 +08:00
Timothy Lin
b6dac68f61 refactor: use metadata export for seo 2023-07-08 21:03:46 +08:00
Timothy Lin
1dfa80e8bd refactor: use mdx rsc 2023-07-08 15:23:25 +08:00
Timothy Lin
8261ff0ec4 chore: resolve opentelemetry version conflict 2023-07-08 15:21:37 +08:00
Timothy Lin
09ba0550ca refactor: migrate to rsc and app dir 2023-07-07 11:17:22 +08:00
Adam McKerlie
02c0eb0fb1 Add quotes to title and summary 2023-03-13 18:43:15 -04:00
Timothy
a03d358ef9 Merge pull request #565 from lauthieb/patch-1
docs: update Lighthouse report's link
2022-11-05 14:07:06 +08:00
Timothy
f83179d62f Merge pull request #553 from shottah/master
Modify configuration for GCP deployment
2022-11-05 14:05:09 +08:00
Timothy
6b21c42f35 Merge pull request #539 from curedbylethe/updata-read-me
Update Readme for Netlify's updated Next.js runtime
2022-11-05 13:59:09 +08:00
Laurent Thiebault
2f8bd47793 docs: update Lighthouse report's link 2022-11-04 08:46:53 +01:00
Matthew Abraham
90ca9af817 Modify configuration for GCP deployment (#1)
* chore: gcp compile dependency

* chore: add gcp instructions

Co-authored-by: Matthew Abraham <wasteofintel@gmail.com>
2022-10-04 20:43:53 -04:00
Parsa
a86ec3fae9 fix docs
fixed the url to netlify's docs, made changes to the netlify section of the docs to be more original based on contributor's suggestions
2022-09-07 19:32:22 +04:30
Parsa
5e93e14f2f Update Readme for Netlify's updated Next.js runtime 2022-09-06 17:56:09 +04:30
Tuan Anh (Leo) Huynh
dee92563b2 Update Leo's blog description on README.md 2022-08-27 22:53:31 +07:00
Timothy
815eaaa042 Merge pull request #524 from Sabareh/patch-1
Example website from the template
2022-08-20 16:48:13 +08:00
Timothy
c8b161b9bb Merge branch 'master' into patch-1 2022-08-20 16:48:06 +08:00
Timothy
b55ffd4a34 Merge pull request #521 from SangeetAgarwal/master
Update README.md
2022-08-20 16:47:06 +08:00
Timothy
b5d13b9d30 Merge branch 'master' into master 2022-08-20 16:46:59 +08:00
Timothy
0e3a17d4c9 Merge pull request #517 from raphaelchelly/raphaelchelly-patch-1
Update README.md
2022-08-20 16:44:18 +08:00
Victor Oketch Sabare
215eb20255 Example website from the template 2022-08-12 12:31:52 +03:00
Sangeet Agarwal
18e381973c Update README.md 2022-08-08 09:58:53 -04:00
Raphaël
6e471cb254 Update README.md
Added raphaelchelly.com to example websites built from tailwind-nextjs-starter-blog
2022-08-03 10:46:09 +02:00
Timothy
de43792edb Merge pull request #510 from Dev-Elie/patch-1
Update README.md
2022-07-23 11:34:06 +08:00
Timothy
df0a26012a Merge branch 'master' into patch-1 2022-07-23 11:33:55 +08:00
Timothy
e259c44cd3 Merge pull request #508 from josemiguel-alvarez/jm/remove-broken-link-readme
Remove broken website link from README
2022-07-23 11:32:56 +08:00
Timothy
7058059420 Merge pull request #507 from josemiguel-alvarez/jm/add-blog-to-readme
Add jmalvarez.dev to README
2022-07-23 11:32:25 +08:00
Timothy
77fb61cbbb Merge branch 'master' into jm/add-blog-to-readme 2022-07-23 11:32:18 +08:00
Timothy
65100a2e3e Merge pull request #504 from JustinGOSSES/master
added justingosses.com to list of examples built with template
2022-07-23 11:31:39 +08:00
Ondiek Elijah Ochieng
59fa606ed2 Update README.md
Added ondiek-elijah.me to example websites built from tailwind-nextjs-starter-blog
2022-07-20 14:31:39 +03:00
José Miguel Álvarez
aafdf9e999 Remove broken website link from README 2022-07-18 23:15:37 +02:00
José Miguel Álvarez
afd72d5236 Add jmalvarez.dev to README 2022-07-18 23:11:44 +02:00
Justin Gosses
a278a45a01 Update README.md 2022-07-16 12:56:36 -05:00
Justin Gosses
d69010249a added justingosses.com to the list of examples on README 2022-07-16 12:55:50 -05:00
Timothy
4bd9eb9c7c Merge pull request #498 from zen2do/patch-1
Update .gitattributes
2022-07-14 00:13:50 +08:00
Timothy
00cb244b93 Merge pull request #499 from KuraFire/patch-1
Fix URL to Timothy Lin's website in README file
2022-07-14 00:11:50 +08:00
Faruk Ateş (Supernova)
4015038c8a Fix URL to Timothy Lin's website in README file 2022-07-05 11:06:49 -07:00
Zen
dda6d6befa Update .gitattributes 2022-07-06 01:48:36 +08:00
Timothy
3b4c83e077 Merge pull request #493 from anuuyu/master
add PostHog analytics - The product analytics suite you can host yourself
2022-07-02 17:02:34 +08:00
anuuyu
5d8915a3b5 add PostHog analytics 2022-06-27 11:17:01 +08:00
Timothy
2eae8a9403 Merge pull request #491 from Cwarcup/add-cwarcup-personal-blog
added new URL and personal blog
2022-06-23 23:35:11 +08:00
cwarcup
09df7ed51d added new URL and personal blog 2022-06-22 16:17:28 -07:00
Timothy Lin
f9fce2a55f recommend installation using pliny 2022-06-17 21:32:24 +08:00
Timothy
b442370b71 Merge pull request #484 from Cwarcup/add-cwarcup-contribution
add Cwarcup's podcast website to readme example
2022-06-17 21:10:02 +08:00
cwarcup
81231be318 add Cwarcup's podcast website to readme example 2022-06-15 13:10:50 -07:00
Timothy
69c64657e1 Merge pull request #483 from timlrx/feat/meta-prefers-color-scheme
1.5.6
2022-06-15 23:41:58 +08:00
Timothy Lin
a08d988d97 1.5.6 2022-06-15 23:40:18 +08:00
Timothy
d05992b145 Merge pull request #482 from timlrx/feat/meta-prefers-color-scheme
feat: use prefers-color-scheme for meta theme-color
2022-06-15 22:39:10 +08:00
Timothy Lin
708e4d9a65 feat: use prefers-color-scheme for meta theme-color 2022-06-15 22:27:05 +08:00
Timothy
a93f34b301 Merge pull request #481 from datscyril/patch-1
Update README.md
2022-06-15 08:28:05 +08:00
Cyril GHALI
acb5a813a7 Update README.md 2022-06-13 10:09:54 +02:00
Timothy
654f3913e0 Merge pull request #480 from pycoder2000/master
Updated README to add Parth Desai's site
2022-06-13 13:47:22 +08:00
Timothy
3b64763f43 Merge pull request #479 from dlarroder/master
add dalelarroder.com's source code
2022-06-13 13:46:42 +08:00
Timothy
315d667c47 Merge pull request #478 from mlevit/master
frontmatter images can now be external
2022-06-13 13:46:19 +08:00
Timothy
354b7b20e1 Merge pull request #477 from cdransf/divider-consistency
Fixes inconsistency in styles for divider on author and list layouts in dark mode
2022-06-13 13:45:21 +08:00
Parth Desai
02b82df7cf Updated README to add Parth Desai's site 2022-06-12 14:41:37 +05:30
Dale Larroder
e5e84ac4e1 Update README.md 2022-06-12 02:08:13 +08:00
Marat Levit
26a7cbbedc frontmatter images can now be external 2022-06-10 00:50:23 +00:00
Cory Dransfeldt
94f6dbe63d Fixes inconsistency in styles for divider on author and list layouts in dark mode 2022-06-09 10:26:13 -07:00
Timothy
d19f8eed7b Merge pull request #470 from thekamalkashyap/master
fixed glitch in mobile navbar
2022-05-30 21:59:54 +08:00
Timothy
c3f8f2f27c Merge pull request #472 from acoudouy/axolo-blog
add our example in the readme
2022-05-30 21:46:33 +08:00
acoudouy
a947076793 Axolo blog in readme 2022-05-30 11:06:07 +02:00
thekamalkashyap
f8ae4d5e59 changes in mobile navbar 2022-05-28 21:31:43 +05:30
Timothy
023f8482dc Merge pull request #468 from thekamalkashyap/patch-1
added website to examples
2022-05-26 21:52:43 +08:00
Timothy
791993d03c Merge branch 'master' into patch-1 2022-05-26 21:52:35 +08:00
Timothy
6eecd8462f Merge pull request #467 from reubence/add-website-to-readme
Adding my blog to demo list
2022-05-26 21:51:23 +08:00
Kamal
f8b3ce5a5d Update README.md 2022-05-26 17:05:35 +05:30
Reuben Rapose
9c68a4d898 Adding my blog to demo list 2022-05-26 14:52:30 +05:30
Timothy
cddcfcfb83 Merge pull request #462 from Phonbopit/chore/add-example-sites
Add my websites to example list
2022-05-24 23:14:35 +08:00
Timothy
1664a9d500 Merge pull request #464 from llovvoll/feat/page-not-found-title
feat: add title when page not found
2022-05-24 23:13:40 +08:00
llovvoll
821884168d feat: add title when page not found 2022-05-24 21:34:44 +08:00
Chai Phonbopit
c15d4198b2 chore(README) - Add my websites to example list 2022-05-21 16:35:14 +07:00
Timothy
7a0fdf9e85 Merge pull request #458 from dlarroder/master
Add dalelarroder.com to examples
2022-05-18 09:49:38 +08:00
Dale Larroder
f8baddd508 Update README.md 2022-05-14 20:36:55 +08:00
Timothy
1cff81143a Merge pull request #455 from nchristopher/patch-1
✏️ Add my blog to examples
2022-05-11 11:44:48 +08:00
Nicholas Christopher
632a078052 ✏️ Add my blog to examples 2022-05-10 20:18:22 -07:00
Timothy
86e55bc6b4 Merge pull request #452 from amalafrozalam/feature/email-octopus
Add EmailOctopus
2022-05-04 09:20:36 +08:00
Amal Afroz Alam
2e0aad8626 Add EmailOctopus 2022-05-03 18:56:50 -04:00
Timothy Lin
923da1bcdb 1.5.5 2022-04-22 17:26:50 -07:00
Timothy
db82597b21 fix: remove unused variable 2022-04-22 17:22:55 -07:00
Timothy
3f14c35252 Merge pull request #441 from timlrx/fix/comments-mapping
fix: mapping property in comments
2022-04-22 17:11:22 -07:00
Timothy Lin
7d64b18b40 fix: remove unused code 2022-04-22 17:07:08 -07:00
Timothy Lin
e9fda79ee7 fix: mapping property in comments 2022-04-22 17:02:24 -07:00
Timothy
5f8dd94e43 Merge pull request #440 from timlrx/fix/scroll
fix: remove smoothscroll-polyfill
2022-04-22 16:48:28 -07:00
Timothy Lin
0c4606916f fix: remove smoothscroll-polyfill 2022-04-22 16:45:30 -07:00
Timothy
3e9116b888 Merge pull request #439 from crucialfelix/fix/quick-start-examples
Fix Quick Start install examples for zsh by adding single quotes
2022-04-22 16:39:17 -07:00
Timothy
c7d6509904 Merge pull request #438 from kittanb/master
Add a new example website to README.md
2022-04-22 16:38:57 -07:00
Chris Sattinger
9b26dabd3d Fix Quick Start install examples for zsh by adding single quotes
zsh will throw an error for unquoted #
2022-04-21 13:14:13 +02:00
kittanb
7ef1e89523 Add a new example website to README.md 2022-04-18 19:36:49 +03:00
Timothy Lin
41839607af 1.5.4 2022-04-05 10:13:25 -07:00
Timothy
691b48d67f Merge pull request #432 from timlrx/update-dependencies
chore: update next and tw dependencies
2022-04-05 10:13:04 -07:00
Timothy Lin
60fd0a12ad chore: update next and tw dependencies 2022-04-05 10:10:40 -07:00
Timothy
cee491802f Merge pull request #427 from cdransf/master
Render floating comment button only if a provider is specified
2022-03-28 11:52:00 -07:00
Timothy
3fd5c6241d Merge pull request #428 from LeFizzy/patch-1
Add a new example website to README.md
2022-03-28 11:49:17 -07:00
LeFizzy
1ad3c64846 Add a new example website to README.md
Recently, I started working on a hobby project of mine whose purpose is to help & support upcoming artists and I decided to use the Tailwind Nextjs Starter Blog, which was the perfect fit for my case: finding something that is easy to modify, use and deploy. 

As it seems like on the site, I modified a lot on the "core" of Tailwind Nextjs Starter Blog and I also separated two blog parts: the actual blogging feature for my site and the lyrics part: they also generate their own sitemap, tags and RSS files, and the greatest part of it that it was really easy to add, because nowadays, sadly, I don't really have the time to work on a personal project. This is why I'd like to recommend Tailwind Nextjs Starter Blog to everyone. 👍
2022-03-28 12:13:19 +02:00
Cory Dransfeldt
484296ae13 Render floating comment button only if a provider is specified 2022-03-27 11:36:27 -07:00
Timothy Lin
2828acb108 docs: add contentlayer version to readme 2022-03-22 15:10:26 -07:00
Timothy Lin
32280d3ab5 1.5.3 2022-03-22 15:04:58 -07:00
Timothy
5f227cbed5 Merge pull request #423 from wangel13/patch-1
Update AuthorLayout.js
2022-03-22 14:22:51 -07:00
Taras Protchenko
2854aa9be3 Update AuthorLayout.js
Removing unnecessary margin to center author information with author avatar.
2022-03-20 23:23:45 +03:00
Timothy
6d01d2dac7 Merge pull request #416 from maqi1520/master
Add blog to examples
2022-03-08 22:53:33 +08:00
maqibin
6f21a627dd Add my blog to examples
A blog of Chinese front-end developers 狂奔小马的博客
2022-03-08 10:35:09 +08:00
Timothy
37d5008c81 Merge pull request #415 from timlrx/tailwind/mdx
fix: include tailwind style in mdx files
2022-03-03 21:59:38 +08:00
Timothy Lin
d810aaef4f fix: include tw style in mdx files 2022-03-03 21:58:13 +08:00
Timothy
b81c777bb7 Merge pull request #413 from bpiggin/master
Update README.md
2022-03-01 09:35:48 +08:00
Benjamin Piggin
514254510c Update README.md 2022-02-28 21:32:12 +00:00
Timothy
370bdba906 Merge pull request #406 from agamm/master
Fallback if no comment present
2022-02-28 22:12:50 +08:00
Agam More
e27ad36424 Fallback if no comment present 2022-02-25 23:19:56 -05:00
Agam More
4d2611f8a8 Fallback if no comment present 2022-02-25 23:15:52 -05:00
Timothy
f2472ec4b0 Merge pull request #402 from einargudnig/master
Update README.md
2022-02-22 14:29:49 +08:00
Einar Guðni Guðjónsson
5565d26d81 Update README.md 2022-02-20 19:50:06 +00:00
Timothy Lin
46e68d2959 1.5.2 2022-02-20 22:55:45 +08:00
Timothy
78e7d64068 Merge pull request #400 from timlrx/fix/webpack-loader
fix: remove unused loader config
2022-02-19 12:54:40 +08:00
Timothy Lin
f29e6068d7 fix: remove unused loader config 2022-02-19 12:52:51 +08:00
Onur Geneş
01c180eb4f added Revue support (#397)
feat: add Revue support
2022-02-19 12:50:29 +08:00
Timothy
70e78aef76 Merge pull request #395 from melonbarCode/add-giscus-config
feat: add giscus config properties
2022-02-17 21:08:45 +08:00
Timothy
55862a1475 Merge pull request #396 from abi/patch-2
chore: add personal website to examples
2022-02-17 21:03:43 +08:00
Abi Raja
bc9da8b050 chore: add personal website to examples 2022-02-16 22:59:27 -05:00
MelonbarCode
c912a22741 feat: add giscus config properties 2022-02-17 02:01:47 +09:00
Timothy
f2c0f0a01e Merge pull request #392 from uuki/patch
chore: fix typo
2022-02-16 09:36:21 +08:00
Timothy
30f6000c9a Merge pull request #391 from marceloavf/patch-1
chore: add new example marceloformentao
2022-02-16 09:36:10 +08:00
uuki
7be6ee7573 chore: fix typo 2022-02-15 22:41:14 +09:00
Marcelo Formentão
4bce8c571f chore: add new example marceloformentao 2022-02-15 09:07:44 -03:00
Timothy Lin
5f59018fa3 1.5.1 2022-02-13 23:33:17 +08:00
Timothy
72ca0868e1 Merge pull request #389 from timlrx/hsts
exclude preload from hsts header
2022-02-13 23:32:27 +08:00
Timothy Lin
5553b0dc5a exclude preload from hsts header 2022-02-13 23:28:02 +08:00
Timothy
fc03004fb6 Merge pull request #388 from timlrx/katex-css
self serve katex css
2022-02-13 23:21:22 +08:00
Timothy Lin
e5a88d6261 self serve katex css 2022-02-13 23:11:20 +08:00
Timothy
aa1ba4672c Update bug_report.md 2022-02-11 22:49:35 +08:00
Timothy
b4afda64ae Merge pull request #344 from onurgenes/master
added canonicalUrl support
2022-02-11 22:37:37 +08:00
Onur Geneş
f46cebe696 remove unnecessary imports 2022-02-11 17:24:50 +03:00
Onur Geneş
8e9aad6b92 don't add link if canonicalUrl is present 2022-02-11 14:14:15 +03:00
Onur Geneş
58f77e8db1 Merge branch 'timlrx:master' into master 2022-02-11 14:09:55 +03:00
Timothy
fe08ac5e5e Merge pull request #382 from AlexanderZeilmann/master
Add setup info regarding the CSP
2022-02-10 23:24:30 +08:00
Alexander Zeilmann
5ddacdfdfd Add setup info regarding the CSP 2022-02-10 11:43:22 +01:00
Timothy
1488ed8f74 Merge pull request #380 from llovvoll/fix/eslint-warning
fix: eslint warning
2022-02-07 10:15:55 +08:00
llovvoll
ed0bb9a83c fix: eslint warning 2022-02-07 10:02:57 +08:00
Timothy
609623d405 Merge pull request #379 from timlrx/refactor/simplify-mdx
remove redundant frontmatter parsing
2022-02-06 21:11:03 +08:00
Timothy Lin
d78b8bd902 remove redundant frontmatter parsing 2022-02-06 21:09:57 +08:00
Timothy
cf04e25266 Merge pull request #376 from timlrx/fix/tailwind-prism
tailwind prism css changes
2022-02-06 00:08:14 +08:00
Timothy Lin
f395baa2e3 docs: add lang for code block examples 2022-02-06 00:05:04 +08:00
Timothy Lin
5bf22b62ca set optimizeUniversalDefaults 2022-02-06 00:04:33 +08:00
Timothy Lin
4602486e3c fix: overide table styling for prism token 2022-02-05 23:57:58 +08:00
Timothy
a3173294bd Merge pull request #374 from TszHong0411/master
Add honghong.me :)
2022-02-01 23:50:13 +08:00
Timothy
b0d8985018 Merge branch 'master' into master 2022-02-01 23:50:01 +08:00
tszhong0411
d398d7c670 Add honghong.me 2022-02-01 23:39:57 +08:00
Timothy Lin
6aefdd0d39 1.5.0 2022-02-01 22:39:53 +08:00
Timothy
d5b7a6a9de Merge pull request #372 from alfoncode/master
Add alfoncode.com website
2022-02-01 22:39:11 +08:00
Timothy Lin
3b5b33da92 docs: add docs on self-hosted font 2022-02-01 22:38:22 +08:00
Timothy
674d4bd5b0 Merge pull request #373 from AlexanderZeilmann/master
Replace Google Fonts with Fontsource
2022-02-01 22:09:56 +08:00
Alexander Zeilmann
e6dde6c617 Replace Google Fonts with Fontsource 2022-02-01 09:20:15 +01:00
Alfonso García
e195679bbf Merge pull request #1 from alfoncode/alfoncode-patch-1
Add alfoncode.com website
2022-02-01 00:16:42 +01:00
Alfonso García
e216339a8c Add alfoncode.com website
Add alfoncode.com website
2022-02-01 00:16:23 +01:00
Timothy Lin
2a555db7e9 1.4.3 2022-02-01 00:10:54 +08:00
Timothy
359f82b149 Merge pull request #371 from timlrx/prettier-tailwind
chore: prettier tailwind
2022-02-01 00:04:05 +08:00
Timothy Lin
2eaac5ae31 prettier tailwind 2022-01-31 23:58:10 +08:00
Timothy
7bf39de73c Merge pull request #365 from Austionian/master
add blog.r00ks to example blog list
2022-01-31 18:29:12 +08:00
Timothy
a512cded5a Merge pull request #367 from iamcam/master
Exclude drafts from the sitemap, added typescript file to glob
2022-01-31 18:28:16 +08:00
Timothy
6873a1d944 Merge pull request #368 from timlrx/upgrade/rehype-citation
upgrade rehype-citation, nextjs, tailwindcss
2022-01-31 18:25:38 +08:00
Timothy Lin
2a62c0996e upgrade rehype-citation nextjs tailwindcss 2022-01-31 18:22:57 +08:00
Cameron Perry
c1043d0fe1 Exclude drafts from the sitemap, added typescript file to glob 2022-01-30 18:51:15 -08:00
Austin
54449d63bf add blog.r00ks to example blog list 2022-01-30 14:36:00 -06:00
Timothy
ebbe94abfd Merge pull request #363 from PsyGik/patch-1
add dhanrajsp.me to blog list
2022-01-30 23:37:26 +08:00
Dhanraj Padmashali
9a799c543a add dhanrajsp.me to blog list 2022-01-30 16:03:49 +05:30
Timothy
e2e8cb00f2 Merge pull request #360 from dephraiim/master
add astrosaurus.me to blog list.
2022-01-29 22:48:20 +08:00
Ephraim Atta-Duncan
5545ac6eea add astrosaurus.me to blog list. 2022-01-27 19:30:05 +00:00
Timothy
f91793a111 Merge pull request #359 from timlrx/fix/code-titles
fix: insert code title relative to parent
2022-01-26 18:01:29 +08:00
Timothy Lin
ff2362fca4 fix: insert code title relative to parent 2022-01-26 17:59:27 +08:00
Timothy
2ccdc25819 Merge pull request #355 from Tincre/add-tincre-blogs-to-readme
docs: add Tincre example blogs
2022-01-25 23:11:47 +08:00
Timothy
11923a0a6a Merge pull request #354 from edwincoronado/master
fix: Create `data/blog` directory if missing
2022-01-25 23:10:38 +08:00
Jason R. Stevens, CFA
f93b15c6a8 📓 add Tincre downstream blog properties 2022-01-24 09:57:48 -05:00
Edwin Coronado
3d8a153839 Update compose.js 2022-01-23 23:36:34 -08:00
Edwin Coronado
ac7d1c29cd Update compose.js
If for any reason the `data/blog` directory is not present, the script fails. This change creates the `data/blog` directory if it doesn't yet exist.
2022-01-23 23:07:20 -08:00
Timothy
e6db5e62cd Merge pull request #351 from timlrx/fix/prose-a-hover
fix: hover state for a tag in prose
2022-01-23 16:49:37 +08:00
Timothy Lin
e940c482e7 fix: hover state for a tag in prose 2022-01-23 16:46:41 +08:00
Timothy
73aa9831b8 Merge pull request #347 from mrghasemi1992/master
docs: I added my blog to the list
2022-01-23 16:21:47 +08:00
Mohammad Reza Ghasemi
14ccc2a3a8 [mod] I added my blog to the list 2022-01-20 00:18:39 +03:30
Onur Geneş
1835cca296 change canonical to canonicalUrl for keeping it consistent 2022-01-18 20:13:24 +03:00
Timothy
f13dc64999 Merge pull request #345 from sokirill/patch-1
Update README.md with new example blog
2022-01-18 22:26:21 +08:00
Kirill So
9b16a37aa3 Update README.md
Added my personal blog to the examples of README
2022-01-18 21:09:51 +08:00
Onur Geneş
45d6228868 removed unnecessary extension 2022-01-18 12:35:25 +03:00
Onur Geneş
25e82e58bf added canonicalUrl support 2022-01-18 12:28:41 +03:00
Timothy
507d32ab9d Merge pull request #339 from piyushpaliwal/accessibility-fix
fix: Accessibility Fix in LayoutWrapper
2022-01-17 23:52:08 +08:00
Piyush Paliwal
076353df9b updated aria-label to pick from siteMetadata 2022-01-17 18:01:27 +05:30
Timothy
9620c25267 Merge pull request #333 from AlexanderZeilmann/master
feat: Add rehype-preset-minify
2022-01-15 12:32:06 +08:00
Timothy
a27731e59f Merge pull request #335 from localsite/master
docs: remove script format from "or" text by removing indent
2022-01-14 21:57:17 +08:00
modelearth
29d56b747c Remove script format from "or" text by removing indent
Also change to "or with TypeScript"
2022-01-13 20:28:09 -05:00
Alexander Zeilmann
6e9c4f3bea Add rehype-preset-minify 2022-01-11 19:18:24 +01:00
Timothy
f86917c37f Merge pull request #326 from volcareso/patch-1
added my blog in the list :))
2022-01-07 17:14:14 +08:00
volcareso
b4fcb7422d added my blog in the list :))
my blog is now in the list 
I am using this template to make it
Thanks a lot for this template !!!
2022-01-05 12:30:51 +05:30
Timothy Lin
9a46373f79 1.4.2 2022-01-04 23:43:26 +08:00
Timothy
23886f823c Merge pull request #324 from timlrx/fix/dark-prose-th
fix: dark prose table header
2022-01-04 23:41:07 +08:00
Timothy Lin
40200b1d9c fix: dark prose table header 2022-01-04 23:40:19 +08:00
Timothy
5e617c6527 Merge pull request #322 from llovvoll/fix/scroll-top-button
fix: should use visibility to control display state of scroll top button
2022-01-04 10:14:03 +08:00
llovvoll
759f33d73c fix: should use display to control display state of scroll top button 2022-01-04 10:09:54 +08:00
Timothy
f9503d8c85 Merge pull request #321 from alaq/add-umami
feat: add support for umami analytics
2022-01-03 10:15:01 +08:00
Adrien Lacquemant
6d13e0c0dc Add Umami analytics support 2022-01-02 19:02:48 -05:00
Timothy Lin
4bd56e9a8c 1.4.1 2021-12-27 16:50:53 +08:00
Timothy
906d2a2734 Merge pull request #316 from timlrx/fix/citation-styles
Fix citation styles
2021-12-27 16:49:35 +08:00
Timothy Lin
ad93cf6242 chore: move scroll-smooth to document 2021-12-27 16:46:49 +08:00
Timothy Lin
5d311e2587 fix: upgrade rehype-citation and fix styles 2021-12-27 16:31:22 +08:00
Timothy
e3d7630f6b Merge pull request #315 from timlrx/fix/optional-proj-img
fix: allow proj img to be optional
2021-12-27 15:05:48 +08:00
Timothy Lin
5d77b1fc24 fix: allow proj img to be optional 2021-12-27 15:04:38 +08:00
Timothy
9c299df2f1 Merge pull request #311 from lanbau/patch-2
docs: update readme with example blog
2021-12-27 13:53:15 +08:00
Irvin Lin
c63b25febf Update README.md 2021-12-26 17:39:41 +08:00
Timothy
0ae33aad62 Merge pull request #310 from lanbau/patch-1
docs: add installation instructions
2021-12-24 17:49:24 +08:00
Irvin Lin
4e0cde1412 Update README.md 2021-12-24 17:44:39 +08:00
Timothy
da08001b91 Merge pull request #309 from fork-master/master
[add] example site
2021-12-24 12:52:34 +08:00
Fiqry choerudin
8b05c32db1 [add] example site 2021-12-24 11:24:12 +07:00
Timothy
008253470d Merge pull request #308 from llovvoll/fix/can-not-load-external-script
fix: can not load external script & Unable to get disqus config of shorname
2021-12-24 10:21:12 +08:00
llovvoll
f62ff2d51f fix: can't load external js because of Content Security Policy 2021-12-24 10:12:41 +08:00
llovvoll
903f2a2f8f fix: can't get disqus config 2021-12-24 01:25:47 +08:00
Timothy
255361ba2c Merge pull request #307 from AlexanderZeilmann/master
Add security headers - fixes #304
2021-12-22 16:23:52 +08:00
Alexander Zeilmann
1eea3e59e1 Add security headers 2021-12-22 02:12:44 +01:00
Timothy
a54b412252 Merge pull request #305 from timlrx/docs/katex
docs: update post on escaping inline-math
2021-12-21 15:47:31 +08:00
Timothy Lin
772b889c7e docs: update post on escaping inline-math 2021-12-21 15:45:56 +08:00
Timothy
f7cde1d0a7 Merge pull request #302 from AlexanderZeilmann/master
fix: typos
2021-12-21 15:36:58 +08:00
Alexander Zeilmann
c0c50b4e2d Fix a few minor typos 2021-12-20 21:02:50 +01:00
Timothy
e05191f1c3 Merge pull request #301 from AlexanderZeilmann/master
fix: use '::' for pseudo-classes & ::marker
2021-12-19 21:35:58 +08:00
Alexander Zeilmann
bb71ee40f5 Remove ::before for lists in tailwind.config.js 2021-12-19 14:10:14 +01:00
Alexander Zeilmann
c6e727b193 Use '::' for pseudo-classes & ::marker 2021-12-19 12:06:08 +01:00
Timothy Lin
4cad812865 v1.4.0 2021-12-16 14:33:51 +08:00
Timothy
2a642a5d5f Merge pull request #297 from timlrx/upgrade/svgr
chore: upgrade svgr
2021-12-16 14:31:47 +08:00
Timothy Lin
6f499cf80c chore: upgrade svgr 2021-12-16 14:29:37 +08:00
Timothy
d96bc30bbb Merge pull request #296 from timlrx/fix/mobile-alignment
fix: add padding to align menu and theme button
2021-12-15 18:21:15 +08:00
Timothy Lin
edffbb28aa fix: add padding to align menu and theme button 2021-12-15 18:19:47 +08:00
Timothy
fef93840ea Merge pull request #295 from timlrx/upgrade/tailwind-3
feat: upgrade to tailwind 3.0
2021-12-15 18:08:39 +08:00
Timothy Lin
791d3b1e38 feat: upgrade to tailwind 3.0 2021-12-15 18:05:37 +08:00
Timothy
004ac216bb Merge pull request #293 from timlrx/fix/draft-post
fix: do not generate rss if no valid posts
2021-12-15 17:11:50 +08:00
Timothy Lin
4e563ed151 fix: do not generate rss if no valid posts 2021-12-15 17:09:53 +08:00
Timothy
e48573e2bf Allow default theme to be customized from config file (#292)
* feat: customize default theme

Co-authored-by: llovvoll <Rick.Jiang@aol.com>
2021-12-15 16:48:16 +08:00
Timothy
b1f07e6215 Merge pull request #287 from huydhoang/master
Improve starter experience
2021-12-08 14:35:51 +08:00
Huy
738bfbaeb0 Update README 2021-12-08 11:41:57 +07:00
Timothy Lin
2fd8d300f1 chore: bump nextjs to 12.0.7 2021-12-06 22:57:15 +08:00
Timothy
bed4ea39a0 Merge pull request #286 from Baker/master
Add Klaviyo to Newsletter options.
2021-12-06 22:44:30 +08:00
Francis
795d596012 Lint changes 2021-12-06 09:36:34 -05:00
Francis
d059a564e5 Add Klaviyo to Newsletter options.
Hey 👋 !

Full disclosure, I work for Klaviyo! With that said, I am using this template for my own website and thought I would contribute to the repo if you don't mind!
2021-12-05 14:54:00 -05:00
Timothy Lin
f401e79e60 v1.3.0 2021-12-04 17:01:00 +08:00
Timothy
9ef9449faf Merge pull request #285 from timlrx/upgrade/preact
update nextjs, preact, mdx-bundler, esbuild
2021-12-04 17:00:04 +08:00
Timothy Lin
1789efadc9 upgrade nextjs, preact, mdx-bundler, esbuild 2021-12-04 16:56:54 +08:00
Timothy
4b30668f74 chore: temporary fix preact version
See https://github.com/timlrx/tailwind-nextjs-starter-blog/issues/280
2021-11-30 20:36:04 +08:00
Timothy Lin
a8f3ed0523 v1.2.2 2021-11-26 21:38:00 +08:00
Timothy
00059a8e7f Merge pull request #279 from timlrx/fix/toc-code-headings
fix: parse inline code headings to string
2021-11-26 21:36:58 +08:00
Timothy Lin
75eb350201 fix: parse inline code headings to string 2021-11-26 21:34:26 +08:00
Timothy
16e1b682ab Merge pull request #274 from timlrx/fix/dev-socket
fix: do not load socketio for next dev
2021-11-19 00:13:18 +08:00
Timothy Lin
55cbecfe3a fix: do not load socketio for next dev 2021-11-19 00:12:26 +08:00
Timothy
40adee4707 Merge pull request #273 from timlrx/feat/code-diff
feat: upgrade rehype-prism-plus and add default diff css
2021-11-19 00:04:11 +08:00
Timothy Lin
9053ca177c feat: upgrade rehype-prism-plus and add default diff css 2021-11-19 00:00:18 +08:00
Timothy
d384d1a309 Feat/rehype-citation (#270)
* feat: add rehype-citation and upgrade to next 12.0.3

* docs: update docs
2021-11-14 19:32:06 +08:00
Timothy
2239743376 Merge pull request #267 from PsyGik/master
fix: make line numbers in code block right aligned for a consistent UI
2021-11-07 20:44:13 +08:00
PsyGik
e499845590 fix: make numbers right aligned similar to IDE 2021-11-07 01:17:02 +05:30
Timothy
94c1a30760 Upgrade/next 12 (#264)
* chore: upgrade to next 12

* chore: update package-lock

* docs: update image docs to use mdx v2 compatible code

* docs: increase first load js

* chore: v1.2.0
2021-10-27 18:36:00 +08:00
Timothy Lin
3d249985af chore: v1.1.4 2021-10-17 16:25:09 +08:00
Timothy
a724f7cc98 Merge pull request #260 from timlrx/feat/hmr
feat: add custom next-remote-watch
2021-10-17 16:20:39 +08:00
Timothy Lin
cc2ecb1c3b feat: add custom next-remote-watch 2021-10-17 16:13:09 +08:00
Timothy
82e74ba391 Merge pull request #259 from timlrx/upgrade/markdown
chore: upgrade rehype-prism-plus to 1.1.0
2021-10-16 15:12:54 +08:00
Timothy Lin
45248f5881 chore: upgrade rehype-prism-plus to 1.1.0 2021-10-16 15:04:51 +08:00
Timothy
71ccef6bb5 Merge pull request #254 from okayplanet/master
fix: typo/misspelling
2021-10-10 23:24:01 +08:00
britt
c67b9b2ad2 fix: typo/misspelling 2021-10-03 22:59:17 -05:00
Timothy
689390effb Merge pull request #245 from ThangHuuVu/master
Add featured blog
2021-09-14 23:23:04 +08:00
Thang Vu
018f986764 Add featured blog 2021-09-14 08:32:29 +07:00
Timothy
4846b63512 Merge pull request #241 from Th1nhNg0/scroll_to_top_and_to_comment_button
feat/Add scroll to top or scroll to comment component
2021-09-12 18:26:09 +08:00
th1nhng0
0359fa41bf add scroll to component 2021-09-11 19:29:54 +07:00
Timothy
06b927632e Merge pull request #240 from timlrx/feat/newsletter
Feat/newsletter
2021-09-11 16:44:46 +08:00
Timothy Lin
db32d86f59 chore: remove console log 2021-09-11 16:41:22 +08:00
Timothy Lin
897ebfe0ec feat: add blog newsletter form 2021-09-11 16:36:59 +08:00
Timothy
d06e28ef00 Merge pull request #239 from timlrx/feat/newsletter
fix: error handling and tw styles
2021-09-11 12:24:57 +08:00
Timothy Lin
bebe0d6a1e fix: error handling and tw styles 2021-09-11 12:23:05 +08:00
Timothy
ce0b83a6c8 Merge pull request #238 from timlrx/feat/newsletter
Feat/newsletter
2021-09-10 23:34:49 +08:00
Timothy Lin
54fa3c1e00 docs: add newsletter component to docs 2021-09-10 23:24:41 +08:00
Timothy Lin
24872f2262 fix: input autofill style on chrome 2021-09-10 23:23:47 +08:00
Timothy Lin
d7a048866e docs: add newsletter component to docs 2021-09-10 22:51:26 +08:00
Timothy Lin
4e7630ad16 style: adjust newsletter component style 2021-09-10 22:50:32 +08:00
Timothy
a96c9cc14e Merge pull request #196 from GautierArcin/feature/add_newsletter
feat: add newsletter
2021-09-10 21:17:07 +08:00
Gautier Arcin
fc48c5ab3f Merge branch 'feature/add_newsletter' of github.com:GautierArcin/i18n-tailwind-nextjs-starter-blog into feature/add_newsletter 2021-09-10 14:42:03 +02:00
Gautier Arcin
b2a77f900d fix: minor style fix 2021-09-10 14:41:01 +02:00
Gautier Arcin
02a801cfd8 fix: minor fix newsletter 2021-09-10 14:32:18 +02:00
Timothy
e1466a85e5 Merge pull request #234 from hta218/master
Add Leo's blog
2021-09-09 21:29:06 +08:00
Timothy
4a11fe2aff feat: add buttondown to demo site 2021-09-09 21:15:17 +08:00
Gautier Arcin
dad30c3cb8 fix: changed default config 2021-09-09 10:22:30 +02:00
Gautier Arcin
54d54d1434 fix: added instruction 2021-09-09 10:20:13 +02:00
Gautier Arcin
8b1b0c20bb fix: working convertkit API 2021-09-09 10:18:57 +02:00
Tuan Anh (Leo)
f0e7e7209b Add Leo's blog 2021-09-08 23:46:06 +07:00
Timothy Lin
54e02ba14a chore: v1.1.2 2021-09-08 22:38:12 +08:00
Timothy
1ef1e5bda2 Merge pull request #232 from timlrx/fix/copy-code-block
Fix/copy code block
2021-09-08 22:37:07 +08:00
Timothy Lin
8668b33c91 docs: update with new examples and prism stylesheet 2021-09-08 22:30:02 +08:00
Timothy Lin
55e8c442d1 fix: avoid extra new line when copying 2021-09-08 22:09:31 +08:00
Timothy
aed6d7782d Merge pull request #230 from timlrx/feat/prism-code-themes
feat: add separate stylesheet for prismjs code block theme
2021-09-08 22:02:26 +08:00
Timothy Lin
a30b452920 feat: add separate stylesheet for prismjs code block theme 2021-09-07 00:05:56 +08:00
Timothy
21f7769e2c Merge pull request #227 from timlrx/upgrade/next-11.1.2
Fix code highlighting issues and update linter
2021-09-06 23:32:11 +08:00
Timothy Lin
489a8c9c55 chore: upgrade linter to 11.1.2 and fix lint issues 2021-09-05 18:39:53 +08:00
Timothy
819a327a9c Merge pull request #224 from timlrx/upgrade/next-11.1.2
chore: upgrade to next 11.1.2
2021-09-05 10:52:52 +08:00
Timothy Lin
0515928faa chore: upgrade to next 11.1.2 2021-09-05 10:50:13 +08:00
Timothy
e1dbc9c29b Merge pull request #216 from larbisahli/master
fix: code block space #209
2021-09-04 22:17:09 +08:00
Gautier Arcin
3de2733c49 feat: minor cursor fix 2021-09-02 20:06:01 +02:00
Gautier Arcin
9a9faeb015 feat:convert && fix:api 2021-09-02 20:02:58 +02:00
Gautier Arcin
c27c6752c9 feat: initial version newsletter 2021-09-02 10:17:34 +02:00
Isaac
77259049ed Merge pull request #1 from larbisahli/larbisahli-patch-1
fix: code block space
2021-08-30 20:46:23 +01:00
Isaac
aaa9e7da70 fix: code block space
Fixing the spaces on the right side of the code block by adding padding and fix the with overflow.
2021-08-30 20:44:01 +01:00
Timothy
cd754b5de3 Merge pull request #215 from timlrx/fix/toc-headings
fix: allow remark toc to parse headings with url
2021-08-30 23:55:28 +08:00
Timothy Lin
b7cee5eaca fix: allow remark toc to parse headings with url 2021-08-30 23:53:41 +08:00
Timothy
45c1a89bda Merge pull request #213 from humble-barnacle001/patch-1
fix: author in docs was not displayed correctly
2021-08-30 09:25:56 +08:00
Rwitick Ghosh
540874a2f5 Add suggested edit 2021-08-30 00:00:57 +05:30
Rwitick Ghosh
6e75649a72 The author was displayed correctly 2021-08-29 18:16:03 +05:30
Timothy
5b0e8980e6 Merge pull request #211 from timlrx/feat/comments-theme
feat: auto switch theme for giscus and utterances
2021-08-29 15:39:41 +08:00
Timothy
c771066ab3 Merge pull request #208 from DLevai94/patch-3
Added DLevai94 website to examples
2021-08-29 15:35:03 +08:00
Timothy Lin
9c5e267a59 feat: auto switch theme for giscus and utterances 2021-08-29 14:39:52 +08:00
Dávid Lévai
9459b2a761 Added my website to examples 2021-08-28 19:54:02 +02:00
Timothy
b6dabfb653 Merge pull request #204 from llovvoll/fix/email
add: email address format verification
2021-08-27 00:23:04 +08:00
llovvoll
e52bccc0a0 add: email address format verification 2021-08-26 12:31:07 +08:00
Timothy Lin
33ff1400b0 fix: add back sitemap script in build 2021-08-25 08:52:37 +08:00
Timothy Lin
e1f028e612 chore: v1.1.1 2021-08-24 23:39:41 +08:00
Timothy
805f7263f4 Merge pull request #203 from timlrx/fix/code-multilines
docs: use jsx for code block
2021-08-24 23:16:56 +08:00
Timothy Lin
b6a6ac3ee9 docs: use jsx for code block 2021-08-24 23:15:53 +08:00
Timothy
6459192260 Merge pull request #202 from timlrx/fix/code-multilines
fix: syntax highlighting for multiline code
2021-08-24 22:20:30 +08:00
Timothy Lin
6dfce6e687 fix: syntax highlighting for multiline code 2021-08-24 22:18:18 +08:00
Timothy
f0442f4f68 Merge pull request #199 from timlrx/rehype-slug
refactor: use rehype-slug and rehype-autolink-headings
2021-08-22 17:15:44 +08:00
Timothy Lin
0e34d80287 refactor: use rehype-slug and rehype-autolink-headings 2021-08-22 17:13:14 +08:00
Timothy Lin
51feadc0db Merge branch 'master' of github.com:timlrx/tailwind-nextjs-starter-blog 2021-08-22 16:49:04 +08:00
Timothy
fc09968f3e Merge pull request #198 from vitalybaev/feature/197-non-latin-tags
fix: non-latin tags don't cause error
2021-08-22 16:48:34 +08:00
Vitaly Baev
0793b0dbe7 fix: non-latin tags don't cause error 2021-08-20 18:03:38 +03:00
Gautier Arcin
ced3cd5f6b wip 2021-08-19 16:10:42 +02:00
Gautier Arcin
95697e2491 feat: chimpunk 2021-08-18 17:33:15 +02:00
Timothy Lin
234c56ec93 Merge branch 'master' of github.com:timlrx/tailwind-nextjs-starter-blog 2021-08-15 23:49:06 +08:00
Timothy
4d6114f8f8 Merge pull request #191 from timlrx/upgrade/next-11.1
Upgrade/next 11.1
2021-08-15 23:48:46 +08:00
Timothy Lin
3392ad1e48 chore: v1.1.0 2021-08-15 23:46:56 +08:00
Timothy Lin
a280000117 chore: v1.1.0 2021-08-15 23:46:22 +08:00
Timothy Lin
2d700e28a2 refactor: use unifiedjs esm packages 2021-08-14 23:11:18 +08:00
Timothy Lin
438a118edf chore: upgrade to nextjs 11.1 and add sharp as dependency 2021-08-14 18:00:27 +08:00
Timothy
dbb4df7d59 Merge pull request #187 from Music47ell/master
refactor: reduce duplication and make seo title consistent
2021-08-13 17:26:32 +08:00
Ahmet ALMAZ
9a663dc961 refactor: add CommonSEO component 2021-08-12 18:43:24 +03:00
Ahmet ALMAZ
e44c49914f refactor: add taxonomy option to seo component 2021-08-10 19:43:38 +03:00
Timothy
4737bd717b Merge pull request #182 from GautierArcin/fix/rssTag
feat: add topic rss feed to tag seo
2021-08-10 17:55:55 +08:00
Gautier Arcin
d1264d132a fix: rss tags 2021-08-09 20:55:52 +02:00
Timothy Lin
8b9d47e7de fix: readme typo 2021-08-09 23:52:05 +08:00
Timothy
b0253c2a16 Merge pull request #181 from Music47ell/master
fix: toc issue with remark-autolink-headings
2021-08-09 19:17:18 +08:00
Ahmet ALMAZ
52aaf99dd7 fix: toc issue with remark-autolink-headings 2021-08-09 13:57:12 +03:00
Timothy
a045558c2a Merge pull request #178 from timlrx/fix/rehype-prism-lang
fix: support all prism and refractor lang
2021-08-09 11:28:18 +08:00
Timothy Lin
b39ce4beb1 fix: support all prism and refractor lang 2021-08-09 11:24:59 +08:00
Timothy Lin
08fb1d4690 fix: typo in filteredToc 2021-08-08 16:43:17 +08:00
Timothy
d45233e43a Merge pull request #170 from timlrx/feat/toc
Feat/toc
2021-08-08 16:01:22 +08:00
Timothy Lin
2a73c3a9cd chore: v1.0.0 2021-08-08 15:59:30 +08:00
Timothy Lin
58830831fb docs: fix typo 2021-08-08 15:57:22 +08:00
Timothy Lin
a666188e39 docs: update readme 2021-08-08 15:42:51 +08:00
Timothy
ec7350a258 Merge pull request #169 from timlrx/feat/toc
Feat/toc
2021-08-07 23:59:27 +08:00
Timothy Lin
0b7ec6bb5d chore: merge master 2021-08-07 23:57:14 +08:00
Timothy Lin
8023d60cdb feat: add more options to toc component and docs 2021-08-07 23:49:56 +08:00
Timothy
a73160947a Merge pull request #167 from laymonage/use-innertext
Use `innerText` to copy code content
2021-08-07 17:53:31 +08:00
sage
638c78f6ec Use innerText to copy code content 2021-08-07 15:39:39 +07:00
Timothy Lin
afbc2d9c66 feat: toc for blog post 2021-08-06 22:13:30 +08:00
Timothy
47c8a819cf Merge pull request #159 from timlrx/fix/date
fix: support date type in blog frontmatter
2021-08-05 22:31:12 +08:00
Timothy Lin
f8ec940c36 fix: support js date in blog frontmatter 2021-08-05 16:05:31 +08:00
Timothy Lin
304318376c Merge branch 'master' of github.com:timlrx/tailwind-nextjs-starter-blog 2021-08-05 15:03:35 +08:00
Timothy Lin
c8701d268d fix: post typo 2021-08-02 15:06:40 +08:00
Timothy
8962aa4c33 Merge pull request #157 from Arpitgoyalgg/patch-1
chore: typo is --> if
2021-08-01 13:03:38 +08:00
Arpit Goyal
20857699be is --> if 2021-07-31 16:10:55 +05:30
Timothy
6924aff2d1 Merge pull request #155 from laymonage/fix-giscus
fix: rename `giscus-frame` class to `giscus`
2021-07-29 09:35:34 +08:00
sage
69e6368e14 fix: rename giscus-frame class to giscus 2021-07-29 07:55:42 +07:00
Timothy Lin
be4fb72bc7 chore: v1.0.0-canary.2 2021-07-28 23:40:10 +08:00
Timothy
cd592039a3 Merge pull request #153 from timlrx/feat/analytics
Feat/analytics
2021-07-28 23:38:25 +08:00
Timothy Lin
b7f2d6151a docs: update post to include analytics 2021-07-28 23:36:42 +08:00
Timothy Lin
91d2d40144 feat: add analytics component 2021-07-28 23:25:05 +08:00
Timothy
5707e6a186 Merge pull request #150 from timlrx/mdx-bundler-upgrade
chore: upgrade mdx-bundler
2021-07-25 19:12:51 +08:00
Timothy Lin
8be18403ce chore: upgrade mdx-bundler 2021-07-25 19:09:11 +08:00
Timothy
62d71650f1 Update issue templates 2021-07-24 15:11:15 +08:00
Timothy Lin
4609d5a125 docs: change siteMetadata.json to siteMetadata.js 2021-07-24 15:00:50 +08:00
Timothy Lin
d592dea3ff chore: v1.0.0-canary.1 2021-07-22 21:39:49 +08:00
Timothy
910141860a Merge pull request #146 from timlrx/fix/code-newlines
docs: update new features post
2021-07-22 21:37:50 +08:00
Timothy Lin
e4e8ab9450 docs: update new features post 2021-07-22 21:36:17 +08:00
Timothy
1295b3213f Merge pull request #145 from timlrx/fix/code-newlines
fix: code newlines
2021-07-22 21:17:04 +08:00
Timothy Lin
b5079a9471 fix: code newlines 2021-07-22 21:15:21 +08:00
Timothy
3e67807e67 Merge pull request #143 from timlrx/fix/sitemap
fix: restrict sitemap to mdx files in blog folder
2021-07-22 08:46:57 +08:00
Timothy Lin
b4d7f0e3ab fix: restrict sitemap to mdx files in blog folder 2021-07-22 08:44:15 +08:00
Timothy
9e9ccca1ce Merge pull request #141 from Music47ell/master
refactor: use env variables for comments system
2021-07-21 17:31:54 +08:00
Ahmet ALMAZ
225660fe97 docs: update blog comments system docs 2021-07-21 11:22:09 +03:00
Ahmet ALMAZ
57253ac61d refactor: use env variables for comments system 2021-07-21 11:18:03 +03:00
Timothy
6acc9a58b3 Create FUNDING.yml 2021-07-18 17:29:11 +08:00
Timothy
fa34500c49 Merge pull request #133 from timlrx/comments
fix: giscus settings
2021-07-18 17:12:15 +08:00
Timothy Lin
0011c5db52 fix: giscus settings 2021-07-18 17:10:43 +08:00
Timothy Lin
e0ac7b7dc3 fix: giscus settings 2021-07-18 17:09:00 +08:00
Timothy
c73fcdab41 Merge pull request #128 from timlrx/comments
fix: giscus config
2021-07-18 16:29:18 +08:00
Timothy Lin
8084247377 fix: giscus config 2021-07-18 16:27:47 +08:00
Timothy
133c19e7fb Merge pull request #121 from timlrx/comments
Comments system
2021-07-18 16:09:20 +08:00
Timothy Lin
293f8ed5b5 docs: add docs on blog comments system 2021-07-18 16:02:35 +08:00
Timothy Lin
db31016150 feat: configure giscus for demo site 2021-07-18 15:51:10 +08:00
Timothy Lin
5e1f47b074 feat: support dark theme for utterances and giscus 2021-07-18 15:49:42 +08:00
Timothy
5ff632776c Merge pull request #115 from Music47ell/master
feat: add support for giscus, utterances, disqus
2021-07-18 15:12:22 +08:00
Ahmet ALMAZ
6b90542652 feat: add support for giscus, utterances, disqus 2021-07-14 23:52:46 +03:00
Ahmad Al Maaz
5cd4d89f98 refactor: convert siteMetadata from json to js 2021-07-14 23:11:20 +03:00
Timothy Lin
bd6e5f4657 chore: v1.0.0-canary.0 2021-07-11 23:46:40 +08:00
Timothy Lin
4e64bc1d5d Revert "0.4.3-canary.0"
This reverts commit bea04aee52.
2021-07-11 23:45:50 +08:00
Timothy Lin
bea04aee52 0.4.3-canary.0 2021-07-11 23:45:02 +08:00
Timothy
f6ac722192 Merge pull request #66 from timlrx/v1
V1
2021-07-11 23:41:54 +08:00
Timothy Lin
f7c51254e0 0.4.2 2021-07-11 23:36:39 +08:00
Timothy Lin
c50abde4fa docs: update readme and posts 2021-07-11 23:35:19 +08:00
Timothy Lin
e66018ba56 fix: use feed.xml instead of index.xml 2021-07-11 23:03:27 +08:00
Timothy Lin
af917001a0 fix: tailwind code color 2021-07-11 23:02:58 +08:00
Timothy Lin
16a4f962a8 chore: fix typo 2021-07-11 17:55:56 +08:00
Timothy
50e2a9a010 Merge pull request #103 from Music47ell/master
fix: generate-rss.js description `[object Object]`
2021-07-07 12:53:16 +08:00
Ahmad Al Maaz
3fe3b03e3c chore: fix typo 2021-07-04 19:23:33 +03:00
Ahmad Al Maaz
5d68b47bac fix: generate-rss.js description [object Object] 2021-07-04 19:23:17 +03:00
Timothy Lin
9378179b9e feat: update compose to support new frontmatter options 2021-07-04 17:19:35 +08:00
Timothy Lin
8f95415a78 0.4.1 2021-07-04 16:27:57 +08:00
Timothy Lin
6d750076c9 feat: interactive cli to generate post 2021-07-04 16:12:36 +08:00
Timothy Lin
c31a4f0aa1 fix: allow summary and tag to be optional for rss 2021-07-04 16:10:41 +08:00
Timothy
0fcb9fc90c Merge pull request #96 from timlrx/mdx-bundler
feat: mdx-bundler and xdm
2021-07-04 15:23:40 +08:00
Timothy Lin
ec450d9997 refactor: use wrapper component 2021-07-04 15:21:11 +08:00
Timothy Lin
b9ad2a8145 refactor: use mdx-bundler frontmatter 2021-07-04 15:03:52 +08:00
Timothy Lin
0aab8b55cf fix: update sample posts 2021-07-04 14:47:39 +08:00
Timothy Lin
5af6209e5a feat: resolve mdx imports relative to components dir 2021-07-04 12:36:26 +08:00
Timothy
58ec53d19d Merge pull request #97 from Music47ell/v1
refactor: use formatDate util
2021-06-29 23:12:52 +08:00
Ahmad Al Maaz
26f0379afa refactor: use formatDate util 2021-06-29 16:55:42 +03:00
Timothy Lin
e701b6a52a chore: update package-lock 2021-06-29 18:25:50 +08:00
Timothy Lin
fbd68ec616 feat: add rehype-prism-plus and docs 2021-06-29 18:09:37 +08:00
Timothy
ffd36e96db Merge pull request #95 from DoctorDerek/patch-1
chore: fix typo
2021-06-29 09:09:24 +08:00
Dr. Derek Austin
1b6497d8c4 chore: fix typo
flatternArray -> flattenArray
2021-06-28 14:52:58 -05:00
Timothy
3087e78496 Merge pull request #93 from Music47ell/v1
Add JSON-LD with Article structured data support
2021-06-27 11:15:07 +08:00
Ahmad Al Maaz
331461be12 Fix and issue when authorDetails prop is empty 2021-06-26 15:34:34 +03:00
Ahmad Al Maaz
e92b7d2737 Use authorDetails to pull JSON-LD authors names 2021-06-26 14:35:27 +03:00
Timothy Lin
f7cda6f536 feat: add micromark 3 compatible code title parser 2021-06-26 18:50:49 +08:00
Timothy Lin
553722750e feat: use mdx-bundler 2021-06-26 18:46:45 +08:00
Ahmad Al Maaz
8d16a0c255 Pull JSON-LD authors from frontMatter 2021-06-25 23:14:49 +03:00
Timothy Lin
0f844ff636 refactor: use image component 2021-06-25 11:02:33 +08:00
Ahmad Al Maaz
179366a1b0 Remove property alt
It's not recognized for an object of type ImageObject
2021-06-24 19:59:23 +03:00
Ahmad Al Maaz
aa493147da Fix Unspecified Type in JSON-LD structured data 2021-06-24 19:49:40 +03:00
Ahmad Al Maaz
9c1299dcfe Add JSON-LD with Article structured data support 2021-06-24 19:38:56 +03:00
Timothy Lin
cbaade5c7e chore: sync with master v0.4.0 2021-06-24 00:02:00 +08:00
Timothy Lin
e4d6487cdf 0.4.0 2021-06-23 23:35:17 +08:00
Timothy
7586a8d764 Merge pull request #88 from timlrx/next11
Upgrade nextjs and tailwind dependencies
2021-06-23 18:56:35 +08:00
Timothy Lin
a66dc53240 chore: remove unused next-compose-plugins 2021-06-23 18:51:05 +08:00
Timothy Lin
e89977db49 chore: lint more folders 2021-06-23 18:45:21 +08:00
Timothy Lin
c479867650 chore: update to next 11 and tailwind 2.2 2021-06-23 18:32:29 +08:00
Timothy
1bfd8c0da4 Merge pull request #85 from aloisdg/patch-1
Use deconstructed slug
2021-06-23 17:29:04 +08:00
Aloïs de Gouvello
e68f6c38b1 Use deconstructed slug 2021-06-22 22:15:05 +02:00
Timothy Lin
04ad7617de feat: replace next-seo with custom header 2021-06-22 23:51:41 +08:00
Timothy
5603b0e236 Merge pull request #83 from DLevai94/patch-2
Remove /404 & /blog/[...slug] from sitemap
2021-06-20 23:04:11 +08:00
Dávid Lévai
8920e8425a add /blog to pages 2021-06-20 16:47:56 +02:00
Timothy
360ddfcc09 Merge pull request #82 from aloisdg/patch-1
Simplify string interpolation
2021-06-20 22:28:47 +08:00
Dávid Lévai
c741e0894c Remove /404 & /[...slug] from sitemap 2021-06-20 11:38:37 +02:00
Aloïs de Gouvello
076abee9e6 SImplify string interpolation
Quick refacto
2021-06-20 08:56:12 +02:00
Timothy
70ac88bac8 Merge pull request #73 from Music47ell/master
Swap convertStringToHTML with html-escaper
2021-06-19 18:55:37 +08:00
Timothy Lin
322ddc4a2d docs: introduce primary theme color 2021-06-19 18:34:44 +08:00
Timothy Lin
2c0d11d414 feat: easy customization of theme color 2021-06-19 17:40:01 +08:00
Ahmad Al Maaz
0119d23567 Import escape function locally from html-escaper 2021-06-19 12:02:56 +03:00
Ahmad Al Maaz
4c1b4fbd78 Swap convertStringToHTML with html-escaper module 2021-06-18 22:19:29 +03:00
Timothy
464ab08c69 Merge pull request #71 from Teng/UnexpectedFile
Remove Unexpected File
2021-06-18 18:28:42 +08:00
Teng
b930f53e7c Remove Unexpected File 2021-06-18 18:12:12 +08:00
Timothy
c0d2b8e542 Merge pull request #69 from DLevai94/patch-1
Add convertStringToHTML function to prevent RSS encoding issues
2021-06-16 23:58:03 +08:00
Dávid Lévai
b04e3f1279 Add convertStringToHTML function to prevent RSS encoding issues
When parsing descriptions and titles with characters like '&', '<', etc. feed was broken. This regex swaps these characters with their HTML entity equivalent.
2021-06-12 11:37:28 +02:00
Timothy Lin
f3a21646ab docs: update readme 2021-06-10 00:02:59 +08:00
Timothy Lin
1b3fe80295 chore: sync with master 2021-06-09 23:42:08 +08:00
Timothy Lin
5945a72491 fix: patch vercel bug which directs user to index.xml 2021-06-09 23:37:58 +08:00
Timothy Lin
48b7b86932 docs: new features in v1 blog post 2021-06-02 22:16:33 +08:00
Timothy Lin
f1ac747da6 fix: copy button position when overflow 2021-06-02 21:47:13 +08:00
Timothy Lin
66d6c62fe8 style: adjust copy button style 2021-05-29 18:10:54 +08:00
Timothy Lin
644acb788b chore: sync with v0.3.4 2021-05-29 17:52:13 +08:00
Timothy
b44e209385 fix: missing && 2021-05-29 17:49:29 +08:00
Timothy Lin
5cbb16381d 0.3.4 2021-05-29 17:27:53 +08:00
Timothy Lin
5784d38829 chore: update katex version 2021-05-29 17:23:34 +08:00
Timothy
654589b5cc Merge pull request #59 from timlrx/feat/pagination
Feat/pagination
2021-05-29 17:04:05 +08:00
Timothy Lin
fd4c7033c7 chore: remove redundant wordCount, readingTime contains word count 2021-05-29 16:45:10 +08:00
Timothy Lin
e9befb035d chore: remove unnecessary provider and dependencies 2021-05-29 16:39:40 +08:00
Timothy Lin
2e5a3a5a9a fix: render paginate only if more than 1 page 2021-05-29 16:13:01 +08:00
Timothy Lin
88096a536b fix: restore search for blog page 2021-05-29 16:08:22 +08:00
Ahmad Al Maaz
847f2537c3 Add pagination support (#52)
* Add pagination support

* Change posts per page value to 10

* Change /blog/1 page to be same as /blog/
Modify canonical url to reflect current page

* Conditionally render pagination component
2021-05-26 21:56:19 +08:00
Timothy Lin
670522ebe5 docs: add blog post for v1 2021-05-26 20:11:55 +08:00
Timothy Lin
900669acfd refactor: use MDXLayoutRenderer component 2021-05-26 19:36:56 +08:00
Timothy
89d21c3a59 Merge pull request #56 from timlrx/fix/slug-path
fix: slug links for nested posts
2021-05-26 19:21:49 +08:00
Timothy Lin
52ff63576b fix: slug links for nested posts 2021-05-26 19:20:24 +08:00
Timothy Lin
8914349256 feat: add MDXLayoutRenderer component 2021-05-26 00:11:20 +08:00
Timothy Lin
37527331d4 feat: add new post layout 2021-05-25 23:53:41 +08:00
Timothy Lin
9a22d44439 chore: remove tailwind jit package 2021-05-25 23:53:04 +08:00
Timothy Lin
3c3cb9cbeb fix: start script to work with tailwind jit 2021-05-25 23:46:09 +08:00
Timothy Lin
9b042636f5 0.3.3 2021-05-23 13:03:28 +08:00
Timothy Lin
5cee35a189 chore: fix readme badge links 2021-05-23 12:55:28 +08:00
Timothy Lin
4302662e34 chore: add social badges to readme 2021-05-23 12:47:28 +08:00
Timothy
ba417aadf0 Merge pull request #53 from timlrx/fix/jit
fix: jit config
2021-05-23 12:20:44 +08:00
Timothy Lin
d36a4aad91 fix: jit config 2021-05-23 11:49:22 +08:00
Timothy Lin
9978910cca feat: copy code button 2021-05-20 23:57:13 +08:00
Timothy Lin
c734391094 fix: update scripts to work with tailwind jit in dev 2021-05-20 23:56:44 +08:00
Timothy
159ecd7d2b Merge pull request #49 from DoctorDerek/fix-error-if-twitter-undefined-in-siteMetadata
fix: make siteMetadata.twitter optional to fix TypeError
2021-05-20 09:21:28 +08:00
Dr. Derek Austin
a9170a95dd fix: make siteMetadata.twitter optional to fix TypeError 2021-05-19 14:39:36 -05:00
Timothy Lin
9b51d0447d Merge branch 'master' into v1 2021-05-19 23:16:24 +08:00
Timothy Lin
ed290bfcdd feat: support multi-author blog post 2021-05-18 23:46:30 +08:00
Timothy
8dbcf16fc2 Merge pull request #47 from ahmadbilalse/fix-theme-toggle
fix: correct invalid theme toggle on first load
2021-05-17 11:24:10 +08:00
Ahmad Bilal
a4d2d47d88 fix: correct invalid theme toggler on first load 2021-05-17 07:01:08 +07:00
Timothy Lin
41850ef6f0 chore: add 2nd author example 2021-05-16 16:06:55 +08:00
Timothy Lin
b380a6f15a feat: map author details to blog post 2021-05-16 15:56:39 +08:00
Timothy Lin
84f00d6fc6 feat: add AuthorLayout template 2021-05-16 15:36:01 +08:00
Timothy Lin
f3e83619cc feat: create author data template 2021-05-16 15:22:04 +08:00
Timothy Lin
8037abd52a chore: upgrade postcss version 2021-05-16 14:23:00 +08:00
Timothy Lin
95baf41f88 0.3.2 2021-05-11 22:57:35 +08:00
Timothy
a7ad8ad2c6 Merge pull request #44 from timlrx/fix/windows
fix: windows compatible file path
2021-05-11 22:50:00 +08:00
Timothy Lin
3c2720a84b fix: windows compatible file path 2021-05-11 22:34:26 +08:00
Helder Burato Berto
5e36f320df feat: upgrade next-mdx-remote
* chore: upgrade packages

Updating packages:
- "@mapbox/rehype-prism": "^0.6.0"
- "image-size": "1.0.0"
- "next-seo": "4.24.0"
- "remark-code-titles": "0.1.2"
- "remark-footnotes": "^3.0.0"
- "eslint-config-prettier": "^8.3.0"
- "globby": "11.0.3"
- "lint-staged": "^11.0.0"
- "remark-stringify": "9.0.1"

* feat: upgrade next-mdx-remote

It adds MDXRemote and serialize breaking changes

Read more at https://github.com/hashicorp/next-mdx-remote/releases/tag/3.0.0

* fix: downgrade remark-math and rehype-katex
2021-05-11 22:05:33 +08:00
Timothy
6880a4d49f Merge pull request #42 from DoctorDerek/run-prettier
chore: prettier
2021-05-11 22:00:43 +08:00
Dr. Derek Austin
67acb0c494 Run Prettier (npx prettier --write .) 2021-05-10 17:07:13 -05:00
Timothy Lin
55f3d824e4 0.3.1 2021-05-08 14:01:20 +08:00
Timothy
735c954e72 Feat/sub-route (#38)
* blog subroute support
* docs: update readme and blog

Co-authored-by: mrhut10 <ahut10@gmail.com>
2021-05-08 13:58:57 +08:00
Timothy Lin
69a41932e7 0.3.0 2021-05-01 10:50:25 +08:00
Timothy
a8b302b8af Merge pull request #36 from timlrx/nextjs-10.2
Nextjs 10.2 with automatic webfont optimization
2021-05-01 10:37:12 +08:00
Timothy Lin
52e1fcd008 feat: use nextjs 10.2 optimized font loading 2021-05-01 10:33:58 +08:00
Timothy Lin
3b0172a11d chore: upgrade to nextjs 10.2.0 2021-05-01 10:09:39 +08:00
Timothy
6d6099fc7b Merge pull request #34 from Music47ell/master
Fix a typo in ListLayout and PostLayout
2021-04-27 08:17:19 +08:00
Timothy
3863b82138 Merge pull request #33 from saqibameen/patch-1
Fix typo
2021-04-27 08:16:26 +08:00
Ahmad Al Maaz
13c242454e Fix a typo in ListLayout and PostLayout 2021-04-26 22:49:47 +03:00
Saqib Ameen
d6da9bdb48 Fix typo 2021-04-26 10:11:03 -06:00
Timothy Lin
699b9e6b43 0.2.1 2021-04-24 15:54:35 +08:00
Timothy Lin
0ac833fb0a chore: update readme 2021-04-24 15:51:31 +08:00
Timothy
582800c156 Merge pull request #28 from DoctorDerek/update-husky-to-v6-round-3
Update husky to v6
2021-04-20 23:15:36 +08:00
Timothy
20bb7ac8ee chore: use npx no-install 2021-04-20 23:15:10 +08:00
Timothy
5629338ea9 Merge pull request #31 from wozniaklukasz/add-eslint-react-hooks
add installed but missing eslint-plugin-react-hooks to .eslintrc
2021-04-20 23:14:02 +08:00
Łukasz Woźniak
2ebdcb81f5 add installed but missing eslint-plugin-react-hooks to .eslintrc 2021-04-20 17:04:11 +02:00
Dr. Derek Austin
bafffcf60e Remove unnecessary tab 2021-04-16 19:01:38 -05:00
Dr. Derek Austin
e492ccab67 Remove blank line 2021-04-16 18:02:31 -05:00
Dr. Derek Austin
310f7a5c75 Update pre-commit 2021-04-16 17:54:35 -05:00
Dr. Derek Austin
aa1a4c1d61 Update pre-commit 2021-04-16 17:53:40 -05:00
Dr. Derek Austin
1ca887aa68 Update pre-commit 2021-04-16 17:50:57 -05:00
Dr. Derek Austin
98c89b8bdd Auto convert with manual update of pre-commit to npx lint-staged 2021-04-16 17:26:41 -05:00
Timothy
aecee3d5fd Merge pull request #24 from DoctorDerek/update-gitattributes
Update .gitattributes
2021-04-15 23:16:01 +08:00
Dr. Derek Austin
731be301d3 Update .gitattributes 2021-04-15 07:26:12 -05:00
Timothy
c85a97a843 Merge pull request #23 from DoctorDerek/upgrade-husky-v4-to-v6-latest
Update husky (^4.3.7) to latest (^6.0.0)
2021-04-13 10:00:38 +08:00
Timothy
fbda3e5724 Merge pull request #22 from DoctorDerek/enable-react-strict-mode
Enable React Strict Mode in next.config.js
2021-04-13 10:00:09 +08:00
Dr. Derek Austin
517a5e9250 Update husky (^4.3.7) to latest (^6.0.0) 2021-04-11 19:00:34 -05:00
Dr. Derek Austin
2d16140918 Enable React Strict Mode in next.config.js 2021-04-11 18:56:11 -05:00
Timothy
baaf011630 Merge pull request #19 from DoctorDerek/Create-.gitattributes
Create .gitattributes
2021-04-07 07:59:07 +08:00
Timothy
4cab6b381a Merge pull request #18 from DoctorDerek/upgrade-tailwind-jit
Upgrade Tailwind to 2.1.1 keeping jit (Just in Time) engine enabled per https://blog.tailwindcss.com/tailwindcss-2-1
2021-04-07 07:49:49 +08:00
Dr. Derek Austin
9717ab2b19 Create .gitattributes 2021-04-06 18:11:42 -05:00
Dr. Derek Austin
34fcdfead5 Yep it's a commit 2021-04-06 18:03:16 -05:00
Timothy
75de95005d Merge pull request #15 from cauachagas/master
Update KaTeX
2021-04-06 08:26:35 +08:00
Cauã Chagas
a6e159d541 Update KaTeX
Incorrectly rendered fonts
2021-04-05 17:08:44 -03:00
Timothy
7a07996e3a Merge pull request #14 from timlrx/upgrade
update dependencies
2021-04-02 22:51:59 +08:00
Timothy Lin
debc775a11 chore: upgrade next-remote-watch and use tailwind jit 2021-04-02 22:35:26 +08:00
Timothy Lin
dcada7f529 chore: update to next 10.1, react 17 and webpack 5 2021-04-02 22:12:06 +08:00
Timothy
72c099cae6 Merge pull request #10 from kohei-m-88/patch-1
Update SEO.js
2021-03-26 21:04:52 +08:00
kohei m
de367a574a Update SEO.js
very tiny change
2021-03-23 15:25:41 +09:00
Timothy
e4add7f35e Merge pull request #9 from CypressKuo/master
Hide social link icons automatically and fix useTheme hydration mismatch
2021-03-22 22:32:17 +08:00
CypressKuo
11be151424 fix: Fix that useTheme is not working
When mounted on client, now we can show the UI
2021-03-20 22:53:18 +08:00
CypressKuo
a6564bae52 feat(icon): Hide the icon when there is no href value
Hide the icon when the social link is empty.
2021-03-20 22:47:09 +08:00
Timothy Lin
8a4358fade Merge branch 'master' of github.com:timlrx/tailwind-nextjs-starter-blog 2021-03-19 09:38:55 +08:00
Timothy Lin
8172c82f20 chore: remove unused file 2021-03-19 09:38:37 +08:00
Timothy
bfbc69eaf9 Merge pull request #6 from DoctorDerek/patch-1
Improve Windows compatibility for npm run analyze
2021-03-16 08:49:39 +08:00
Dr. Derek Austin
d802da0a94 Improve Windows compatibility for npm run analyze
Adding "env" before setting environmental variables makes it cross-platform (i.e. work on Windows in addition to Unix / Mac).

Tested Windows 10 x64
2021-03-15 17:39:36 -05:00
Timothy Lin
df4f013276 chore: bump up nextjs version 2021-03-15 23:50:04 +08:00
Timothy Lin
61abb262c3 feat: watch data folder for changes 2021-03-15 23:38:16 +08:00
Timothy Lin
0131149409 fix: use more specific match to replace path 2021-03-15 23:17:04 +08:00
Timothy Lin
81335f12f2 fix: remove repeated dash in compose path 2021-02-25 23:00:54 +08:00
Timothy
dc522f0442 Merge pull request #5 from aperezl/master
Add support to Locale Date String
2021-02-25 22:42:37 +08:00
Antonio Manuel Perez Lopez
d43b3b4347 Add support to Locale Date String 2021-02-25 00:19:29 +01:00
Timothy Lin
d4adde7dbc fix: post 2021-02-14 19:20:52 +08:00
Timothy Lin
4f39ec0e04 docs: update readme 2021-02-14 19:16:14 +08:00
Timothy Lin
e91e6935c2 refactor: add card component 2021-02-14 18:44:13 +08:00
Timothy Lin
8b3d38cba6 feat: add title and image as link 2021-02-14 18:24:28 +08:00
Timothy Lin
9e6d435903 feat: add new projects page 2021-02-12 18:51:59 +08:00
Timothy Lin
a1060a7b79 fix: tags layout in post 2021-02-12 16:40:09 +08:00
Timothy
e19df894b6 fix: tag spacing 2021-02-06 16:54:20 +08:00
Timothy
8773b3bc6f Merge pull request #4 from timlrx/fix/safari
Fix/safari
2021-02-04 08:51:35 +08:00
Timothy
146cd66f66 fix: move className to div 2021-02-04 08:50:28 +08:00
Timothy
4e8092f6b1 fix: move className from article to div 2021-02-04 08:44:28 +08:00
Timothy
1c1c30cf18 fix: move flex to seperate div 2021-02-04 08:29:07 +08:00
Timothy
f43d6c3702 feat: improve search to include summary and tags 2021-01-31 10:42:05 +08:00
Timothy
84a2bceb13 fix: exclude draft posts when creating tag paths 2021-01-31 10:13:31 +08:00
Timothy Lin
f666a22286 Merge remote-tracking branch 'origin/master' 2021-01-29 10:20:34 +08:00
Timothy
a9bf55dbb3 fix: replace all space in slug with dash 2021-01-28 23:20:31 +08:00
Timothy
1198ec8bff Create LICENSE 2021-01-23 09:13:32 +08:00
Timothy
c9c4cb04c0 remove unused component 2021-01-20 22:57:04 +08:00
Timothy
7b2905bf07 remove publisherLogo 2021-01-20 22:51:19 +08:00
Timothy
18533065ed fix image link and xml blog path 2021-01-19 22:03:09 +08:00
Timothy
fb82bc71e7 add twitter:image meta tag for blog posts 2021-01-19 21:46:20 +08:00
Timothy
2b2ea2747c fix broken rss guid and link 2021-01-19 21:40:24 +08:00
Timothy
95da0d0e63 fix image meta logic 2021-01-18 23:47:17 +08:00
Timothy
18fd946172 update images meta 2021-01-18 23:41:48 +08:00
Timothy
2de139030f add lastmod and images field to metadata and seo 2021-01-18 22:56:34 +08:00
Timothy
d3f6716917 add compose guide 2021-01-18 21:49:59 +08:00
Timothy
021eaac193 fix rss link 2021-01-18 21:40:18 +08:00
Timothy
d8bf33db91 fix readme formatting 2021-01-17 23:50:15 +08:00
Timothy
ad2c562ff1 add demo blog 2021-01-17 23:46:18 +08:00
Timothy
977a50adc1 add convenience compose script 2021-01-17 11:16:25 +08:00
Timothy
0403eb24a8 refactor formatSlug logic 2021-01-16 18:38:45 +08:00
Timothy
8f646e3429 improve handling of draft posts 2021-01-16 18:36:25 +08:00
Timothy
fdda4c2042 use custom kebabcase function 2021-01-16 18:07:08 +08:00
Timothy
6f90fc50db fix seo 2021-01-13 22:39:56 +08:00
Timothy
9965355e45 add tag routes to sitemap 2021-01-13 20:17:09 +08:00
Timothy
1c2f40424b add tag based rss feed 2021-01-13 18:35:20 +08:00
Timothy
89020e4308 exclude xml files 2021-01-13 18:34:50 +08:00
Timothy
c24276e54a fix button link 2021-01-12 23:43:25 +08:00
Timothy
f5b68672eb lint and format 2021-01-12 23:35:36 +08:00
Timothy
126e30393b modify link 2021-01-12 22:50:10 +08:00
Timothy
347a9ae593 add custom 404 page 2021-01-12 22:47:03 +08:00
Timothy
c5564cd8d9 fix bugs and update post 2021-01-12 00:16:01 +08:00
Timothy
e3636bf286 fix bug in post 2021-01-12 00:08:00 +08:00
Timothy
256b283d2c add readme and intro post 2021-01-11 23:57:49 +08:00
Timothy
f2f0729003 add readme and intro post 2021-01-11 23:57:24 +08:00
Timothy
279f7d2ff7 add author tag for linkedin 2021-01-10 18:52:30 +08:00
Timothy
525e26826a add author tag for linkedin 2021-01-10 18:34:30 +08:00
Timothy
50b839f465 improve article og seo 2021-01-10 18:20:53 +08:00
Timothy
c90f1159ca fix main image seo 2021-01-10 17:50:44 +08:00
Timothy
6a0a6e9530 update seo 2021-01-10 17:35:37 +08:00
Timothy
8cb73bff1d change to Link component 2021-01-10 16:57:47 +08:00
Timothy
fba98a0b74 fix twitter and github post links 2021-01-10 16:55:38 +08:00
Timothy
ffc0fece52 change to camelcase 2021-01-10 16:55:24 +08:00
Timothy
3624a30269 fix link and seo url 2021-01-10 16:09:38 +08:00
Timothy
83d74cb309 switch to link component and fix seo canonical 2021-01-10 15:45:45 +08:00
Timothy
9b8a7253b8 fix anchor link 2021-01-10 15:19:00 +08:00
Timothy
9485e332a8 preload katex fonts 2021-01-10 15:14:26 +08:00
Timothy
49a558d5ff fix theme change 2021-01-10 14:39:42 +08:00
Timothy
07faf4dd00 fix blog seo 2021-01-10 14:32:35 +08:00
Timothy
11776b2e29 fix font loading 2021-01-10 14:31:38 +08:00
Timothy
5c1b4943ad update manifest 2021-01-10 13:53:18 +08:00
Timothy
64271e9c47 Update name 2021-01-10 13:49:22 +08:00
Timothy Lin
54d7b76ce1 Update site and repo info 2021-01-09 18:05:16 +08:00
Timothy Lin
9a6f4efbb8 Upload starter template 2021-01-09 17:50:45 +08:00
Timothy Lin
e332766d0f Initial commit 2021-01-09 17:50:26 +08:00
60 changed files with 2663 additions and 3607 deletions

12
.dockerignore Normal file
View File

@@ -0,0 +1,12 @@
.vscode
.husky
.devcontainer
.contentlayer
.github
faq
.dockerignore
.env.example
*git*
Dockerfile
LICENSE
README.md

View File

@@ -0,0 +1,73 @@
name: Build and Deploy docker container
on:
push:
branches: main
jobs:
build:
runs-on: ubuntu-latest
steps:
# - uses: actions/setup-go@v5
# with:
# go-version: 'stable'
- uses: actions/checkout@v4
- name: Install Yarn
run: npm install -g yarn
- name: Set Node.js 22.x
uses: actions/setup-node@v4
with:
node-version: 22.x
cache: 'yarn'
# - name: Hash files for cache
# uses: https://gitea.com/actions/go-hashfiles@v0.0.1
# id: get-hash
# with:
# patterns: |-
# **/yarn.lock
# **/*.js
# **/*.jsx
# **/*.ts
# **/*.tsx
- name: Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "dir=$(yarn config get cacheFolder)" >> $GITHUB_OUTPUT
- uses: actions/cache@v4
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
with:
path: |
${{ steps.yarn-cache-dir-path.outputs.dir }}
${{ github.workspace }}/.next/cache
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
${{ runner.os }}-yarn-
- run: yarn
- run: EXPORT=1 UNOPTIMIZED=1 yarn build
-
name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
-
name: Login to Docker Hub
uses: docker/login-action@v3
with:
registry: git.jonb.io
username: ${{ gitea.actor }}
password: ${{ secrets.JONBIO_CI }}
-
name: Build and push
uses: docker/build-push-action@v6
with:
context: .
push: true
tags: git.jonb.io/jblu/jonbio:latest
cache-from: type=registry,ref=git.jonb.io/jblu/jonbio:buildcache
cache-to: type=registry,image-manifest=true,oci-mediatypes=true,ref=git.jonb.io/jblu/jonbio:buildcache,mode=max
-
name: Deploy App
uses: fjogeleit/http-request-action@v1
with:
url: 'http://192.168.4.11:7777/v1/update'
method: 'GET'
bearerToken: ${{ secrets.DEPLOYTOKEN }}
timeout: 60000

3
.github/FUNDING.yml vendored
View File

@@ -1,3 +0,0 @@
# These are supported funding model platforms
github: timlrx

View File

@@ -1,39 +0,0 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: bug
assignees: ''
---
**Describe the bug**
A clear and concise description of what the bug is.
**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
**Expected behavior**
A clear and concise description of what you expected to happen.
**Screenshots**
If applicable, add screenshots to help explain your problem.
**System Info (if dev / build issue):**
- OS: [e.g. iOS]
- Node version (please ensure you are using 18+)
- Npm version
**Browser Info (if display / formatting issue):**
- Device [e.g. Desktop, iPhone6]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]
**Additional context**
Add any other context about the problem here.

View File

@@ -1,19 +0,0 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''
---
**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
**Describe the solution you'd like**
A clear and concise description of what you want to happen.
**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.
**Additional context**
Add any other context or screenshots about the feature request here.

View File

@@ -1,55 +0,0 @@
# Inspired from https://github.com/actions/starter-workflows/blob/main/pages/nextjs.yml
name: GitHub Pages
on:
push:
branches: main
workflow_dispatch:
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: 'pages'
cancel-in-progress: false
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
cache: yarn
- id: configurepages
uses: actions/configure-pages@v5
- name: Restore cache
uses: actions/cache@v4
with:
path: .next/cache
key: ${{ runner.os }}-nextjs-${{ hashFiles('**/yarn.lock') }}-${{ hashFiles('**.[jt]s', '**.[jt]sx') }}
restore-keys: |
${{ runner.os }}-nextjs-${{ hashFiles('**/yarn.lock') }}-
- run: yarn
- run: yarn build
env:
EXPORT: 1
UNOPTIMIZED: 1
BASE_PATH: ${{ steps.configurepages.outputs.base_path }}
- uses: actions/upload-pages-artifact@v3
with:
path: ./out
# Deployment job
deploy:
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
steps:
- id: deployment
uses: actions/deploy-pages@v4

0
.husky/pre-commit Executable file → Normal file
View File

0
.yarn/releases/yarn-3.6.1.cjs vendored Executable file → Normal file
View File

View File

@@ -1,65 +1,14 @@
FROM node:18-alpine AS base FROM node:22-alpine
# Install dependencies only when needed ENV NEXT_TELEMETRY_DISABLED=1
FROM base AS deps
# Check https://github.com/nodejs/docker-node/tree/b4117f9333da4138b03a546ec926ef50a31506c3#nodealpine to understand why libc6-compat might be needed.
RUN apk add --no-cache libc6-compat RUN apk add --no-cache libc6-compat
WORKDIR /app WORKDIR /app
COPY ./out /app/out
# Install dependencies based on the preferred package manager
COPY package.json yarn.lock* package-lock.json* pnpm-lock.yaml* ./
RUN \
if [ -f yarn.lock ]; then yarn --immutable; \
elif [ -f package-lock.json ]; then npm ci; \
elif [ -f pnpm-lock.yaml ]; then corepack enable pnpm && pnpm i --frozen-lockfile; \
else echo "Lockfile not found." && exit 1; \
fi
# Rebuild the source code only when needed
FROM base AS builder
WORKDIR /app
COPY --from=deps /app/node_modules ./node_modules
COPY . .
ENV NEXT_TELEMETRY_DISABLED=1
RUN \
if [ -f yarn.lock ]; then yarn build; \
elif [ -f package-lock.json ]; then npm run build; \
elif [ -f pnpm-lock.yaml ]; then corepack enable pnpm && pnpm run build; \
else echo "Lockfile not found." && exit 1; \
fi
# Production image, copy all the files and run next
FROM base AS runner
WORKDIR /app
ENV NODE_ENV=production ENV NODE_ENV=production
# Uncomment the following line in case you want to disable telemetry during runtime. ENV PORT=3000
ENV NEXT_TELEMETRY_DISABLED=1 ENV HOSTNAME="0.0.0.0"
RUN addgroup --system --gid 1001 nodejs
RUN adduser --system --uid 1001 nextjs
COPY --from=builder /app/public ./public
# Set the correct permission for prerender cache
RUN mkdir .next
RUN chown nextjs:nodejs .next
# Automatically leverage output traces to reduce image size
# https://nextjs.org/docs/advanced-features/output-file-tracing
COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./
COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static
USER nextjs
EXPOSE 3000 EXPOSE 3000
ENV PORT=3000 CMD ["npx", "serve", "out"]
# server.js is created by next build from the standalone output
# https://nextjs.org/docs/pages/api-reference/next-config-js/output
ENV HOSTNAME="0.0.0.0"
CMD ["node", "server.js"]

View File

@@ -44,8 +44,8 @@ Internationalization support - [Template with i18n](https://tailwind-nextjs-star
- [thetalhatahir.com](https://www.thetalhatahir.com) - Talha Tahir's personal blog. Added article thumbnails, linkedIn card, Beautiful hero content, technology emoticons. - [thetalhatahir.com](https://www.thetalhatahir.com) - Talha Tahir's personal blog. Added article thumbnails, linkedIn card, Beautiful hero content, technology emoticons.
- [homing.so](https://homing.so) - Homing's personal blog about the stuff he's learning ([source code](https://github.com/hominsu/blog)) - [homing.so](https://homing.so) - Homing's personal blog about the stuff he's learning ([source code](https://github.com/hominsu/blog))
- [zS1m's Blog](https://contrails.space) - zS1m's personal blog for recording and sharing daily learning technical content ([source code](https://github.com/zS1m/nextjs-contrails)) - [zS1m's Blog](https://contrails.space) - zS1m's personal blog for recording and sharing daily learning technical content ([source code](https://github.com/zS1m/nextjs-contrails))
- [dariuszwozniak.net](https://dariuszwozniak.net/) - Software development blog - [dariuszwozniak.net](https://dariuszwozniak.net/) - Software development blog ([source code](https://github.com/dariusz-wozniak/dariuszwozniak.net-v2))
- [Terminals.run](https://terminals.run) - Blog site for some thoughts and records for life and technology. - [dreams.plus](https://dreams.plus) - Blog site for some thoughts and records for life and technology.
- [francisaguilar.co blog](https://francisaguilar.co) - Francis Aguilar's personal blog that talks about tech, fitness, and personal development. - [francisaguilar.co blog](https://francisaguilar.co) - Francis Aguilar's personal blog that talks about tech, fitness, and personal development.
- [Min71 Dev Blog](https://min71.dev) - Personal blog about Blockchain, Development and etc. ([source code](https://github.com/mingi3442/blog)) - [Min71 Dev Blog](https://min71.dev) - Personal blog about Blockchain, Development and etc. ([source code](https://github.com/mingi3442/blog))
- [Bryce Yu's Blog](https://earayu.github.io/) - Bryce Yu's personal Blog about distributed system, database, and web development. ([source code](https://github.com/earayu/earayu.github.io)) - [Bryce Yu's Blog](https://earayu.github.io/) - Bryce Yu's personal Blog about distributed system, database, and web development. ([source code](https://github.com/earayu/earayu.github.io))
@@ -70,6 +70,9 @@ Internationalization support - [Template with i18n](https://tailwind-nextjs-star
- [LyricsDecode.com](https://lyricsdecode.com) - A song lyrics website offering original lyrics, Romanisation, and English translations with customisable viewing options. - [LyricsDecode.com](https://lyricsdecode.com) - A song lyrics website offering original lyrics, Romanisation, and English translations with customisable viewing options.
- [bmacharia.com](https://bmacharia.com/) - Benson Macharia's technical blog about Cybersecurity and IT Risk Management. - [bmacharia.com](https://bmacharia.com/) - Benson Macharia's technical blog about Cybersecurity and IT Risk Management.
- [armujahid.me](https://armujahid.me/) - Abdul Rauf's personal blog about tech and random stuff. - [armujahid.me](https://armujahid.me/) - Abdul Rauf's personal blog about tech and random stuff.
- [leohuynh.dev](leohuynh.dev) - 🇻🇳 Leo's dev blog stories, insights, and ideas. Add `/snippets`, `/books` pages, add `ProfileCard`, `CareerTimeline` components and many more.
- [OpenSats Blog](https://opensats.org/blog) - A 501(c)(3) public charity which aims to sustainably fund free and open-source projects. ([source code](https://github.com/OpenSats/website))
- [Schedles Blog](https://schedles.com/blog) - Social media scheduling tips, strategies, and product updates for content creators. ([Project Link](https://schedles.com))
Using the template? Feel free to create a PR and add your blog to this list. Using the template? Feel free to create a PR and add your blog to this list.
@@ -82,7 +85,6 @@ Thanks to the community of users and contributors to the template! We are no lon
- [Aloisdg's cookbook](https://tambouille.vercel.app/) - with pictures and recipes! - [Aloisdg's cookbook](https://tambouille.vercel.app/) - with pictures and recipes!
- [GautierArcin's demo with next translate](https://tailwind-nextjs-starter-blog-seven.vercel.app/) - includes translation of mdx posts, [source code](https://github.com/GautierArcin/tailwind-nextjs-starter-blog/tree/demo/next-translate) - [GautierArcin's demo with next translate](https://tailwind-nextjs-starter-blog-seven.vercel.app/) - includes translation of mdx posts, [source code](https://github.com/GautierArcin/tailwind-nextjs-starter-blog/tree/demo/next-translate)
- [David Levai's digital garden](https://davidlevai.com/) - customized design and added email subscriptions - [David Levai's digital garden](https://davidlevai.com/) - customized design and added email subscriptions
- [Leo's Blog](https://leohuynh.dev) - Tuan Anh Huynh's personal site. Add Snippets Page, Author Profile Card, Image Lightbox, ...
- [thvu.dev](https://thvu.dev) - Added `mdx-embed`, view count, reading minutes and more. - [thvu.dev](https://thvu.dev) - Added `mdx-embed`, view count, reading minutes and more.
- [irvin.dev](https://www.irvin.dev/) - Irvin Lin's personal site. Added YouTube embedding. - [irvin.dev](https://www.irvin.dev/) - Irvin Lin's personal site. Added YouTube embedding.
- [KirillSo.com](https://www.kirillso.com/) - Personal blog & website. - [KirillSo.com](https://www.kirillso.com/) - Personal blog & website.
@@ -318,8 +320,8 @@ Consider removing the following features that cannot be used in a static build:
## Frequently Asked Questions ## Frequently Asked Questions
- [How can I add a custom MDX component?](/faq/custom-mdx-component.md) - [How can I add a custom MDX component?](faq/custom-mdx-component.md)
- [How can I customize the `kbar` search?](/faq/customize-kbar-search.md) - [How can I customize the `kbar` search?](faq/customize-kbar-search.md)
## Support ## Support

View File

@@ -1,6 +1,8 @@
import { NewsletterAPI } from 'pliny/newsletter' import { NewsletterAPI } from 'pliny/newsletter'
import siteMetadata from '@/data/siteMetadata' import siteMetadata from '@/data/siteMetadata'
export const dynamic = 'force-static'
const handler = NewsletterAPI({ const handler = NewsletterAPI({
// @ts-ignore // @ts-ignore
provider: siteMetadata.newsletter.provider, provider: siteMetadata.newsletter.provider,

View File

@@ -21,11 +21,10 @@ const layouts = {
PostBanner, PostBanner,
} }
export async function generateMetadata({ export async function generateMetadata(props: {
params, params: Promise<{ slug: string[] }>
}: {
params: { slug: string[] }
}): Promise<Metadata | undefined> { }): Promise<Metadata | undefined> {
const params = await props.params
const slug = decodeURI(params.slug.join('/')) const slug = decodeURI(params.slug.join('/'))
const post = allBlogs.find((p) => p.slug === slug) const post = allBlogs.find((p) => p.slug === slug)
const authorList = post?.authors || ['default'] const authorList = post?.authors || ['default']
@@ -78,7 +77,8 @@ export const generateStaticParams = async () => {
return allBlogs.map((p) => ({ slug: p.slug.split('/').map((name) => decodeURI(name)) })) return allBlogs.map((p) => ({ slug: p.slug.split('/').map((name) => decodeURI(name)) }))
} }
export default async function Page({ params }: { params: { slug: string[] } }) { export default async function Page(props: { params: Promise<{ slug: string[] }> }) {
const params = await props.params
const slug = decodeURI(params.slug.join('/')) const slug = decodeURI(params.slug.join('/'))
// Filter out drafts in production // Filter out drafts in production
const sortedCoreContents = allCoreContent(sortPosts(allBlogs)) const sortedCoreContents = allCoreContent(sortPosts(allBlogs))

View File

@@ -11,7 +11,8 @@ export const generateStaticParams = async () => {
return paths return paths
} }
export default function Page({ params }: { params: { page: string } }) { export default async function Page(props: { params: Promise<{ page: string }> }) {
const params = await props.params
const posts = allCoreContent(sortPosts(allBlogs)) const posts = allCoreContent(sortPosts(allBlogs))
const pageNumber = parseInt(params.page as string) const pageNumber = parseInt(params.page as string)
const initialDisplayPosts = posts.slice( const initialDisplayPosts = posts.slice(

35
app/likes/page.tsx Normal file
View File

@@ -0,0 +1,35 @@
import projectsData from '@/data/likesData'
import Card from '@/components/Card'
import { genPageMetadata } from 'app/seo'
export const metadata = genPageMetadata({ title: 'Likes' })
export default function Likes() {
return (
<>
<div className="divide-y divide-gray-200 dark:divide-gray-700">
<div className="space-y-2 pb-8 pt-6 md:space-y-5">
<h1 className="text-3xl font-extrabold leading-9 tracking-tight text-gray-900 dark:text-gray-100 sm:text-4xl sm:leading-10 md:text-6xl md:leading-14">
Likes
</h1>
<p className="text-lg leading-7 text-gray-500 dark:text-gray-400">
These things are pretty cool, check 'em out.
</p>
</div>
<div className="container py-12">
<div className="-m-4 flex flex-wrap">
{projectsData.map((d) => (
<Card
key={d.title}
title={d.title}
description={d.description}
imgSrc={d.imgSrc}
href={d.href}
/>
))}
</div>
</div>
</div>
</>
)
}

View File

@@ -13,7 +13,7 @@ export default function Projects() {
Projects Projects
</h1> </h1>
<p className="text-lg leading-7 text-gray-500 dark:text-gray-400"> <p className="text-lg leading-7 text-gray-500 dark:text-gray-400">
Spit, Grit and a whole lotta duct tape - Penguins of Madagascar Spit, Grit and a whole lotta duct tape!
</p> </p>
</div> </div>
<div className="container py-12"> <div className="container py-12">

View File

@@ -1,6 +1,8 @@
import { MetadataRoute } from 'next' import { MetadataRoute } from 'next'
import siteMetadata from '@/data/siteMetadata' import siteMetadata from '@/data/siteMetadata'
export const dynamic = 'force-static'
export default function robots(): MetadataRoute.Robots { export default function robots(): MetadataRoute.Robots {
return { return {
rules: { rules: {

View File

@@ -2,6 +2,8 @@ import { MetadataRoute } from 'next'
import { allBlogs } from 'contentlayer/generated' import { allBlogs } from 'contentlayer/generated'
import siteMetadata from '@/data/siteMetadata' import siteMetadata from '@/data/siteMetadata'
export const dynamic = 'force-static'
export default function sitemap(): MetadataRoute.Sitemap { export default function sitemap(): MetadataRoute.Sitemap {
const siteUrl = siteMetadata.siteUrl const siteUrl = siteMetadata.siteUrl

View File

@@ -1 +1 @@
{"github":1,"guide":3,"next-js":2,"tailwind":1,"writings":1,"book":1,"reflection":1} {"python":1,"projects":1,"code":1,"cygnus":1,"self-hosted":1,"server":1}

View File

@@ -8,7 +8,10 @@ import { genPageMetadata } from 'app/seo'
import { Metadata } from 'next' import { Metadata } from 'next'
import { notFound } from 'next/navigation' import { notFound } from 'next/navigation'
export async function generateMetadata({ params }: { params: { tag: string } }): Promise<Metadata> { export async function generateMetadata(props: {
params: Promise<{ tag: string }>
}): Promise<Metadata> {
const params = await props.params
const tag = decodeURI(params.tag) const tag = decodeURI(params.tag)
return genPageMetadata({ return genPageMetadata({
title: tag, title: tag,
@@ -31,7 +34,8 @@ export const generateStaticParams = async () => {
return paths return paths
} }
export default function TagPage({ params }: { params: { tag: string } }) { export default async function TagPage(props: { params: Promise<{ tag: string }> }) {
const params = await props.params
const tag = decodeURI(params.tag) const tag = decodeURI(params.tag)
// Capitalize first letter and convert space to dash // Capitalize first letter and convert space to dash
const title = tag[0].toUpperCase() + tag.split(' ').join('-').slice(1) const title = tag[0].toUpperCase() + tag.split(' ').join('-').slice(1)

View File

@@ -16,6 +16,7 @@ export default function Footer() {
<SocialIcon kind="x" href={siteMetadata.x} size={6} /> <SocialIcon kind="x" href={siteMetadata.x} size={6} />
<SocialIcon kind="instagram" href={siteMetadata.instagram} size={6} /> <SocialIcon kind="instagram" href={siteMetadata.instagram} size={6} />
<SocialIcon kind="threads" href={siteMetadata.threads} size={6} /> <SocialIcon kind="threads" href={siteMetadata.threads} size={6} />
<SocialIcon kind="medium" href={siteMetadata.medium} size={6} />
</div> </div>
<div className="mb-2 flex space-x-2 text-sm text-gray-500 dark:text-gray-400"> <div className="mb-2 flex space-x-2 text-sm text-gray-500 dark:text-gray-400">
<div>{siteMetadata.author}</div> <div>{siteMetadata.author}</div>
@@ -25,9 +26,7 @@ export default function Footer() {
<Link href="/">{siteMetadata.title}</Link> <Link href="/">{siteMetadata.title}</Link>
</div> </div>
<div className="mb-8 text-sm text-gray-500 dark:text-gray-400"> <div className="mb-8 text-sm text-gray-500 dark:text-gray-400">
<Link href="https://github.com/timlrx/tailwind-nextjs-starter-blog"> <Link href="https://github.com/timlrx/tailwind-nextjs-starter-blog">Theme</Link>
Tailwind Nextjs Theme
</Link>
</div> </div>
</div> </div>
</footer> </footer>

View File

@@ -93,3 +93,12 @@ export function Instagram(svgProps: SVGProps<SVGSVGElement>) {
</svg> </svg>
) )
} }
export function Medium(svgProps: SVGProps<SVGSVGElement>) {
return (
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" {...svgProps}>
<title>Medium</title>
<path d="M13.54 12a6.8 6.8 0 01-6.77 6.82A6.8 6.8 0 010 12a6.8 6.8 0 016.77-6.82A6.8 6.8 0 0113.54 12zM20.96 12c0 3.54-1.51 6.42-3.38 6.42-1.87 0-3.39-2.88-3.39-6.42s1.52-6.42 3.39-6.42 3.38 2.88 3.38 6.42M24 12c0 3.17-.53 5.75-1.19 5.75-.66 0-1.19-2.58-1.19-5.75s.53-5.75 1.19-5.75C23.47 6.25 24 8.83 24 12z" />
</svg>
)
}

View File

@@ -9,6 +9,7 @@ import {
Mastodon, Mastodon,
Threads, Threads,
Instagram, Instagram,
Medium,
} from './icons' } from './icons'
const components = { const components = {
@@ -22,6 +23,7 @@ const components = {
mastodon: Mastodon, mastodon: Mastodon,
threads: Threads, threads: Threads,
instagram: Instagram, instagram: Instagram,
medium: Medium,
} }
type SocialIconProps = { type SocialIconProps = {

View File

@@ -18,6 +18,7 @@ import {
import rehypeSlug from 'rehype-slug' import rehypeSlug from 'rehype-slug'
import rehypeAutolinkHeadings from 'rehype-autolink-headings' import rehypeAutolinkHeadings from 'rehype-autolink-headings'
import rehypeKatex from 'rehype-katex' import rehypeKatex from 'rehype-katex'
import rehypeKatexNoTranslate from 'rehype-katex-notranslate'
import rehypeCitation from 'rehype-citation' import rehypeCitation from 'rehype-citation'
import rehypePrismPlus from 'rehype-prism-plus' import rehypePrismPlus from 'rehype-prism-plus'
import rehypePresetMinify from 'rehype-preset-minify' import rehypePresetMinify from 'rehype-preset-minify'
@@ -169,6 +170,7 @@ export default makeSource({
}, },
], ],
rehypeKatex, rehypeKatex,
rehypeKatexNoTranslate,
[rehypeCitation, { path: path.join(root, 'data') }], [rehypeCitation, { path: path.join(root, 'data') }],
[rehypePrismPlus, { defaultLanguage: 'js', ignoreMissing: true }], [rehypePrismPlus, { defaultLanguage: 'js', ignoreMissing: true }],
rehypePresetMinify, rehypePresetMinify,

View File

@@ -1,12 +1,11 @@
--- ---
name: Jonathan Branan name: Jonathan Branan
avatar: /static/images/avatar.png avatar: https://s3.jonb.io/cdn/author/2.JPG
occupation: Software Engineer occupation: Software Engineer
company: Fortra company: Fortra
email: jonathan.branan@fortra.com email: jonathan.branan@fortra.com
linkedin: https://www.linkedin.com/in/jonathanbranan/ linkedin: https://www.linkedin.com/in/jonathanbranan/
github: https://github.com/jonbranan github: https://github.com/jonbranan
#gitea: https://git.jonb.io/jblu
--- ---
Jonathan Branan is a Software Engineer at Fortra. He is mostly self-taught however he did attend a vocational class at Rackspace Open Cloud Academy. Jonathan Branan is a Software Engineer at Fortra. He is mostly self-taught however he did attend a vocational class at Rackspace Open Cloud Academy.

View File

@@ -1,38 +0,0 @@
---
title: Sample .md file
date: '2016-03-08'
tags: ['markdown', 'code', 'features']
draft: true
summary: Example of a markdown file with code blocks and syntax highlighting
---
A sample post with markdown.
## Inline Highlighting
Sample of inline highlighting `sum = parseInt(num1) + parseInt(num2)`
## Code Blocks
Some Javascript code
```javascript
var num1, num2, sum
num1 = prompt('Enter first number')
num2 = prompt('Enter second number')
sum = parseInt(num1) + parseInt(num2) // "+" means "add"
alert('Sum = ' + sum) // "+" means combine into a string
```
Some Python code 🐍
```python
def fib():
a, b = 0, 1
while True: # First iteration:
yield a # yield 0 to start with and then
a, b = b, a + b # a will now be 1, and b will also be 1, (0 + 1)
for index, fibonacci_number in zip(range(10), fib()):
print('{i:3}: {f:3}'.format(i=index, f=fibonacci_number))
```

View File

@@ -1,198 +0,0 @@
---
title: 'Markdown Guide'
date: '2019-10-11'
tags: ['github', 'guide']
draft: false
summary: 'Markdown cheatsheet for all your blogging needs - headers, lists, images, tables and more! An illustrated guide based on GitHub Flavored Markdown.'
---
# Introduction
Markdown and Mdx parsing is supported via `unified`, and other remark and rehype packages. `next-mdx-remote` allows us to parse `.mdx` and `.md` files in a more flexible manner without touching webpack.
GitHub flavored markdown is used. `mdx-prism` provides syntax highlighting capabilities for code blocks. Here's a demo of how everything looks.
The following markdown cheatsheet is adapted from: https://guides.github.com/features/mastering-markdown/
# What is Markdown?
Markdown is a way to style text on the web. You control the display of the document; formatting words as bold or italic, adding images, and creating lists are just a few of the things we can do with Markdown. Mostly, Markdown is just regular text with a few non-alphabetic characters thrown in, like `#` or `*`.
# Syntax guide
Heres an overview of Markdown syntax that you can use anywhere on GitHub.com or in your own text files.
## Headers
```
# This is a h1 tag
## This is a h2 tag
#### This is a h4 tag
```
# This is a h1 tag
## This is a h2 tag
#### This is a h4 tag
## Emphasis
```
_This text will be italic_
**This text will be bold**
_You **can** combine them_
```
_This text will be italic_
**This text will be bold**
_You **can** combine them_
## Lists
### Unordered
```
- Item 1
- Item 2
- Item 2a
- Item 2b
```
- Item 1
- Item 2
- Item 2a
- Item 2b
### Ordered
```
1. Item 1
1. Item 2
1. Item 3
1. Item 3a
1. Item 3b
```
1. Item 1
1. Item 2
1. Item 3
1. Item 3a
1. Item 3b
## Images
```
![GitHub Logo](https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png)
Format: ![Alt Text](url)
```
![GitHub Logo](https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png)
## Links
```
http://github.com - automatic!
[GitHub](http://github.com)
```
http://github.com - automatic!
[GitHub](http://github.com)
## Blockquotes
```
As Kanye West said:
> We're living the future so
> the present is our past.
```
As Kanye West said:
> We're living the future so
> the present is our past.
## Inline code
```
I think you should use an
`<addr>` element here instead.
```
I think you should use an
`<addr>` element here instead.
## Syntax highlighting
Heres an example of how you can use syntax highlighting with [GitHub Flavored Markdown](https://help.github.com/articles/basic-writing-and-formatting-syntax/):
````
```js:fancyAlert.js
function fancyAlert(arg) {
if (arg) {
$.facebox({ div: '#foo' })
}
}
```
````
And here's how it looks - nicely colored with styled code titles!
```js:fancyAlert.js
function fancyAlert(arg) {
if (arg) {
$.facebox({ div: '#foo' })
}
}
```
## Footnotes
```
Here is a simple footnote[^1]. With some additional text after it.
[^1]: My reference.
```
Here is a simple footnote[^1]. With some additional text after it.
[^1]: My reference.
## Task Lists
```
- [x] list syntax required (any unordered or ordered list supported)
- [x] this is a complete item
- [ ] this is an incomplete item
```
- [x] list syntax required (any unordered or ordered list supported)
- [x] this is a complete item
- [ ] this is an incomplete item
## Tables
You can create tables by assembling a list of words and dividing them with hyphens `-` (for the first row), and then separating each column with a pipe `|`:
```
| First Header | Second Header |
| --------------------------- | ---------------------------- |
| Content from cell 1 | Content from cell 2 |
| Content in the first column | Content in the second column |
```
| First Header | Second Header |
| --------------------------- | ---------------------------- |
| Content from cell 1 | Content from cell 2 |
| Content in the first column | Content in the second column |
## Strikethrough
Any word wrapped with two tildes (like `~~this~~`) will appear ~~crossed out~~.

View File

@@ -1,72 +0,0 @@
---
title: Images in Next.js
date: '2020-11-11'
tags: ['next js', 'guide']
draft: false
summary: 'In this article we introduce adding images in the tailwind starter blog and the benefits and limitations of the next/image component.'
authors: ['default']
---
# Introduction
The tailwind starter blog has out of the box support for [Next.js's built-in image component](https://nextjs.org/docs/api-reference/next/image) and automatically swaps out default image tags in markdown or mdx documents to use the Image component provided.
# Usage
To use in a new page route / javascript file, simply import the image component and call it e.g.
```js
import Image from 'next/image'
function Home() {
return (
<>
<h1>My Homepage</h1>
<Image src="/me.png" alt="Picture of the author" width={500} height={500} />
<p>Welcome to my homepage!</p>
</>
)
}
export default Home
```
For a markdown file, the default image tag can be used and the default `img` tag gets replaced by the `Image` component in the build process.
Assuming we have a file called `ocean.jpg` in `static/images/ocean.jpg`, the following line of code would generate the optimized image.
```
![ocean](/static/images/ocean.jpg)
```
Alternatively, since we are using mdx, we can just use the image component directly! Note, that you would have to provide a fixed width and height. The `img` tag method parses the dimension automatically.
```js
<Image alt="ocean" src="/static/images/ocean.jpg" width={256} height={128} />
```
_Note_: If you try to save the image, it is in webp format, if your browser supports it!
![ocean](/static/images/ocean.jpeg)
Photo by [YUCAR FotoGrafik](https://unsplash.com/@yucar?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)
on [Unsplash](https://unsplash.com/s/photos/sea?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText)
# Benefits
- Smaller image size with Webp (~30% smaller than jpeg)
- Responsive images - the correct image size is served based on the user's viewport
- Lazy loading - images load as they are scrolled to the viewport
- Avoids [Cumulative Layout Shift](https://web.dev/cls/)
- Optimization on demand instead of build-time - no increase in build time!
# Limitations
- Due to the reliance on `next/image`, unless you are using an external image CDN like Cloudinary or Imgix, it is practically required to use Vercel for hosting. This is because the component acts like a serverless function that calls a highly optimized image CDN.
If you do not want to be tied to Vercel, you can remove `imgToJsx` in `remarkPlugins` in `lib/mdx.js`. This would avoid substituting the default `img` tag.
Alternatively, one could wait for image optimization at build time to be supported. A different library, [next-optimized-images](https://github.com/cyrilwanner/next-optimized-images) does that, although it requires transforming the images through webpack which is not done here.
- Images from external links are not passed through `next/image`
- All images have to be stored in the `public` folder e.g `/static/images/ocean.jpeg`

View File

@@ -0,0 +1,53 @@
---
title: How I Built Cygnus
date: '2024-10-14'
tags: ['cygnus', 'self-hosted', 'server']
draft: false
summary: A story of how I started self-hosting.
---
> #### Now that I think about it, they kind of took advantage of me
### Side work for Aunt Laurie
The first piece of hardware I ever owned was given to me by my dear Aunt. At the time she had worked for a company that sold industrial saw blades and she was frequently fixing their IT issues despite being an accountant. To this day it still infuriates me how much they took advantage of her. Now that I think about it, they kind of took advantage of me. You see I had worked for GeekSquad at the time and looking back at it, I realize how little I knew then. While I know there is always more to learn in the industry, what you learn pretty quickly is that your time is valuable, and that not everyone views IT work as "easy" and "no big deal". If they had invited an IT consultant to do the 3 hours of work I did, the bill easily would have been hundreds of dollars. These days, I don't charge by the hour, I charge by the job. This way, I can work quickly and not get penalized for it.
She asked me in to help take a look at a virus infecting some of the computers at the office. This virus was mean; one of those that would keep creating itself until you found the source process. I don't really think it was a self-replicating-worm-type-of-virus because it didn't spread to all of the computers in the network, just a few. It was more like one of those click-a-link-in-an-email-that-you-shouldn't-have types. No, Harbor freights doesn't have a free gift card for you. What is free, is the headache it takes to find the dang source. I was able to find it only because i suggested an antivirus I liked: Webroot. It was one of the most performant and reliable anti-viruses I have ever seen. After convincing my aunt to buy it, I whipped up a batch file to install the application and register it all in one go. Boyyyy now that I think about it, that's probably when I really started to enjoy writing code/scripting. After using the script, Webroot immediately found the source process and resource usage went back to normal.
"Would you like a computer?"
"A what?" I respond confused (I was expecting money). She starts walking to the networking closet where I see an old dell tower sitting on the floor. At first I think it's just a desktop, but after looking at the label closely, I realize it's actually a server in desktop form. She was offering me a Dell T100 equipped with a quad core Xeon processor(Intel Server CPU) and 4 bays for hard drives. Hard drives included.
"Oh Sweet! Thanks Auntie Lar!"
Despite not being paid like a professional, this was sufficient compensation. While it wasn't the most powerful server on the market, it definitely would do anything I ask it. This leaves just one question...
### A way to watch movies
> What should I ask it to do?
The computer sits in my room for months. Every glance in its direction, I ask my self: "What should I ask it to do?". A month or two later, I am lounging in the living room with my parents watching OTA tv. My father just did a scan of channels and while we are flipping through the channels we come across The Fresh Prince of Bel-Air reruns. We couldn't get enough. I was so happy. You see, you couldn't find those reruns on OTA in San Antonio; And we just happened to be getting a channel from Austin! This goes on for a couple of days then one day, the floor just gets pull from underneath our feet. We were no longer getting signal! I have my answer to the question now. I am going to download The Fresh Prince of Bel-Air and watch it off my server. After installing Windows Sever 2012 Edition, I install plex. I happily download The Fresh Prince of Bel-Air and ironically, to this day I haven't watched all the episodes. I still have all of the files though.
### Learning virtualization
"So what do you like to do with your free time?"
"I love watching movies! I have a plex server. I also like to play Video Games like League of legends and Overwatch." I smile as I respond to my future Manager.
"That's cool, I have one too. Well alright, we are going to give you a technical interview now. Here's the packet. You have an hour."
I would say the interview went well. After all, I got the job. This was my first "Corporate Job". The exposure really required me to teach my self on the side. Using VMWare ESXI was very easy. Their bare metal hypervisor came with networking, storage management etc and was reasonably intuitive.
Downloading and setting up linux virtual machines with each application was challenging yet rewarding. Setting up servers manually and then installing the applications was an involved process; One that likely set the ground work for understanding the use case of containers. Being RHEL certified did afford me a large degree of appreciation for linux. I would combine these later to make managing my home lab much, much easier. But, hey, you live and you learn. In this case I learned that I was demanding too much of my little Dell T100 server. I would need to build it bigger. After all, I was already at home.
### Building from scratch
Ebay, is a great website. You can find anything from car parts to an ice tea maker. They also sell things from China. Did you know you could buy server parts from Ebay? I built a dual processor server. Guess how much each processor was? $5. And the RAM(Memory)? $7. Just to put that in perspective, *new* processors were *hundreds* of dollars, sometimes even thousands. Ebay enabled me build an affordable home lab server. It was great while it lasted.....
### 15 amp circuit breaker
Did you know, in America, there are two typical types of circuits run in residential rooms? Me either! For example, your bedroom likely has several outlets however in most cases they all are sharing the same power connection or circuit. These circuits have a maximum amount of power they can safely pull before the safety switch or circuit breaker will "trip". I learned this the hard way. You see, I lived my grandparents at the time and my grandfather needed the house warmer to stay healthy and in a good mood. So my grandmother and I never raised the temperature. But since we live in Texas, I needed something to cool down my room. I was in the middle of an Overwatch gaming session and all of the sudden the pc shuts off. I new instantly the circuit breaker tripped because the AC shutoff too. I ran over to the circuit panel, slapped the breaker on and ran right back to my game. Booted the PC and get back in game as quickly as possible. Trips again. Turn it back on. I repeat this business another time before I give up. A gaming PC, a couple of servers and an air conditioner draw a lot of power. When all three are running on the same circuit, it can cause it to trip. I find out later the circuit in my room is a 15 amp breaker, instead of a 20! At least I know now. I go to watch a movie on Plex and I notice plex isn't loading. I walk over to the servers and power them on. The Dell T100 works just fine. My custom server, won't turn on! Panic sets in.
To be continued....
{/*
### Troubleshooting insanity
### The Need to Concede
### Light at the end of the tunnel
*/}

View File

@@ -1,197 +0,0 @@
---
title: 'Introducing Tailwind Nextjs Starter Blog'
date: '2021-01-12'
lastmod: '2024-08-16'
tags: ['next-js', 'tailwind', 'guide']
draft: false
summary: 'Looking for a performant, out of the box template, with all the best in web technology to support your blogging needs? Checkout the Tailwind Nextjs Starter Blog template.'
images: ['/static/images/canada/mountains.jpg', '/static/images/canada/toronto.jpg']
authors: ['default', 'sparrowhawk']
---
![tailwind-nextjs-banner](/static/images/twitter-card.png)
# Tailwind Nextjs Starter Blog
[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/git/external?repository-url=https://github.com/timlrx/tailwind-nextjs-starter-blog)
> [!CAUTION]
> This is the README of version 1 of the template. It is kept for historical reasons, but is no longer supported. It also serves as a nice example of [Github Alert](https://docs.github.com/en/get-started/writing-on-github/getting-started-with-writing-and-formatting-on-github/basic-writing-and-formatting-syntax#alerts). For the actual documentation, please refer to the [Github repository](https://github.com/timlrx/tailwind-nextjs-starter-blog).
This is a [Next.js](https://nextjs.org/), [Tailwind CSS](https://tailwindcss.com/) blogging starter template. Probably the most feature-rich Next.js markdown blogging template out there. Comes out of the box configured with the latest technologies to make technical writing a breeze. Easily configurable and customizable. Perfect as a replacement to existing Jekyll and Hugo individual blogs.
Check out the documentation below to get started.
Facing issues? Check the [FAQ page](https://github.com/timlrx/tailwind-nextjs-starter-blog/wiki) and do a search on past issues. Feel free to open a new issue if none has been posted previously.
Feature request? Check the past discussions to see if it has been brought up previously. Otherwise, feel free to start a new discussion thread. All ideas are welcomed!
## Examples
- [Demo Blog](https://tailwind-nextjs-starter-blog.vercel.app/) - this repo
- [My personal blog](https://www.timlrx.com) - modified to auto-generate blog posts with dates
- [Aloisdg's cookbook](https://tambouille.vercel.app/) - with pictures and recipes!
- [GautierArcin's demo with next translate](https://tailwind-nextjs-starter-blog-seven.vercel.app/) - includes translation of mdx posts, [source code](https://github.com/GautierArcin/tailwind-nextjs-starter-blog/tree/demo/next-translate)
- [David Levai's digital garden](https://davidlevai.com/) - customized design and added email subscriptions
- [Thinh's Corner](https://thinhcorner.com/) - [customized layout](https://github.com/Th1nhNg0/th1nhng0.vercel.app/blob/5e73a420828d82f01e7147512a2c3273c4ec19f8/layouts/PostLayout.js) with sticky side table of contents
Using the template? Feel free to create a PR and add your blog to this list.
## Motivation
I wanted to port my existing blog to Nextjs and Tailwind CSS but there was no easy out of the box template to use so I decided to create one. Design is adapted from [Tailwindlabs blog](https://github.com/tailwindlabs/blog.tailwindcss.com).
I wanted it to be nearly as feature-rich as popular blogging templates like [beautiful-jekyll](https://github.com/daattali/beautiful-jekyll) and [Hugo Academic](https://github.com/wowchemy/wowchemy-hugo-modules) but with the best of React's ecosystem and current web development's best practices.
## Features
- Easy styling customization with [Tailwind 3.0](https://tailwindcss.com/blog/tailwindcss-v3) and primary color attribute
- Near perfect lighthouse score - [Lighthouse report](https://www.webpagetest.org/result/210111_DiC1_08f3670c3430bf4a9b76fc3b927716c5/)
- Lightweight, 45kB first load JS, uses Preact in production build
- Mobile-friendly view
- Light and dark theme
- Self-hosted font with [Fontsource](https://fontsource.org/)
- Supports [plausible](https://plausible.io/), [simple analytics](https://simpleanalytics.com/) and google analytics
- [MDX - write JSX in markdown documents!](https://mdxjs.com/)
- Server-side syntax highlighting with line numbers and line highlighting via [rehype-prism-plus](https://github.com/timlrx/rehype-prism-plus)
- Math display supported via [KaTeX](https://katex.org/)
- Citation and bibliography support via [rehype-citation](https://github.com/timlrx/rehype-citation)
- Automatic image optimization via [next/image](https://nextjs.org/docs/basic-features/image-optimization)
- Flexible data retrieval with [mdx-bundler](https://github.com/kentcdodds/mdx-bundler)
- Support for tags - each unique tag will be its own page
- Support for multiple authors
- Blog templates
- TOC component
- Support for nested routing of blog posts
- Newsletter component with support for Mailchimp, Buttondown, Convertkit, Klaviyo, Revue, Emailoctopus and Beehiiv
- Supports [giscus](https://github.com/laymonage/giscus), [utterances](https://github.com/utterance/utterances) or disqus
- Projects page
- Preconfigured security headers
- SEO friendly with RSS feed, sitemaps and more!
## Sample posts
- [A markdown guide](https://tailwind-nextjs-starter-blog.vercel.app/blog/github-markdown-guide)
- [Learn more about images in Next.js](https://tailwind-nextjs-starter-blog.vercel.app/blog/guide-to-using-images-in-nextjs)
- [A tour of math typesetting](https://tailwind-nextjs-starter-blog.vercel.app/blog/deriving-ols-estimator)
- [Simple MDX image grid](https://tailwind-nextjs-starter-blog.vercel.app/blog/pictures-of-canada)
- [Example of long prose](https://tailwind-nextjs-starter-blog.vercel.app/blog/the-time-machine)
- [Example of Nested Route Post](https://tailwind-nextjs-starter-blog.vercel.app/blog/nested-route/introducing-multi-part-posts-with-nested-routing)
## Quick Start Guide
1. JS (official support) - `npx degit https://github.com/timlrx/tailwind-nextjs-starter-blog.git` or TS (community support) - `npx degit timlrx/tailwind-nextjs-starter-blog#typescript`
2. Personalize `siteMetadata.js` (site related information)
3. Modify the content security policy in `next.config.js` if you want to use
any analytics provider or a commenting solution other than giscus.
4. Personalize `authors/default.md` (main author)
5. Modify `projectsData.ts`
6. Modify `headerNavLinks.ts` to customize navigation links
7. Add blog posts
8. Deploy on Vercel
## Development
First, run the development server:
```bash
npm start
# or
npm run dev
```
Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
You can start editing the page by modifying `pages/index.js`. The page auto-updates as you edit the file.
## Extend / Customize
`data/siteMetadata.js` - contains most of the site related information which should be modified for a user's need.
`data/authors/default.md` - default author information (required). Additional authors can be added as files in `data/authors`.
`data/projectsData.js` - data used to generate styled card on the projects page.
`data/headerNavLinks.js` - navigation links.
`data/logo.svg` - replace with your own logo.
`data/blog` - replace with your own blog posts.
`public/static` - store assets such as images and favicons.
`tailwind.config.js` and `css/tailwind.css` - contain the tailwind stylesheet which can be modified to change the overall look and feel of the site.
`css/prism.css` - controls the styles associated with the code blocks. Feel free to customize it and use your preferred prismjs theme e.g. [prism themes](https://github.com/PrismJS/prism-themes).
`components/social-icons` - to add other icons, simply copy an svg file from [Simple Icons](https://simpleicons.org/) and map them in `index.js`. Other icons use [heroicons](https://heroicons.com/).
`components/MDXComponents.js` - pass your own JSX code or React component by specifying it over here. You can then call them directly in the `.mdx` or `.md` file. By default, a custom link and image component is passed.
`layouts` - main templates used in pages.
`pages` - pages to route to. Read the [Next.js documentation](https://nextjs.org/docs) for more information.
`next.config.js` - configuration related to Next.js. You need to adapt the Content Security Policy if you want to load scripts, images etc. from other domains.
## Post
### Frontmatter
Frontmatter follows [Hugo's standards](https://gohugo.io/content-management/front-matter/).
Currently 10 fields are supported.
```
title (required)
date (required)
tags (required, can be empty array)
lastmod (optional)
draft (optional)
summary (optional)
images (optional, if none provided defaults to socialBanner in siteMetadata config)
authors (optional list which should correspond to the file names in `data/authors`. Uses `default` if none is specified)
layout (optional list which should correspond to the file names in `data/layouts`)
canonicalUrl (optional, canonical url for the post for SEO)
```
Here's an example of a post's frontmatter:
```
---
title: 'Introducing Tailwind Nexjs Starter Blog'
date: '2021-01-12'
lastmod: '2021-01-18'
tags: ['next-js', 'tailwind', 'guide','yoyoyoy']
draft: false
summary: 'Looking for a performant, out of the box template, with all the best in web technology to support your blogging needs? Checkout the Tailwind Nextjs Starter Blog template.'
images: ['/static/images/canada/mountains.jpg', '/static/images/canada/toronto.jpg']
authors: ['default', 'sparrowhawk']
layout: PostLayout
canonicalUrl: https://tailwind-nextjs-starter-blog.vercel.app/blog/introducing-tailwind-nextjs-starter-blog
---
```
### Compose
Run `node ./scripts/compose.js` to bootstrap a new post.
Follow the interactive prompt to generate a post with pre-filled front matter.
## Deploy
**Vercel**
The easiest way to deploy the template is to use the [Vercel Platform](https://vercel.com) from the creators of Next.js. Check out the [Next.js deployment documentation](https://nextjs.org/docs/deployment) for more details.
**Netlify / GitHub Pages / Firebase etc.**
As the template uses `next/image` for image optimization, additional configurations have to be made to deploy on other popular static hosting websites like [Netlify](https://www.netlify.com/) or [GitHub Pages](https://pages.github.com/). An alternative image optimization provider such as Imgix, Cloudinary or Akamai has to be used. Alternatively, replace the `next/image` component with a standard `<img>` tag. See [`next/image` documentation](https://nextjs.org/docs/basic-features/image-optimization) for more details.
The API routes used in the newsletter component cannot be used in a static site export. You will need to use a form API endpoint provider and substitute the route in the newsletter component accordingly. Other hosting platforms such as Netlify also offer alternative solutions - please refer to their docs for more information.
## Support
Using the template? Support this effort by giving a star on GitHub, sharing your own blog and giving a shoutout on Twitter or be a project [sponsor](https://github.com/sponsors/timlrx).
## Licence
[MIT](https://github.com/timlrx/tailwind-nextjs-starter-blog/blob/main/LICENSE) © [Timothy Lin](https://www.timrlx.com)

View File

@@ -1,10 +0,0 @@
---
title: My fancy title
date: '2021-01-31'
tags: ['yoyoyoy']
draft: true
summary: draft post
images: []
---
Draft post which should not display

11
data/blog/qbitmaid.mdx Normal file
View File

@@ -0,0 +1,11 @@
---
title: Qbitmaid
date: '2024-11-3'
tags: ['python', 'projects', 'code']
draft: true
summary: How I used python to keep my torrents in check
layout: PostBanner
images: ['https://s3.jonb.io/cdn/projects/qbitmaid.jpg']
---
[Source Code](https://git.jonb.io/jblu/qbit-maid)

View File

@@ -1,190 +0,0 @@
---
title: 'Release of Tailwind Nextjs Starter Blog v2.0'
date: '2023-08-05'
lastmod: '2023-08-05'
tags: ['next-js', 'tailwind', 'guide', 'feature']
draft: true
summary: 'Release of Tailwind Nextjs Starter Blog template v2.0, refactored with Nextjs App directory and React Server Components setup.Discover the new features and how to migrate from V1.'
images: ['/static/images/twitter-card.png']
---
## Introduction
Welcome to the release of Tailwind Nextjs Starter Blog template v2.0. This release is a major refactor of the codebase to support Nextjs App directory and React Server Components. Read on to discover the new features and how to migrate from V1.
<TOCInline toc={props.toc} exclude="Introduction" />
## V1 to V2
![Github Traffic](/static/images/github-traffic.png)
The template was first released in January 2021 and has since been used by thousands of users. It is featured on [Next.js Templates](https://vercel.com/templates/next.js/tailwind-css-starter-blog), [Tailwind Awesome](https://www.tailwindawesome.com/resources/tailwind-nextjs-starter-blog) among other listing sites. It attracts 200+ unique visitors daily notching 1500-2000 page views, with 1.3k forks and many other clones.
Many thanks to the community of users and contributors for making this template a success! I created a small video montage of the blogs (while cleaning up the list in the readme) to showcase the diversity of the blogs created using the template and to celebrate the milestone:
<video controls>
<source
src="https://github-production-user-asset-6210df.s3.amazonaws.com/28362229/258559849-2124c81f-b99d-4431-839c-347e01a2616c.webm"
type="video/webm"
/>
</video>
Version 2 builds on the success of the previous version and introduces many new features and improvements. The codebase has been refactored to support Next.js App directory and React Server Components. Markdown / MDX is now processed using Contentlayer, a type-safe content SDK that validates and transforms your content into type-safe JSON data. It integrates with Pliny, a new library that provides out of the box Next.js components to enhance your static site with analytics, comments and newsletter subscription. A new command palette (⌘-k) search component is also added to the template.
Let's dive into the new features and improvements in V2.
## Next.js App Directory and React Server Components
Now that [Next.js App router](https://nextjs.org/docs/app) is finally stable and is mostly feature compatible with Page Router, the codebase has been migrated to new setup. This allows for a hybrid rendering approach, with the use of React Server Components generated on the server side for faster page loads and smaller bundle sizes, while retaining the ability to sprinkle in client side React components for interactivity.[^1]
With addition powers comes a [new paradigm](https://nextjs.org/docs/getting-started/react-essentials) to learn. I have migrated the codebase to make use of the new features as much as possible. This includes changes in the folder structure, splitting components into server vs client components, leveraging server side data fetching and using the recommended [Metadata](https://nextjs.org/docs/app/building-your-application/optimizing/metadata) API for SEO discoverability.
While this simplifies the codebase to some extent, it makes migration from the old codebase more difficult. If you are looking to migrate, I recommend starting from a fresh template and copying over your customizations and existing content. See the [migration recommendations](#migration-recommendations) section for more details.
## Typescript First
The codebase has been migrated to Typescript. While the previous version of the template was available in both Javascript and Typescript, I decided to reduce the maintenance burden and focus on Typescript. This also allows for better type checking and code completion in IDEs.
Typescript is also a perfect match with our new type-safe markdown processor - Contentlayer.
## Contentlayer
[Contentlayer](https://www.contentlayer.dev/) is a content SDK that validates and transforms your content into type-safe JSON data that you can easily import into your application. It makes working with local markdown or MDX files a breeze. This replaces `MDX-bundler` and our own markdown processing workflow.
First, a content source is defined, specifying the name of the document type, the source where it is located along with the frontmatter fields and any additional computed fields that should be generated as part of the process.
```ts:contentlayer.config.ts
export const Blog = defineDocumentType(() => ({
name: 'Blog',
filePathPattern: 'blog/**/*.mdx',
contentType: 'mdx',
fields: {
title: { type: 'string', required: true },
date: { type: 'date', required: true },
tags: { type: 'list', of: { type: 'string' }, default: [] },
...
},
computedFields: {
readingTime: { type: 'json', resolve: (doc) => readingTime(doc.body.raw) },
slug: {
type: 'string',
resolve: (doc) => doc._raw.flattenedPath.replace(/^.+?(\/)/, ''),
}
...
},
}))
```
Contentlayer then processes the MDX files with our desired markdown remark or rehype plugins, validates the schema, generate type definitions and output json files that can be easily imported in our pages. Hot reloading comes out of the box, so edits to the markdown files will be reflected in the browser immediately!
## Pliny
A large reason for the popularity of the template was its customizability and integration with other services from analytics providers to commenting solutions. However, this means that a lot of boilerplate code has to be co-located within the template even if the user does not use the feature. Updates and bug fixes had to be copied manually to the user's codebase.
To solve this, I have abstracted the logic to a separate repository - [Pliny](https://github.com/timlrx/pliny). Pliny provides out of the box Next.js components to enhance static sites:
- Analytics
- Google Analytics
- Plausible Analytics
- Simple Analytics
- Umami Analytics
- Posthog
- Comments
- Disqus
- Giscus
- Utterances
- Newsletter (uses Next 13 API Routes)
- Buttondown
- Convertkit
- Email Octopus
- Klaviyo
- Mailchimp
- Revue
- Command palette search with tailwind style sheet
- Algolia
- Kbar (local search)
- UI utility components
- Bleed
- Newsletter / Blog Newsletter
- Pre / Code block
- Table of Contents
Choose your preferred service by modifying `siteMetadata.js` and changing the appropriate fields. For example to change from Umami Analytics to Plausible, we can change the following fields:
```diff-js:siteMetadata.js
analytics: {
- umamiAnalytics: {
- // We use an env variable for this site to avoid other users cloning our analytics ID
- umamiWebsiteId: process.env.NEXT_UMAMI_ID, // e.g. 123e4567-e89b-12d3-a456-426614174000
- },
+ plausibleAnalytics: {
+ plausibleDataDomain: '', // e.g. tailwind-nextjs-starter-blog.vercel.app
+ },
},
```
Changes in the configuration file gets propagated to the components automatically. No modification to the template is required.
Under the hood, Pliny exports high level components such as `<Analytics analyticsConfig={analyticsConfig}/>` and `<Comments commentsConfig={commentsConfig}/>` which takes in a configuration object and renders the appropriate component. Since the layouts are defined on the server side, Next.js is able to use the configuration object to determine which component to render and send only the required component bundle to the client.
## New Search Component
What's a blog in 2023 without a command palette search bar?
One of the most highly requested features have been added 🎉! The search component supports 2 search providers - Algolia and Kbar local search.
### Algolia
[Algolia Docsearch](https://docsearch.algolia.com/) is popular free service used across many documentation websites. It automatically scrapes the website that has is submitted for indexing and makes the search result available via a beautiful dialog modal. The pliny component is greatly inspired by the Docusaurus implementation and comes with a stylesheet that is compatible with the Tailwind CSS theme.
### Kbar
[Kbar](https://github.com/timc1/kbar) is a fast, portable, and extensible cmd+k interface. The pliny implementation uses kbar to create a local search dialog box. The component loads a JSON file, default `search.json`, that was created in the contentlayer build process. Try pressing ⌘-k or ctrl-k to see the search bar in action!
## Styling and Layout Updates
### Theming
`tailwind.config.js` has been updated to use tailwind typography defaults where possible and to use the built-in support for dark mode via the `prose-invert` class. This replaces the previous `prose-dark` class and configuration.
The primary theme color is updated from `teal` to `pink` and the primary gray theme from `neutral` to `gray`.
Inter is now replaced with Space Grotesk as the default font.
### New Layouts
Layout components available in the `layouts` directory, provide a simple way to customize the look and feel of the blog.[^2]
The downside of building a popular template is that you start seeing multiple similar sites everywhere 😆. While users are encouraged to customized the layouts to their liking, having more layout options that are easily switchable promotes diversity and perhaps can be a good starting point for further customizations.
In v2, I added a new post layout - `PostBanner`. It features a large banner image and a centered content container. Check out "[Pictures of Canada](/blog/pictures-of-canada)" blog post which has been updated to use the new layout.
The default blog listing layout has also been updated to include a side bar with blog tags. The search bar in the previous layout has been replace with the new command palette search. To switch back to the old layout, simply change the pages that use the `ListLayoutWithTags` component back to the original `ListLayout`.
## Migration Recommendations
Due to the large changes in directory structure, setup and tooling, I recommend starting from a fresh template and copying existing content, followed by incrementally migrating changes over to the new template.
Styling changes should be relatively minor and can be copied over from the old `tailwind.config.js` to the new one. If copying over, you might need to add back the `prose-dark` class to components that opt into tailwind typography styling. Do modify the font import in the root layout component to use the desired font of choice.
Changes to the MDX processing pipeline and schema can be easily ported to the new Contentlayer setup. If there are changes to the frontmatter fields, you can modify the document type in `contentlayer.config.ts` to include the new fields. Custom plugins can be added to the `remarkPlugins` and `rehypePlugins` properties in the `makeSource` export of `contentlayer.config.ts`.
Markdown layouts are no longer sourced automatically from the `layouts` directory. Instead, they have to be specified in the `layouts` object defined in `blog/[...slug]/page.tsx`.[^3]
To port over larger components or pages, I recommend first specificing it as a client component by using the `"use client"` directive. Once it renders correctly, you can split the interactive components (parts that rely on `use` hooks) as a client component and keep the remaining code as a server component. Consult the comprehensive Next.js [migration guide](https://nextjs.org/docs/app/building-your-application/upgrading/app-router-migration#migrating-from-pages-to-app) for more details.
## Conclusion
I hope you enjoy the new features and improvements in V2. If you have any feedback or suggestions, feel free to open an issue or reach out to me on [Twitter](https://twitter.com/timlrx).
## Support
Using the template? Support this effort by giving a star on GitHub, sharing your own blog and giving a shoutout on Twitter or be a project [sponsor](https://github.com/sponsors/timlrx).
## Licence
[MIT](https://github.com/timlrx/tailwind-nextjs-starter-blog/blob/main/LICENSE) © [Timothy Lin](https://www.timrlx.com)
[^1]: The previous version injects Preact into the production build. However, this is no longer possible as it does not support React Server Components. While overall bundle size has increased to about 85kB, most of the content can be pre-rendered on the server side, resulting in a low first contentful paint and time to interactive. Using React throughtout also leads to more consistent behavior with external libraries and components.
[^2]: This is different from Next.js App Directory layouts and are best thought of as reusable React containers.
[^3]: This takes advantage of Server Components by making it simple to specify the layout of choice in the markdown file and match against the `layouts` object which is then used to render the appropriate layout component.

View File

@@ -1,238 +0,0 @@
---
title: 'The Time Machine'
date: '2018-08-15'
tags: ['writings', 'book', 'reflection']
draft: false
summary: The Time Traveller (for so it will be convenient to speak of him) was
expounding a recondite matter to us. His pale grey eyes shone and
twinkled, and his usually pale face was flushed and animated...
---
# The Time Machine by H. G. Wells
_Title_: The Time Machine
_Author_: H. G. Wells
_Subject_: Science Fiction
_Language_: English
_Source_: [Project Gutenberg](https://www.gutenberg.org/ebooks/35)
## Introduction
The Time Traveller (for so it will be convenient to speak of him) was
expounding a recondite matter to us. His pale grey eyes shone and
twinkled, and his usually pale face was flushed and animated. The fire
burnt brightly, and the soft radiance of the incandescent lights in the
lilies of silver caught the bubbles that flashed and passed in our
glasses. Our chairs, being his patents, embraced and caressed us rather
than submitted to be sat upon, and there was that luxurious
after-dinner atmosphere, when thought runs gracefully free of the
trammels of precision. And he put it to us in this way—marking the
points with a lean forefinger—as we sat and lazily admired his
earnestness over this new paradox (as we thought it) and his fecundity.
“You must follow me carefully. I shall have to controvert one or two
ideas that are almost universally accepted. The geometry, for instance,
they taught you at school is founded on a misconception.”
“Is not that rather a large thing to expect us to begin upon?” said
Filby, an argumentative person with red hair.
“I do not mean to ask you to accept anything without reasonable ground
for it. You will soon admit as much as I need from you. You know of
course that a mathematical line, a line of thickness _nil_, has no real
existence. They taught you that? Neither has a mathematical plane.
These things are mere abstractions.”
“That is all right,” said the Psychologist.
“Nor, having only length, breadth, and thickness, can a cube have a
real existence.”
“There I object,” said Filby. “Of course a solid body may exist. All
real things—”
“So most people think. But wait a moment. Can an _instantaneous_ cube
exist?”
“Dont follow you,” said Filby.
“Can a cube that does not last for any time at all, have a real
existence?”
Filby became pensive. “Clearly,” the Time Traveller proceeded, “any
real body must have extension in _four_ directions: it must have
Length, Breadth, Thickness, and—Duration. But through a natural
infirmity of the flesh, which I will explain to you in a moment, we
incline to overlook this fact. There are really four dimensions, three
which we call the three planes of Space, and a fourth, Time. There is,
however, a tendency to draw an unreal distinction between the former
three dimensions and the latter, because it happens that our
consciousness moves intermittently in one direction along the latter
from the beginning to the end of our lives.”
“That,” said a very young man, making spasmodic efforts to relight his
cigar over the lamp; “that . . . very clear indeed.”
“Now, it is very remarkable that this is so extensively overlooked,”
continued the Time Traveller, with a slight accession of cheerfulness.
“Really this is what is meant by the Fourth Dimension, though some
people who talk about the Fourth Dimension do not know they mean it. It
is only another way of looking at Time. _There is no difference between
Time and any of the three dimensions of Space except that our
consciousness moves along it_. But some foolish people have got hold of
the wrong side of that idea. You have all heard what they have to say
about this Fourth Dimension?”
“_I_ have not,” said the Provincial Mayor.
“It is simply this. That Space, as our mathematicians have it, is
spoken of as having three dimensions, which one may call Length,
Breadth, and Thickness, and is always definable by reference to three
planes, each at right angles to the others. But some philosophical
people have been asking why _three_ dimensions particularly—why not
another direction at right angles to the other three?—and have even
tried to construct a Four-Dimensional geometry. Professor Simon Newcomb
was expounding this to the New York Mathematical Society only a month
or so ago. You know how on a flat surface, which has only two
dimensions, we can represent a figure of a three-dimensional solid, and
similarly they think that by models of three dimensions they could
represent one of four—if they could master the perspective of the
thing. See?”
“I think so,” murmured the Provincial Mayor; and, knitting his brows,
he lapsed into an introspective state, his lips moving as one who
repeats mystic words. “Yes, I think I see it now,” he said after some
time, brightening in a quite transitory manner.
“Well, I do not mind telling you I have been at work upon this geometry
of Four Dimensions for some time. Some of my results are curious. For
instance, here is a portrait of a man at eight years old, another at
fifteen, another at seventeen, another at twenty-three, and so on. All
these are evidently sections, as it were, Three-Dimensional
representations of his Four-Dimensioned being, which is a fixed and
unalterable thing.
“Scientific people,” proceeded the Time Traveller, after the pause
required for the proper assimilation of this, “know very well that Time
is only a kind of Space. Here is a popular scientific diagram, a
weather record. This line I trace with my finger shows the movement of
the barometer. Yesterday it was so high, yesterday night it fell, then
this morning it rose again, and so gently upward to here. Surely the
mercury did not trace this line in any of the dimensions of Space
generally recognised? But certainly it traced such a line, and that
line, therefore, we must conclude, was along the Time-Dimension.”
“But,” said the Medical Man, staring hard at a coal in the fire, “if
Time is really only a fourth dimension of Space, why is it, and why has
it always been, regarded as something different? And why cannot we move
in Time as we move about in the other dimensions of Space?”
The Time Traveller smiled. “Are you so sure we can move freely in
Space? Right and left we can go, backward and forward freely enough,
and men always have done so. I admit we move freely in two dimensions.
But how about up and down? Gravitation limits us there.”
“Not exactly,” said the Medical Man. “There are balloons.”
“But before the balloons, save for spasmodic jumping and the
inequalities of the surface, man had no freedom of vertical movement.”
“Still they could move a little up and down,” said the Medical Man.
“Easier, far easier down than up.”
“And you cannot move at all in Time, you cannot get away from the
present moment.”
“My dear sir, that is just where you are wrong. That is just where the
whole world has gone wrong. We are always getting away from the present
moment. Our mental existences, which are immaterial and have no
dimensions, are passing along the Time-Dimension with a uniform
velocity from the cradle to the grave. Just as we should travel _down_
if we began our existence fifty miles above the earths surface.”
“But the great difficulty is this,” interrupted the Psychologist. You
_can_ move about in all directions of Space, but you cannot move about
in Time.”
“That is the germ of my great discovery. But you are wrong to say that
we cannot move about in Time. For instance, if I am recalling an
incident very vividly I go back to the instant of its occurrence: I
become absent-minded, as you say. I jump back for a moment. Of course
we have no means of staying back for any length of Time, any more than
a savage or an animal has of staying six feet above the ground. But a
civilised man is better off than the savage in this respect. He can go
up against gravitation in a balloon, and why should he not hope that
ultimately he may be able to stop or accelerate his drift along the
Time-Dimension, or even turn about and travel the other way?”
“Oh, _this_,” began Filby, “is all—”
“Why not?” said the Time Traveller.
“Its against reason,” said Filby.
“What reason?” said the Time Traveller.
“You can show black is white by argument,” said Filby, “but you will
never convince me.”
“Possibly not,” said the Time Traveller. “But now you begin to see the
object of my investigations into the geometry of Four Dimensions. Long
ago I had a vague inkling of a machine—”
“To travel through Time!” exclaimed the Very Young Man.
“That shall travel indifferently in any direction of Space and Time, as
the driver determines.”
Filby contented himself with laughter.
“But I have experimental verification,” said the Time Traveller.
“It would be remarkably convenient for the historian,” the Psychologist
suggested. “One might travel back and verify the accepted account of
the Battle of Hastings, for instance!”
“Dont you think you would attract attention?” said the Medical Man.
“Our ancestors had no great tolerance for anachronisms.”
“One might get ones Greek from the very lips of Homer and Plato,” the
Very Young Man thought.
“In which case they would certainly plough you for the Little-go. The
German scholars have improved Greek so much.”
“Then there is the future,” said the Very Young Man. “Just think! One
might invest all ones money, leave it to accumulate at interest, and
hurry on ahead!”
“To discover a society,” said I, “erected on a strictly communistic
basis.”
“Of all the wild extravagant theories!” began the Psychologist.
“Yes, so it seemed to me, and so I never talked of it until—”
“Experimental verification!” cried I. “You are going to verify _that_?”
“The experiment!” cried Filby, who was getting brain-weary.
“Lets see your experiment anyhow,” said the Psychologist, “though its
all humbug, you know.”
The Time Traveller smiled round at us. Then, still smiling faintly, and
with his hands deep in his trousers pockets, he walked slowly out of
the room, and we heard his slippers shuffling down the long passage to
his laboratory.
The Psychologist looked at us. “I wonder what hes got?”
“Some sleight-of-hand trick or other,” said the Medical Man, and Filby
tried to tell us about a conjuror he had seen at Burslem, but before he
had finished his preface the Time Traveller came back, and Filbys
anecdote collapsed.

View File

@@ -1,6 +1,8 @@
const headerNavLinks = [ const headerNavLinks = [
{ href: '/', title: 'Home' }, { href: '/', title: 'Home' },
{ href: '/blog', title: 'Blog' }, { href: '/blog', title: 'Blog' },
// { href: 'https://git.jonb.io/', title: 'Code' },
{ href: '/likes', title: 'Likes' },
{ href: '/tags', title: 'Tags' }, { href: '/tags', title: 'Tags' },
{ href: '/projects', title: 'Projects' }, { href: '/projects', title: 'Projects' },
{ href: '/about', title: 'About' }, { href: '/about', title: 'About' },

29
data/likesData.ts Normal file
View File

@@ -0,0 +1,29 @@
interface Likes {
title: string
description: string
href?: string
imgSrc?: string
}
const likesData: Likes[] = [
{
title: 'Gitea',
description: `My git server. Where all of the development happens.`,
href: 'https://git.jonb.io/',
imgSrc: 'https://s3.jonb.io/cdn/likes/gitea.jpeg',
},
{
title: 'Castlemine Map',
description: `Minecraft map for the castlemine.jonb.io server.`,
href: 'https://castlemine-map.jonb.io/',
imgSrc: 'https://s3.jonb.io/cdn/likes/minecraft.jpeg',
},
{
title: 'Uptime Kuma',
description: `App that monitors the kingdom.`,
href: 'https://up.jonb.io/status/default',
imgSrc: 'https://s3.jonb.io/cdn/likes/uptime-kuma.jpeg',
},
]
export default likesData

View File

@@ -7,20 +7,10 @@ interface Project {
const projectsData: Project[] = [ const projectsData: Project[] = [
{ {
title: 'A Search Engine', title: 'qbit-maid',
description: `What if you could look up any information in the world? Webpages, images, videos description: `Qbittorrent torrent cleaner built in python.`,
and more. Google has many features to help you find exactly what you're looking imgSrc: 'https://s3.jonb.io/cdn/projects/qbitmaid.jpg',
for.`, href: '/blog/qbitmaid',
imgSrc: '/static/images/google.png',
href: 'https://www.google.com',
},
{
title: 'The Time Machine',
description: `Imagine being able to travel back in time or to the future. Simple turn the knob
to the desired date and press "Go". No more worrying about lost keys or
forgotten headphones with this simple yet affordable solution.`,
imgSrc: '/static/images/time-machine.jpg',
href: '/blog/the-time-machine',
}, },
] ]

View File

@@ -1,33 +0,0 @@
@article{Nash1950,
title={Equilibrium points in n-person games},
author={Nash, John},
journal={Proceedings of the national academy of sciences},
volume={36},
number={1},
pages={48--49},
year={1950},
publisher={USA}
}
@article{Nash1951,
title={Non-cooperative games},
author={Nash, John},
journal={Annals of mathematics},
pages={286--295},
year={1951},
publisher={JSTOR}
}
@Manual{Macfarlane2006,
url={https://pandoc.org/},
title={Pandoc: a universal document converter},
author={MacFarlane, John},
year={2006}
}
@book{Xie2016,
title={Bookdown: authoring books and technical documents with R markdown},
author={Xie, Yihui},
year={2016},
publisher={CRC Press}
}

View File

@@ -1,9 +1,9 @@
/** @type {import("pliny/config").PlinyConfig } */ /** @type {import("pliny/config").PlinyConfig } */
const siteMetadata = { const siteMetadata = {
title: 'Jonathan\'s Blog and Likes', title: 'JonB.io',
author: 'Jonathan Branan', author: 'Jonathan Branan',
headerTitle: 'JonB.IO', headerTitle: 'JonB.io',
description: 'Thought\'s from someone with an internet connection.', description: "Thought's from someone with an internet connection.",
language: 'en-us', language: 'en-us',
theme: 'system', // system, dark or light theme: 'system', // system, dark or light
siteUrl: 'https://jonb.io', siteUrl: 'https://jonb.io',
@@ -11,7 +11,7 @@ const siteMetadata = {
siteLogo: `${process.env.BASE_PATH || ''}/static/images/logo.png`, siteLogo: `${process.env.BASE_PATH || ''}/static/images/logo.png`,
socialBanner: `${process.env.BASE_PATH || ''}/static/images/twitter-card.png`, socialBanner: `${process.env.BASE_PATH || ''}/static/images/twitter-card.png`,
// mastodon: 'https://mastodon.social/@mastodonuser', // mastodon: 'https://mastodon.social/@mastodonuser',
email: 'jonbranan@gmail.com', email: 'jonathan.branan@fortra.com',
github: 'https://github.com/jonbranan', github: 'https://github.com/jonbranan',
// x: 'https://twitter.com/x', // x: 'https://twitter.com/x',
// twitter: 'https://twitter.com/Twitter', // twitter: 'https://twitter.com/Twitter',
@@ -20,6 +20,7 @@ const siteMetadata = {
linkedin: 'https://www.linkedin.com/in/jonathanbranan/', linkedin: 'https://www.linkedin.com/in/jonathanbranan/',
// threads: 'https://www.threads.net', // threads: 'https://www.threads.net',
// instagram: 'https://www.instagram.com', // instagram: 'https://www.instagram.com',
// medium: 'https://medium.com',
locale: 'en-US', locale: 'en-US',
// set to true if you want a navbar fixed to the top // set to true if you want a navbar fixed to the top
stickyNav: false, stickyNav: false,

View File

@@ -66,7 +66,7 @@ function createSearchIndex(allBlogs) {
) { ) {
writeFileSync( writeFileSync(
`public/${siteMetadata.search.kbarConfig.searchDocumentsPath}`, `public/${siteMetadata.search.kbarConfig.searchDocumentsPath}`,
JSON.stringify((sortPosts(allBlogs))) JSON.stringify(sortPosts(allBlogs))
) )
console.log('Local search index generated...') console.log('Local search index generated...')
} }

20
faq/deploy-with-docker.md Normal file
View File

@@ -0,0 +1,20 @@
# Deploy with Docker
Follow the [official Next.js repo docker build example and instructions](https://github.com/vercel/next.js/tree/canary/examples/with-docker) to deploy with docker. Copy the [`Dockerfile`](https://github.com/vercel/next.js/blob/canary/examples/with-docker/Dockerfile) into the root of the project and modify the `next.config.js` file:
```js
// next.config.js
module.exports = {
// ... rest of the configuration.
output: 'standalone',
}
```
You can now build the docker image and run it:
```bash
docker build -t nextjs-docker .
docker run -p 3000:3000 nextjs-docker
```
Alternatively, to use docker compose, refer to the [docker compose repo](https://github.com/vercel/next.js/tree/canary/examples/with-docker-compose).

View File

@@ -10,7 +10,7 @@ import Tag from '@/components/Tag'
import siteMetadata from '@/data/siteMetadata' import siteMetadata from '@/data/siteMetadata'
import ScrollTopAndComment from '@/components/ScrollTopAndComment' import ScrollTopAndComment from '@/components/ScrollTopAndComment'
const editUrl = (path) => `${siteMetadata.siteRepo}/blob/main/data/${path}` const editUrl = (path) => `${siteMetadata.siteRepo}/src/branch/main/data/${path}`
const discussUrl = (path) => const discussUrl = (path) =>
`https://mobile.twitter.com/search?q=${encodeURIComponent(`${siteMetadata.siteUrl}/${path}`)}` `https://mobile.twitter.com/search?q=${encodeURIComponent(`${siteMetadata.siteUrl}/${path}`)}`
@@ -100,7 +100,7 @@ export default function PostLayout({ content, authorDetails, next, prev, childre
Discuss on Twitter Discuss on Twitter
</Link> </Link>
{``} {``}
<Link href={editUrl(filePath)}>View on GitHub</Link> <Link href={editUrl(filePath)}>View on Gitea</Link>
</div> </div>
{siteMetadata.comments && ( {siteMetadata.comments && (
<div <div

View File

@@ -10,7 +10,7 @@ const ContentSecurityPolicy = `
script-src 'self' 'unsafe-eval' 'unsafe-inline' giscus.app analytics.umami.is; script-src 'self' 'unsafe-eval' 'unsafe-inline' giscus.app analytics.umami.is;
style-src 'self' 'unsafe-inline'; style-src 'self' 'unsafe-inline';
img-src * blob: data:; img-src * blob: data:;
media-src *.s3.amazonaws.com; media-src s3.jonb.io*;
connect-src *; connect-src *;
font-src 'self'; font-src 'self';
frame-src giscus.app frame-src giscus.app
@@ -77,6 +77,12 @@ module.exports = () => {
protocol: 'https', protocol: 'https',
hostname: 'picsum.photos', hostname: 'picsum.photos',
}, },
{
protocol: 'https',
hostname: 's3.jonb.io',
port: '',
pathname: '/cdn/**',
},
], ],
unoptimized, unoptimized,
}, },

View File

@@ -1,6 +1,6 @@
{ {
"name": "tailwind-nextjs-starter-blog", "name": "tailwind-nextjs-starter-blog",
"version": "2.2.0", "version": "2.3.0",
"private": true, "private": true,
"scripts": { "scripts": {
"start": "next dev", "start": "next dev",
@@ -12,29 +12,30 @@
"prepare": "husky" "prepare": "husky"
}, },
"dependencies": { "dependencies": {
"@headlessui/react": "1.7.19", "@headlessui/react": "2.2.0",
"@next/bundle-analyzer": "14.2.3", "@next/bundle-analyzer": "15.0.2",
"@tailwindcss/forms": "^0.5.7", "@tailwindcss/forms": "^0.5.9",
"@tailwindcss/typography": "^0.5.12", "@tailwindcss/typography": "^0.5.15",
"autoprefixer": "^10.4.13", "autoprefixer": "^10.4.13",
"body-scroll-lock": "^4.0.0-beta.0", "body-scroll-lock": "^4.0.0-beta.0",
"contentlayer2": "0.5.1", "contentlayer2": "0.5.3",
"esbuild": "0.20.2", "esbuild": "0.20.2",
"github-slugger": "^2.0.0", "github-slugger": "^2.0.0",
"gray-matter": "^4.0.2", "gray-matter": "^4.0.2",
"hast-util-from-html-isomorphic": "^2.0.0", "hast-util-from-html-isomorphic": "^2.0.0",
"image-size": "1.0.0", "image-size": "1.0.0",
"next": "14.2.3", "next": "15.0.2",
"next-contentlayer2": "0.5.1", "next-contentlayer2": "0.5.3",
"next-themes": "^0.3.0", "next-themes": "^0.3.0",
"pliny": "0.2.1", "pliny": "0.4.0",
"postcss": "^8.4.24", "postcss": "^8.4.24",
"react": "18.3.1", "react": "rc",
"react-dom": "18.3.1", "react-dom": "rc",
"reading-time": "1.5.0", "reading-time": "1.5.0",
"rehype-autolink-headings": "^7.1.0", "rehype-autolink-headings": "^7.1.0",
"rehype-citation": "^2.0.0", "rehype-citation": "^2.0.0",
"rehype-katex": "^7.0.0", "rehype-katex": "^7.0.0",
"rehype-katex-notranslate": "^1.1.4",
"rehype-preset-minify": "7.0.0", "rehype-preset-minify": "7.0.0",
"rehype-prism-plus": "^2.0.0", "rehype-prism-plus": "^2.0.0",
"rehype-slug": "^6.0.0", "rehype-slug": "^6.0.0",
@@ -42,20 +43,20 @@
"remark-gfm": "^4.0.0", "remark-gfm": "^4.0.0",
"remark-github-blockquote-alert": "^1.2.1", "remark-github-blockquote-alert": "^1.2.1",
"remark-math": "^6.0.0", "remark-math": "^6.0.0",
"tailwindcss": "^3.4.3", "tailwindcss": "^3.4.14",
"unist-util-visit": "^5.0.0" "unist-util-visit": "^5.0.0"
}, },
"devDependencies": { "devDependencies": {
"@svgr/webpack": "^8.0.1", "@svgr/webpack": "^8.0.1",
"@types/mdx": "^2.0.12", "@types/mdx": "^2.0.12",
"@types/react": "^18.2.73", "@types/react": "^18.2.73",
"@typescript-eslint/eslint-plugin": "^6.1.0", "@typescript-eslint/eslint-plugin": "^8.12.0",
"@typescript-eslint/parser": "^6.1.0", "@typescript-eslint/parser": "^8.12.0",
"cross-env": "^7.0.3", "cross-env": "^7.0.3",
"eslint": "^8.45.0", "eslint": "^9.14.0",
"eslint-config-next": "14.2.3", "eslint-config-next": "15.0.2",
"eslint-config-prettier": "^8.8.0", "eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.0.0", "eslint-plugin-prettier": "^5.2.0",
"husky": "^9.0.0", "husky": "^9.0.0",
"lint-staged": "^13.0.0", "lint-staged": "^13.0.0",
"prettier": "^3.0.0", "prettier": "^3.0.0",

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
<msapplication>
<tile>
<square150x150logo src="/mstile-150x150.png"/>
<TileColor>#000000</TileColor>
</tile>
</msapplication>
</browserconfig>

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 5.3 MiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 689 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 256 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 104 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 419 KiB

View File

@@ -3,10 +3,12 @@ import path from 'path'
import { slug } from 'github-slugger' import { slug } from 'github-slugger'
import { escape } from 'pliny/utils/htmlEscaper.js' import { escape } from 'pliny/utils/htmlEscaper.js'
import siteMetadata from '../data/siteMetadata.js' import siteMetadata from '../data/siteMetadata.js'
import tagData from '../app/tag-data.json' with { type: 'json' } import tagData from '../app/tag-data.json' assert { type: 'json' }
import { allBlogs } from '../.contentlayer/generated/index.mjs' import { allBlogs } from '../.contentlayer/generated/index.mjs'
import { sortPosts } from 'pliny/utils/contentlayer.js' import { sortPosts } from 'pliny/utils/contentlayer.js'
const outputFolder = process.env.EXPORT ? 'out' : 'public'
const generateRssItem = (config, post) => ` const generateRssItem = (config, post) => `
<item> <item>
<guid>${config.siteUrl}/blog/${post.slug}</guid> <guid>${config.siteUrl}/blog/${post.slug}</guid>
@@ -40,14 +42,14 @@ async function generateRSS(config, allBlogs, page = 'feed.xml') {
// RSS for blog post // RSS for blog post
if (publishPosts.length > 0) { if (publishPosts.length > 0) {
const rss = generateRss(config, sortPosts(publishPosts)) const rss = generateRss(config, sortPosts(publishPosts))
writeFileSync(`./public/${page}`, rss) writeFileSync(`./${outputFolder}/${page}`, rss)
} }
if (publishPosts.length > 0) { if (publishPosts.length > 0) {
for (const tag of Object.keys(tagData)) { for (const tag of Object.keys(tagData)) {
const filteredPosts = allBlogs.filter((post) => post.tags.map((t) => slug(t)).includes(tag)) const filteredPosts = allBlogs.filter((post) => post.tags.map((t) => slug(t)).includes(tag))
const rss = generateRss(config, filteredPosts, `tags/${tag}/${page}`) const rss = generateRss(config, filteredPosts, `tags/${tag}/${page}`)
const rssPath = path.join('public', 'tags', tag) const rssPath = path.join(outputFolder, 'tags', tag)
mkdirSync(rssPath, { recursive: true }) mkdirSync(rssPath, { recursive: true })
writeFileSync(path.join(rssPath, page), rss) writeFileSync(path.join(rssPath, page), rss)
} }

View File

@@ -25,7 +25,7 @@ module.exports = {
sans: ['var(--font-space-grotesk)', ...fontFamily.sans], sans: ['var(--font-space-grotesk)', ...fontFamily.sans],
}, },
colors: { colors: {
primary: colors.pink, primary: colors.cyan,
gray: colors.gray, gray: colors.gray,
}, },
zIndex: { zIndex: {

4714
yarn.lock

File diff suppressed because it is too large Load Diff