Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
83 commits
Select commit Hold shift + click to select a range
bf1279c
fix url: rm www
rushatgabhane Jan 30, 2026
b2a7c1b
Merge branch 'chai' into chai-release-2
rushatgabhane Jan 30, 2026
8be157d
add illustrations
rushatgabhane Feb 2, 2026
6f30cb7
add getting started and topics cards to homepage
rushatgabhane Feb 2, 2026
eaf1df3
add non-root page condition wrapper
rushatgabhane Feb 2, 2026
60656c2
add topic-card component with icon title and links
rushatgabhane Feb 2, 2026
f86f0ff
revamp homepage: add hero, search and cards
rushatgabhane Feb 2, 2026
03210bf
update sidebar search to include /search
rushatgabhane Feb 2, 2026
d58d2cc
set homepage h1 font-size to 2.5em
rushatgabhane Feb 2, 2026
6c29894
style: add fonts and responsive hero and search ui
rushatgabhane Feb 2, 2026
1363818
remove all sidebar search styles
rushatgabhane Feb 2, 2026
60a73a3
add border-radius 8px
rushatgabhane Feb 2, 2026
1626741
refactor search to page query and update api url
rushatgabhane Feb 2, 2026
3877fef
replace initsearch with initsearchpage
rushatgabhane Feb 2, 2026
a8c14e4
add search page ui with form and results container
rushatgabhane Feb 2, 2026
3e84f1c
remove the sidebar search panel
rushatgabhane Feb 2, 2026
fb21d36
add back button for search pages
rushatgabhane Feb 2, 2026
dfbd3cd
set y-axis to window.scrollY
rushatgabhane Feb 2, 2026
c376b2d
add autofocus to search input
rushatgabhane Feb 2, 2026
c69b0b2
replace search loading with skeleton results
rushatgabhane Feb 2, 2026
5f4aa6d
add lhn search form with optional platform param
rushatgabhane Feb 2, 2026
323c5a7
set padding to 44px 44px 40px 44px
rushatgabhane Feb 2, 2026
2c6a06f
hide by default, show at tablet breakpoint
rushatgabhane Feb 2, 2026
3df21ec
add skeleton loading ui for search results
rushatgabhane Feb 2, 2026
05e81fd
Merge branch 'main' into chai-release-2
rushatgabhane Feb 2, 2026
2c822e2
make responsive
rushatgabhane Feb 2, 2026
ea7b4dd
add z-index: 1
rushatgabhane Feb 2, 2026
b07b7a8
undo .dev
rushatgabhane Feb 2, 2026
28e0dc9
Update docs/assets/js/main.js
rushatgabhane Feb 2, 2026
29e886c
better names
rushatgabhane Feb 2, 2026
6327488
better names
rushatgabhane Feb 2, 2026
96dc56d
Merge branch 'chai-release-2' of github.com:rushatgabhane/exfy into c…
rushatgabhane Feb 2, 2026
2d50026
run prettier
rushatgabhane Feb 2, 2026
d2da9c4
add spell
rushatgabhane Feb 2, 2026
a7b910d
add spell
rushatgabhane Feb 2, 2026
1831c48
compress svgs
rushatgabhane Feb 2, 2026
523b62c
compress svgs
rushatgabhane Feb 2, 2026
43076b0
set focus to input
rushatgabhane Feb 3, 2026
0e41216
remove autofocus from search input
rushatgabhane Feb 3, 2026
0998a6a
add concierge ai thinking and response templates
rushatgabhane Feb 3, 2026
4abe818
add responsive search columns and ai panel styling
rushatgabhane Feb 3, 2026
cd0088c
add feature stub
rushatgabhane Feb 3, 2026
9969a80
remove inline svg block
rushatgabhane Feb 3, 2026
3398d2e
update search to dev api and add ask ai url
rushatgabhane Feb 3, 2026
dd890c8
call askhelpsiteai with query
rushatgabhane Feb 3, 2026
8be5323
rename clearSearchPage to clearSearchInput; add ai
rushatgabhane Feb 3, 2026
3d2b044
switch click handler to clearsearchinput
rushatgabhane Feb 3, 2026
32e3272
wrap results in two-column layout with ai panel
rushatgabhane Feb 3, 2026
e23cd9c
use for loop
rushatgabhane Feb 3, 2026
40ce93c
prevent ui jump
rushatgabhane Feb 3, 2026
fa12791
add x-circle icon
rushatgabhane Feb 3, 2026
e4b9d7a
add x-circle icon
rushatgabhane Feb 3, 2026
90a7a2b
hide book img on tablet
rushatgabhane Feb 3, 2026
7b986f8
compress svg
rushatgabhane Feb 3, 2026
9733718
compress svg
rushatgabhane Feb 3, 2026
f94db37
overflow x hidden
rushatgabhane Feb 3, 2026
41a672e
fix topic heading style
rushatgabhane Feb 5, 2026
97d5b7e
fix margin: icon
rushatgabhane Feb 5, 2026
96df94d
fix merge
rushatgabhane Feb 6, 2026
261fd17
add conditional mobile-lhn on search pages
rushatgabhane Feb 6, 2026
0e2498d
preserve mobile lhn layout on tablet breakpoint
rushatgabhane Feb 6, 2026
d164fe9
add color: var(--color-text) twice
rushatgabhane Feb 6, 2026
55a9739
add ai-panel-loading class to ai-panel
rushatgabhane Feb 6, 2026
9684583
set ai-panel-loading min-height 300px tablet 676px
rushatgabhane Feb 6, 2026
7e7087b
remove sticky and raise min-height to 320px
rushatgabhane Feb 6, 2026
daeb2c1
style: update button colors and gradient overlay
rushatgabhane Feb 6, 2026
2fae9b1
add bounce animation and rotate ai-show-more
rushatgabhane Feb 6, 2026
6b4f28e
add has-overflow to after selector
rushatgabhane Feb 6, 2026
f17dac0
set bounce duration to 1s
rushatgabhane Feb 6, 2026
97bf5c8
simplify keyframes remove 50% and bump 25% to 50%
rushatgabhane Feb 6, 2026
fc56a32
add light and dark concierge bot illustrations
rushatgabhane Feb 6, 2026
17d6bc1
add dark-mode styles for ai-bot
rushatgabhane Feb 6, 2026
9826c4a
add complex svg logo with multiple colored paths
rushatgabhane Feb 6, 2026
5fb7d1f
update widths: 40%->60%, 70%->90%
rushatgabhane Feb 6, 2026
805f07e
add has-overflow class to rendered content
rushatgabhane Feb 6, 2026
dad259d
fix max height on mobile
rushatgabhane Feb 6, 2026
d5ee529
use colored loading icon
rushatgabhane Feb 6, 2026
45dd3af
remove large inline svg asset
rushatgabhane Feb 6, 2026
2a200cf
use 102 x 102 size
rushatgabhane Feb 6, 2026
a8d500c
use better icon
rushatgabhane Feb 6, 2026
401d37a
compress svg
rushatgabhane Feb 6, 2026
362a36e
compress svg
rushatgabhane Feb 6, 2026
f5c6fbf
feat:compress svg in docs also
rushatgabhane Feb 6, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions cspell.json
Original file line number Diff line number Diff line change
Expand Up @@ -106,6 +106,9 @@
"Bushwick",
"BYOC",
"capitalone",
"cardreader",
"commentbubbles",
"creditcards",
"CAROOT",
"Carta",
"cacerts",
Expand Down Expand Up @@ -705,6 +708,7 @@
"Transpiles",
"trivago",
"trustcacerts",
"twocards",
"Typeform",
"uatp",
"UATP",
Expand Down
117 changes: 117 additions & 0 deletions docs/_data/_routes.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,123 @@ home:
title: Welcome to ExpensifyHelp!
description: Find answers using the search bar or click on the version of Expensify you're using to access the relevant resources.

