Our Gitcoin Grants Beta Round is now live! Please support us in building an on-chain and open-source blogging community by contributing to the "Web3 Open Source Software" round. If this is your first time using it, you can also view the tutorial here.
Apologies for missing last week's summary due to a hectic development schedule. This biweekly summary encompasses the period from April 18th to May 2nd, resulting in more content than usual.
Fresh out the oven 🔥#
Comment Management#
🫶 Dive into seamless engagement by accessing the Dashboard -> Comments
Easily manage comments in the dashboard by viewing, liking, and replying to them all in one place.
Code changes: @diygod 3351a82
Umami Cloud Analytics Integration#
Besides Google Analytics, we now offer support for Umami Cloud Analytics. To enable it, enter your Umami Cloud Analysis ID in Dashboard -> Settings
, and the data collection will commence.
Code changes: @kev1n8w-3605 #476
Greenfield Integration#
We are excited to announce our integration with BNB Greenfield, enhancing data security and ownership by utilizing decentralized open-source storage chains like Greenfield.
From now on, newly published or modified posts and site configs will be simultaneously uploaded to both IPFS and Greenfield. The addresses for these uploads can be found at the bottom of each page.
Code changes: @diygod @candinya eede2c7
Batch Post Actions#
We've introduced batch actions support in the post list under Dashboard -> Posts/Pages
, making it easier to convert and delete multiple posts simultaneously.
Code changes: @candinya #431
Enhanced Table of Contents Formatting#
Bold Italic Strikethrough #
We now offer advanced formatting options in the table of contents, including bold, italic, strikethrough, mathematical expressions, and more for a visually appealing presentation.
Code changes: @birdgg #430 & @iwsr-657 #382
Enhanced RSS Feeds#
While email subscriptions are a viable option, we recommend using RSS feeds for greater control and flexibility. We currently support the following RSS feeds:
-
The Community
-
Individual Blog
By default, these feed addresses are in JSON Feed format. To use the traditional RSS format, simply add ?format=xml
to the URL.
Code changes: d1a6c22 & 9beab8c
Undo Likes#
To undo a like, simply click the like button again. This will display an option to revert your previous action. Keep in mind that both likes and undo likes will remain recorded on the blockchain.
Code changes: @candinya #429
Performance Optimization#
It has been a while since the last performance optimization was specifically carried out, resulting in a decline in xLog's performance. To address this issue, we have implemented several optimizations this week.
However, these improvements are not sufficient, and we will continue to work on enhancing performance next week.
Code changes:
- @innei-4525 refactor: codemirror editor #366
- @daidr feat: debounced editor preview #372
- @innei-4525 refactor: reduce rerendering in editor edit #389
- @daidr feat: memorized markdown components #411
- @diygod feat: disable refetchOnWindowFocus for home feed 65ec562
- @innei-4525 feat: virtual list support for infinite list #439
Streamlined Dependencies#
We have eliminated certain non-essential dependencies to enhance performance and simplify maintenance.
Code changes:
- @diygod feat: remove dependency Unidata #473
- @enpitsulin chore: remove axios #469
- @diygod chore: remove unocss edaa890
- @diygod remove vitest d28faae
Enhanced Accessibility#
We've made significant improvements to xLog's accessibility, greatly benefiting specific user groups.
Code changes:
- @doma-6565 perf(a11y): add focus-visible outline to BlockchainInfo #448
- @doma-6565 perf(a11y): add focus outline to SiteHeader buttons and links #449
- @doma-6565 perf(a11y): add focus-visible outline to posts list #481
Additional Updates#
- @lv777: Added page URL hash support (#364)
- @daidr, @diygod: Implemented confirmation for post/page deletion (#367, b1a880c)
- @suemor: Disabled submit button when comment input box is empty (#369)
- @sxzz: Removed markdown for summary (#380)
- @diygod: Optimized Twitter sharing copy (d2aeec9)
- @innei-4525: Fixed XSS vulnerability (#384, 9f0ef03, 8aefa78, c7bc118)
- @diygod: Ignored WalletDisconnectEvent (5e5b6d1)
- @diygod: Disabled SingleDollarTextMath (46013a5)
- @diygod: Added iTunes RSS support (aa7e0c3)
- @diygod: Used base64 to load custom CSS (748f0b1)
- @xinbao: Added Xiaoyuzhou support (#402)
- @birdgg: Used Pangu to add padding between Chinese and English text (#413)
- @diygod: Preserved white space and line breaks in description (c8a2cd8)
- @innei-4525: Implemented FAB container and "Back to Top" FAB button(#415)
- @diygod: Enabled more HTML restrictions in comments(347e10e)
- @diygod: Filtered out already followed users before following all(cc01209)
- @diygod: Added subdomain check(16ba0c5)
- @candinya: Added support for returning back home in dashboard(#435)
- @runjuu: Made notification modal compatible with dark mode(#446)
- @diygod: Added tip stats(0469a2c)
- @enpitsulin: Registered j/tsx syntax highlighting(#455)
- @birdgg: Filtered duplicate tags in editor(#457)
- @birdgg: Replaced image http with https(207479b)
Community Projects#
We are delighted to witness various community projects enhancing xLog's capabilities.
xLog custom css debugger#
A convenient chrome extension for debugging custom CSS in xLog
Introduction post:
重构了 xLog custom css debugger
写了一个 chrome extension 尝试解决 xLog custom css 调试困难
GitHub:
https://github.com/birdgg/xLog-custom-css-debugger
Made by @birdgg
xLog card#
Introduction post:
几行代码把仪表盘放在站点主页
GitHub:
https://github.com/Alex-Programer
Made by @alex-programer
Stay Connected with xLog#
If you have any suggestions or expectations, or just want to have a casual conversation, feel free to join our community or leave a comment below. Cheers! 🍻