Skip to content

Feature Design English

luoyunchong edited this page Oct 31, 2026 · 1 revision

English | 简体中文

Core authorization module

  • User information: email, unique username, nickname, avatar, groups, activation status, phone number, admin status, and profile signature
    • Sign up / sign in
    • Upload avatar
    • Change credential
    • Edit basic user information
    • Configure groups
    • Link third-party accounts / sign in
  • Account linking: QQ and GitHub quick sign-in.
  • Group information: static groups cannot be deleted and their codes cannot be changed; names can be edited.
    • Create, delete, and edit groups
    • Configure group permissions
  • File management
    • Upload local files
    • Qiniu Cloud storage
    • File deduplication and instant upload
  • System logs: request method and path, HTTP status, time, user nickname and ID, accessed permission, and log message
    • Record system requests

CMS administration

  • Tag management: name, image, enabled status, ordering, article count, and follower count.
    • Create, delete, and edit tags
    • List and disable tags
  • Article management:
    • Review or block articles
  • Comment management
    • Approve or block comments in the admin interface
    • Administrators can delete comments
  • Dictionary management
    • Manage dictionary categories
    • Dictionary management, such as article types (original, reposted, or translated)

CMS user-facing features

  • Category management: select one category when publishing an article.
    • Create, delete, and edit categories (article count, image, name, order)
    • List categories; users can view and edit only their own categories
  • Tags: count articles and followers for each tag
    • Tag list
    • Infinite loading
    • Newest / most popular, with fuzzy name search
    • Tags I follow
  • Articles
    • Markdown support; create, delete, and edit your own articles, updating the category article count
    • Infinite scrolling and article filtering by tag
    • Like articles
    • Article detail page
      • Table-of-contents navigation pinned on scroll, plus word count and estimated reading time;
      • Author profile: avatar, nickname, signature, and article count;
      • Display article type: original, reposted, or translated
      • Related articles
      • Recommended articles
  • Comments
    • Comment on articles, with hyperlinks and emoji
    • Delete your own comments
    • Like comments
    • Reply to comments
  • Following
    • Follow or unfollow users
    • Follow or unfollow tags

Profile page

  • Display user-created categories
  • Latest and most popular articles
  • Followed users and tags
  • Followers
  • Profile details: edit personal information and bind an email address

More

  • Notifications for events such as article likes, article comments, comment likes, and replies.

Mind map

image

Groups

There are three types:

id  name        info
1	Admin	    System administrator
2	CmsAdmin	Content administrator
3	User	    Regular user

Audit log

Most tables have the following eight fields to record row changes. is_deleted implements soft deletion: deleting a row sets it to true. Entity classes inherit FullAduitEntity to obtain these fields; the design follows ABP. FullAduitEntity is generic and uses a long ID by default; FullAduitEntity<Guid> changes the primary-key type. The LinUser primary key defaults to long, so create_user_id, delete_user_id, and update_user_id use the same type.


id	                bigint
create_user_id  	bigint
create_time	        datetime
is_deleted	        bit
delete_user_id  	bigint
delete_time	        datetime
update_user_id	    bigint
update_time	        datetime


Lin CMS repositories

Clone this wiki locally