# "Getting Started" and "Topics" cards shown on the homepage
getting-started:
- title: For employees
icon: /assets/images/simple-illustration__approval-members.svg
description: Join a workspace, submit expenses and enable 2FA.
href: /articles/new-expensify/getting-started/Join-your-company's-workspace

- title: For admins
icon: /assets/images/simple-illustration__company-share-alt.svg
description: Create a workspace, connect accounting and configure approvals.
href: /articles/new-expensify/getting-started/Create-a-company-workspace

- title: With payments
icon: /assets/images/simple-illustration__cardreader-alt2-alt.svg
description: Link a business bank account to enable reimbursements and the Expensify Card.
href: /articles/new-expensify/wallet-and-payments/Connect-a-Business-Bank-Account

topics:
- title: Expense management
icon: /assets/images/simple-illustration__money-receipt.svg
hub: /new-expensify/hubs/reports-and-expenses/
links:
- label: Create expenses
href: /articles/new-expensify/reports-and-expenses/Create-an-Expense
- label: Submit expense reports
href: /articles/new-expensify/reports-and-expenses/Create-and-Submit-Reports
- label: Pay expenses
href: /articles/new-expensify/wallet-and-payments/Pay-Expenses

- title: Expensify Card
icon: /assets/images/simple-illustration__creditcards--green.svg
hub: /new-expensify/hubs/expensify-card/
links:
- label: Enable Expensify Cards
href: /articles/new-expensify/expensify-card/Set-Up-and-Manage-the-Expensify-Card
- label: Activate and use cards
href: /articles/new-expensify/expensify-card/Cardholder-Settings-and-Features
- label: Reconcile transactions
href: /articles/new-expensify/expensify-card/View-and-Reconcile-Expensify-Card-Expenses

