Conversation
There was a problem hiding this comment.
PR Summary
Added a new security and SOC2 compliance page to showcase Reflex's enterprise security features, data protection, and trust service criteria with responsive layouts for mobile and desktop views.
- Missing implementation for icons in
pcweb/pages/security/security.pywith commented out code sections - Contains unused button imports that should be removed for code cleanliness
- Class naming inconsistencies with irregular spacing in
pcweb/pages/security/security.py - Accessibility improvements needed for better compliance
- Layout inconsistencies between mobile and desktop views need alignment
2 files reviewed, 1 comment
Edit PR Review Bot Settings | Greptile
pcweb/pages/security/security.py
Outdated
| rx.box( | ||
| security_table_header(), | ||
| table_security(), | ||
| class_name="flex-col w-full max-w-[69.125rem] desktop-only pb-12", |
There was a problem hiding this comment.
syntax: Extra space in class_name='flex-col w-full max-w-[69.125rem]'
| class_name="flex-col w-full max-w-[69.125rem] desktop-only pb-12", | |
| class_name="flex-col w-full max-w-[69.125rem] desktop-only pb-12", |
pcweb/pages/security/security.py
Outdated
| from pcweb.components.webpage.badge import badge | ||
| from pcweb.pages.framework.index_colors import index_colors | ||
| from pcweb.pages.framework.views.footer_index import footer_index | ||
| from pcweb.components.icons import hi |
There was a problem hiding this comment.
Need to fix this import, the app won't compile
pcweb/pages/security/security.py
Outdated
| ) | ||
|
|
||
|
|
||
| @rx.page(route="/security", title="Security - Reflex") |
There was a problem hiding this comment.
Lets use one of current templates so we dont reuse code + can use .path etc
pcweb/pages/security/security.py
Outdated
| navbar(), | ||
| rx.el.main( | ||
| rx.box( | ||
| security_title(), |
There was a problem hiding this comment.
Can we split all these sections into different files? Like we do for the landing, hosting and the main pages
pcweb/pages/security/security.py
Outdated
| "We're committed to protecting your data through enterprise-grade security practices and full SOC 2 compliance.", | ||
| class_name="font-md text-balance text-slate-9", | ||
| ), | ||
| class_name="section-header max-w-[64.19rem] px-8 " + rx.cond(HostingBannerState.show_banner, "pt-[11rem]", "pt-[12rem]"), |
There was a problem hiding this comment.
When we switch to the template this wont be need as the logic should be there
pcweb/pages/security/security.py
Outdated
| mobile_layout = rx.box( | ||
| # All cards in simple order for mobile | ||
| # outcomes_showcase(), # Showcase | ||
| security_card(**trust_services_criteria[0]), # Security |
There was a problem hiding this comment.
Cant we use a for loop for this?
pcweb/pages/security/security.py
Outdated
| """Individual outcomes feature card component.""" | ||
| return rx.box( | ||
| rx.box( | ||
| _card_header(title, icon), |
pcweb/pages/security/security.py
Outdated
| "From data protection to privacy compliance, Reflex is built with security-first principles to meet the needs of modern teams and enterprises.", | ||
| class_name="text-slate-9 text-xl font-medium text-center mt-4", | ||
| ), | ||
| class_name="flex items-center justify-between text-slate-11 flex-col py-[5rem] max-w-[64.19rem] mx-auto w-full px-6", |
There was a problem hiding this comment.
This section and the rest that are missing a border-x should have it
pcweb/pages/security/security.py
Outdated
| security_card(**trust_services_criteria[1]), # Availability | ||
| security_card(**trust_services_criteria[2]), # Confidentiality | ||
| security_card(**trust_services_criteria[3]), # Processing Integrity | ||
| security_card(**trust_services_criteria[4]), # Privacy |
There was a problem hiding this comment.
I think I would move this section (privacy) to the top and make it a more important making the text bigger, with and icon or some graphic, plus so border on the bottom to separate it

rough draft of soc2 page