TDesk

TDesk technical documentation

Customer portal

Customize the public help center, account pages, knowledge base, and ticket views.

Find the right files

FeatureHTMLStyles and behavior
Home and searchindex.htmlhome.css, home-refinements.css, home-motion.css; home.js owns the guide catalog, search, and dialogs.
Shared inner pagesAll pages except homeinner-pages.css and inner-pages.js handle common layout and navigation.
Knowledge base and blogknowledge-base.html, knowledge-base-category.html, blog.htmlcontent-pages.css and content-pages.js cover filters and query-driven views.
Login, profile, and contactlogin.html, signup.html, profile.html, contact.htmlaccount-pages.css, account-pages.js, password-toggle.js.
Ticket viewsmy-tickets.html, view-tickets.htmlticket-pages.js connects the sample views; ticket-editor.js initializes Jodit and syncs its textarea.

CSS lives in front/assets/css/. The page scripts live in front/assets/js/front/.

Change the brand and content

  1. Change the logo text in the header and footer of each page, or extract those blocks into layout partials in your application.
  2. Replace assets/images/favicon.png, page titles, and page descriptions.
  3. Update the guide catalog in home.js when changing the home search. Also update the relevant knowledge base page so search and browse show the same content.
  4. Keep headings, labels, landmark roles, and dialog IDs aligned with their trigger buttons.
/* project.css — include after the page styles */
:root {
  --td-blue: #2855e8;
  --td-ink: #172b4d;
  --td-mist: #f0f4ff;
  --td-mint: #c5eedc;
}

Add the link after the existing page styles in each HTML head. Update matching tokens in the admin when the branding should carry over.

Connect the customer ticket flow

The demo detail route is view-tickets.html?ticket=4215. Keep ticket until replacing the page script or migrate all links together. Replace the fixture reads in ticket-pages.js and the current demo submit handler when adding a real endpoint.

For rich replies, synchronize Jodit before reading #ticket-reply. Render only server-sanitized rich text. Use plain escaped text when rich formatting is not needed. The file picker is a UI example and does not upload to a server.

All 11 portal pages

PagePurpose
index.htmlTDesk — A little clarity. A lot of help.
about-us.htmlAbout us
blog.htmlBlog
contact.htmlTDesk | Contact support
knowledge-base-category.htmlHelp guides
knowledge-base.htmlKnowledge base
login.htmlTDesk | Sign in
my-tickets.html My tickets
profile.htmlTDesk | My profile
signup.htmlTDesk | Create an account
view-tickets.html Ticket #4215