- title: Company cards
icon: /assets/images/simple-illustration__twocards-horizontal.svg
hub: /new-expensify/hubs/connect-credit-cards/
links:
- label: Connect commercial feed
href: /articles/new-expensify/connect-credit-cards/Commercial-feeds
- label: Connect directly
href: /articles/new-expensify/connect-credit-cards/Direct-feeds
- label: Map cards to GL
href: /articles/new-expensify/connect-credit-cards/Company-Card-Settings

- title: Accounting
icon: /assets/images/simple-illustration__monitor-remotesync.svg
hub: /new-expensify/hubs/connections/
links:
- label: Connect to NetSuite
href: /articles/new-expensify/connections/netsuite/Connect-To-NetSuite
- label: Connect to QuickBooks Online
href: /articles/new-expensify/connections/quickbooks-online/Connect-to-QuickBooks-Online
- label: Connect to Xero
href: /articles/new-expensify/connections/xero/Connect-to-Xero

- title: Workflows
icon: /assets/images/workflow.svg
hub: /new-expensify/hubs/workspaces/
links:
- label: Configure rules
href: /articles/new-expensify/workspaces/Workspace-Rules
- label: Automation and approvals
href: /articles/new-expensify/workspaces/Workspace-Workflows
- label: Prohibited expense detection
href: /articles/new-expensify/workspaces/Prohibited-Expense-Rule

- title: Back-office
icon: /assets/images/simple-illustration__buildings.svg
hub: /new-expensify/hubs/settings/
links:
- label: Reporting
href: /articles/new-expensify/reports-and-expenses/Getting-Started-with-the-Reports-Page
- label: Configure taxes
href: /articles/new-expensify/workspaces/Track-Taxes
- label: Nominate vacation delegate
href: /articles/new-expensify/settings/Delegate-when-out-of-office

- title: Travel
icon: /assets/images/simple-illustration__luggage.svg
hub: /travel/hubs/
links:
- label: Use Expensify Travel
href: /travel/hubs/getting-started/
- label: Set up Per Diems
href: /articles/new-expensify/workspaces/Configure-Per-Diem-in-a-workspace
- label: Configure mileage
href: /articles/new-expensify/workspaces/Set-distance-rates

- title: Chat
icon: /assets/images/simple-illustration__commentbubbles-alt.svg
hub: /new-expensify/hubs/chat/
links:
- label: Chat with people
href: /articles/new-expensify/chat/Create-a-New-Chat
- label: Chat basics
href: /articles/new-expensify/chat/Chat-Features-and-Moderation-Tools
- label: Organize your Inbox
href: /articles/new-expensify/chat/Prioritize-and-Pin-Chats

- title: Reporting
icon: /assets/images/envelope-receipt.svg
hub: /new-expensify/hubs/reports-and-expenses/
links:
- label: Search and filter
href: /articles/new-expensify/reports-and-expenses/Using-Reports-in-New-Expensify
- label: Export data
href: /articles/new-expensify/reports-and-expenses/Search-and-Download-Expenses
- label: Reconciliation
href: /articles/new-expensify/reports-and-expenses/Statement-Matching-and-Reconciliation

