Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
49 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
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
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
6 changes: 5 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 Down
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>
20 changes: 17 additions & 3 deletions docs/_layouts/default.html
Original file line number Diff line number Diff line change
Expand Up @@ -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