Skip to content
This repository was archived by the owner on Apr 28, 2026. It is now read-only.

Commit 069c724

Browse files
carlosabadiatgberkeleyAlek99
authored
ENG-9201: Customer pages update (#1792)
* init * updates * bump and update actions * bump * bump * update the palette * followups --------- Co-authored-by: Tom Gotsman <64492814+tgberkeley@users.noreply.github.com> Co-authored-by: Alek Petuskey <alekpetuskey@gmail.com>
1 parent 2d9739e commit 069c724

32 files changed

Lines changed: 1012 additions & 782 deletions

.github/workflows/codespell.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,6 @@ jobs:
1313
runs-on: ubuntu-latest
1414
steps:
1515
- name: Checkout
16-
uses: actions/checkout@v3
16+
uses: actions/checkout@v6
1717
- name: Codespell
1818
uses: codespell-project/actions-codespell@v2

.github/workflows/deploy-dev.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ jobs:
2424
runs-on: ubuntu-latest
2525
steps:
2626
- name: Checkout code
27-
uses: actions/checkout@v3
27+
uses: actions/checkout@v6
2828
with:
2929
submodules: recursive
3030

3131
- name: Install the latest version of uv
32-
uses: astral-sh/setup-uv@v6
32+
uses: astral-sh/setup-uv@v7
3333
with:
3434
python-version: "3.12"
3535
activate-environment: true

.github/workflows/deploy-prd.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,12 @@ jobs:
2222
environment: production
2323
steps:
2424
- name: Checkout code
25-
uses: actions/checkout@v3
25+
uses: actions/checkout@v6
2626
with:
2727
submodules: recursive
2828

2929
- name: Install the latest version of uv
30-
uses: astral-sh/setup-uv@v6
30+
uses: astral-sh/setup-uv@v7
3131
with:
3232
python-version: "3.12"
3333
activate-environment: true

.github/workflows/deploy-stg.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ jobs:
2424
runs-on: ubuntu-latest
2525
steps:
2626
- name: Checkout code
27-
uses: actions/checkout@v3
27+
uses: actions/checkout@v6
2828
with:
2929
submodules: recursive
3030

3131
- name: Install the latest version of uv
32-
uses: astral-sh/setup-uv@v6
32+
uses: astral-sh/setup-uv@v7
3333
with:
3434
python-version: "3.12"
3535
activate-environment: true

.github/workflows/integration_tests.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,12 +25,12 @@ jobs:
2525
reflex-web:
2626
runs-on: ubuntu-latest
2727
steps:
28-
- uses: actions/checkout@v4
28+
- uses: actions/checkout@v6
2929
with:
3030
submodules: recursive
3131

3232
- name: Install the latest version of uv
33-
uses: astral-sh/setup-uv@v6
33+
uses: astral-sh/setup-uv@v7
3434
with:
3535
python-version: "3.11"
3636
activate-environment: true

.github/workflows/pre-commit.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,9 @@ jobs:
1515
timeout-minutes: 30
1616
runs-on: ubuntu-latest
1717
steps:
18-
- uses: actions/checkout@v4
18+
- uses: actions/checkout@v6
1919
- name: Install UV
20-
uses: astral-sh/setup-uv@v6
20+
uses: astral-sh/setup-uv@v7
2121
with:
2222
python-version: "3.12"
2323
activate-environment: true

.github/workflows/unit_tests.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,12 +37,12 @@ jobs:
3737
python-version: ["3.11", "3.12"]
3838
runs-on: ${{ matrix.os }}
3939
steps:
40-
- uses: actions/checkout@v4
40+
- uses: actions/checkout@v6
4141
with:
4242
submodules: recursive
4343

4444
- name: Install the latest version of uv
45-
uses: astral-sh/setup-uv@v6
45+
uses: astral-sh/setup-uv@v7
4646
with:
4747
python-version: ${{ matrix.python-version }}
4848
activate-environment: true
@@ -81,7 +81,7 @@ jobs:
8181

8282
- name: Upload test failure videos
8383
if: failure()
84-
uses: actions/upload-artifact@v4
84+
uses: actions/upload-artifact@v7
8585
with:
8686
name: playwright-videos-${{ matrix.os }}-${{ matrix.python-version }}
8787
path: test-videos/

.github/workflows/whitelist.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@ jobs:
1010
reflex-web:
1111
runs-on: ubuntu-latest
1212
steps:
13-
- uses: actions/checkout@v4
13+
- uses: actions/checkout@v6
1414
- name: Assert whitelist is empty
1515
run: echo -e "\nassert not WHITELISTED_PAGES, f'WHITELISTED_PAGES includes {WHITELISTED_PAGES}'" | cat "pcweb/whitelist.py" - | python3

assets/custom-colors.css

Lines changed: 37 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,30 @@
1515
--c-slate-10: #80838D;
1616
--c-slate-11: #60646C;
1717
--c-slate-12: #1C2024;
18+
--slate-1: #FBFCFE;
19+
--slate-2: #F7FAFD;
20+
--slate-3: #EDF1F6;
21+
--slate-4: #E4E9F1;
22+
--slate-5: #DBE1EB;
23+
--slate-6: #D3DAE6;
24+
--slate-7: #C7D0DE;
25+
--slate-8: #B1BDCF;
26+
--slate-9: #838FA1;
27+
--slate-10: #798495;
28+
--slate-11: #5C6573;
29+
--slate-12: #1B212A;
30+
--slate-a1: #0040c004;
31+
--slate-a2: #0040c008;
32+
--slate-a3: #00398e12;
33+
--slate-a4: #0037801c;
34+
--slate-a5: #00327924;
35+
--slate-a6: #002e772d;
36+
--slate-a7: #002d7039;
37+
--slate-a8: #0028634e;
38+
--slate-a9: #00193c7c;
39+
--slate-a10: #00153686;
40+
--slate-a11: #001027a4;
41+
--slate-a12: #000711e5;
1842
/* Violet */
1943
--c-violet-1: #FDFCFE;
2044
--c-violet-2: #FAFBFF;
@@ -72,6 +96,18 @@
7296
.dark,
7397
.dark-theme {
7498
/* Slate */
99+
--slate-1: #141619;
100+
--slate-2: #1B1D20;
101+
--slate-3: #22252A;
102+
--slate-4: #282B31;
103+
--slate-5: #2E3238;
104+
--slate-6: #353A42;
105+
--slate-7: #414852;
106+
--slate-8: #58616F;
107+
--slate-9: #656E7D;
108+
--slate-10: #737C8A;
109+
--slate-11: #ADB4BF;
110+
--slate-12: #ECEEF1;
75111
/* #151618 */
76112
--c-slate-2: #1A1B1D;
77113
/* #1A1B1D */
@@ -115,7 +151,7 @@
115151
--c-red-9: #E5484D;
116152
--c-red-10: #DC3E42;
117153
/* White */
118-
--c-white-1: #0E0F10;
154+
--c-white-1: #1B1D20;
119155
--glow: #261958;
120156
--wave-line-1: #2F1C78;
121157
--wave-line-2: #261958;

case-studies/ansa.md

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
---
22
company: Ansa
33
h1: "How Ansa Uses Reflex for AI-Powered Workflow Automation"
4+
card_header: "How Ansa saved 100 hours of manual work a month with Reflex"
5+
card_description: "See how Ansa automated their fintech workflows with Reflex, eliminating 100 hours of repetitive manual work per month and accelerating their operations."
46
description: "Why Ansa chose Reflex over no-code and low-code frameworks for their workflow automations. Full Python control for AI-powered business process automation."
57
domain: "https://www.ansa.co"
68
founded: "New York, 2021"
@@ -42,15 +44,11 @@ meta: [
4244
```python exec
4345
import reflex as rx
4446
from pcweb.constants import REFLEX_ASSETS_CDN
45-
from reflex_image_zoom import image_zoom
47+
from pcweb.pages.customers.views.app_preview_card import app_preview_card
4648
```
4749

4850
```python eval
49-
rx.vstack(
50-
image_zoom(rx.image(src=f"{REFLEX_ASSETS_CDN}case_studies/ansa_app.webp", border_radius="10px", alt="Ansa App")),
51-
rx.text("Ansa App built with Reflex"),
52-
width="100%",
53-
)
51+
app_preview_card(f"{REFLEX_ASSETS_CDN}case_studies/ansa_app.webp", text="Ansa App built with Reflex")
5452
```
5553

5654
Meet [Ansa](https://www.ansa.co), a venture capital firm based in New York City that invests in companies from Series A to C. They have invested in companies like Defense Unicorns, Bland, Gradient, and Selector and prior to founding the firm, supported investments in many of the venture-capital industry’s largest outcomes including Crowdstrike, Coinbase, and SurveyMonkey to name a few.
@@ -144,7 +142,8 @@ Finally, when their team has a short list of companies that fit within an invest
144142
```md quote
145143
- name: Ryan
146144
- role: Investor and Head of Data
147-
Let’s say we have 30 companies that we want to email. How can you efficiently send a custom note to each of these companies and track it properly? We launch a script, that runs through a Reflex background event, that'll go through each company, check the CRM ownership, fill out relevant fields and find the best person to reach out to. A lot of times, especially with early stage companies, data is missing or partially complete. So this workflow will leverage LLMs throughout the process to handle fuzzy matching and make contextual decisions, as well as proactively summarize company content, news, and relevant Ansa content to help support the email writing. Before we would do this all manually, now with this new workflow in Reflex, we've taken what was once 30+ clicks across 5 different apps and made it 5x faster with 2 clicks across 2 apps.
145+
- variant: medium
146+
Let’s say we have 30 companies that we want to email. How can you efficiently send a custom note to each of these companies and track it properly? We launch a script, that runs through a Reflex background event, that’ll go through each company, check the CRM ownership, fill out relevant fields and find the best person to reach out to. A lot of times, especially with early stage companies, data is missing or partially complete. So this workflow will leverage LLMs throughout the process to handle fuzzy matching and make contextual decisions, as well as proactively summarize company content, news, and relevant Ansa content to help support the email writing. Before we would do this all manually, now with this new workflow in Reflex, we’ve taken what was once 30+ clicks across 5 different apps and made it 5x faster with 2 clicks across 2 apps.
148147
```
149148

150149
All these different workflows are now built into a single Reflex app. It makes it extremely easy for anyone on the team to run any of these workflows and leverage LLM-powered automation with a few clicks.

0 commit comments

Comments
 (0)