platforms:
- href: expensify-classic
title: Expensify Classic
Expand Down
31 changes: 30 additions & 1 deletion docs/_includes/search-result-item.html
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,11 @@
</template>

<template id="search-loading-template">
<div class="search-loading">Searching...</div>
<div class="skeleton-search-results">
{% for i in (1..10) %}
<div class="skeleton-item"><div class="skeleton-title"></div><div class="skeleton-description"></div></div>
{% endfor %}
</div>
</template>

<template id="search-no-results-template">
Expand All @@ -19,3 +23,28 @@
<template id="search-error-template">
<div class="search-error">Something went wrong. Please try again.</div>
</template>

<template id="ai-thinking-template">
<div class="ai-panel ai-panel-loading">
<div class="ai-header">
<img src="/assets/images/concierge-avatar.svg" class="ai-avatar" />
<span class="ai-title">Concierge AI is thinking...</span>
</div>
<div class="ai-illustration">
<img src="/assets/images/simple-illustration__concierge-bot.svg" />
</div>
</div>
</template>

<template id="ai-response-template">
<div class="ai-panel">
<div class="ai-header">
<img src="/assets/images/concierge-avatar.svg" class="ai-avatar" />
<span class="ai-title">Concierge AI summary:</span>
</div>
<div class="ai-content"></div>
<button class="ai-show-more hidden">
Show more <img src="/assets/images/down.svg" class="base-icon" />
</button>
</div>
</template>
8 changes: 7 additions & 1 deletion docs/_includes/search-toggle.html
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
{% unless page.url == "/" or page.url contains "/search" %}
<div class="search-icon">
<a onclick="openSidebar()" id="toggle-search-open">
{% if page.url contains "expensify-classic" %}
<a href="/search?platform=expensify-classic" id="toggle-search-open">
{% else %}
<a href="/search" id="toggle-search-open">
{% endif %}
<img src="/assets/images/search.svg" class="base-icon" />
</a>
</div>
{% endunless %}
20 changes: 0 additions & 20 deletions docs/_includes/sidebar-search.html

This file was deleted.

11 changes: 11 additions & 0 deletions docs/_includes/topic-card.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{% assign topic = include.topic %}
<div class="topic-card">
<img class="icon" src="{{ topic.icon }}" alt="{{ topic.title }}" />
<h3 class="title with-margin">{{ topic.title }}</h3>
<ul class="topic-links">
{% for link in topic.links %}
<li><a href="{{ link.href }}">{{ link.label }}</a></li>
{% endfor %}
<li><a href="{{ topic.hub }}">More</a></li>
</ul>
</div>
22 changes: 18 additions & 4 deletions docs/_layouts/default.html
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@
<!-- SEO tags -->
{% seo %}
</head>
<body>
<body{% if page.url contains "/search" %} class="mobile-lhn"{% endif %}>
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-TQBQW7CR" height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
Expand All @@ -48,13 +48,27 @@
</div>
</div>

<!-- Sidebar Search sections -->
{% include sidebar-search.html id="sidebar-layer" %}
{% include search-result-item.html %}

<!-- LHN content (Main navigation tree or Article TOC) -->
<div id="lhn-content">
{% if page.url == "/" or page.url contains "/hubs/" %}
{% unless page.url == "/" or page.url contains "/search" %}
<form class="lhn-search-form" action="/search">
{% if page.url contains "expensify-classic" %}
<input type="hidden" name="platform" value="expensify-classic" />
{% endif %}
<label class="search-input-wrapper lhn-search-input-wrapper" for="lhn-search-input">
<input type="text" id="lhn-search-input" name="q" class="search-input" required autocomplete="off" />
<span class="search-label">Search for something...</span>
</label>
</form>
{% endunless %}
{% if page.url contains "/search" %}
<div id="back-button" class="icon-with-link">
<img src="/assets/images/back-left.svg" class="base-icon"></img>
<div class="link">Back</div>
</div>
{% elsif page.url == "/" or page.url contains "/hubs/" %}
{% include lhn-template.html %}
{% else %}
<div id="back-button" class="icon-with-link">
Expand Down
Loading
Loading