From 2bd0a9e23643e42e1fd7f076b78b057b480c1a77 Mon Sep 17 00:00:00 2001 From: pulipakaa24 Date: Thu, 9 Apr 2026 04:35:02 -0500 Subject: [PATCH] privacy --- App.tsx | 8 ++ components/PrivacyPolicy.tsx | 140 +++++++++++++++++++++++++++++++++++ 2 files changed, 148 insertions(+) create mode 100644 components/PrivacyPolicy.tsx diff --git a/App.tsx b/App.tsx index 5e5ce9e..0f0aa56 100644 --- a/App.tsx +++ b/App.tsx @@ -9,6 +9,7 @@ import { SignUpForm } from './components/auth/SignUpForm'; import { EmailVerification } from './components/auth/EmailVerification'; import { ForgotPassword } from './components/auth/ForgotPassword'; import { ResetPassword } from './components/auth/ResetPassword'; +import { PrivacyPolicy } from './components/PrivacyPolicy'; import { useSession, signOut } from './lib/auth-client'; import { LayoutDashboard, Package, FileCheck, LogOut, UserCircle } from 'lucide-react'; @@ -26,6 +27,10 @@ type AppView = type Tab = 'dashboard' | 'inventory' | 'protocol' | 'profile'; +function isPrivacyRoute() { + return window.location.pathname === '/privacy'; +} + function isResetPasswordRoute() { return ( window.location.pathname === '/reset-password' && @@ -35,6 +40,7 @@ function isResetPasswordRoute() { export default function App() { const { data: session, isPending } = useSession(); + const [isPrivacy] = useState(isPrivacyRoute); const [view, setView] = useState( isResetPasswordRoute() ? 'reset-password' : 'loading' ); @@ -60,6 +66,8 @@ export default function App() { }); }, [session, isPending, view]); + if (isPrivacy) return ; + if (view === 'reset-password') { return ( +
+
+ LabWise +
+ +

Privacy Policy

+

Last updated: April 9, 2026

+ +
+
+

Overview

+

+ LabWise ("we", "our", or "us") is a chemical inventory management platform for + laboratories. This Privacy Policy explains how we collect, use, and protect your + information when you use the LabWise mobile app and web application + (collectively, the "Service"). +

+
+ +
+

Information We Collect

+

Account Information

+

+ When you create an account, we collect your email address, name, and a password + (or authentication credentials if you sign in with Google). We also collect lab + profile details you provide, including PI name, building code, lab designation, + and contact information. +

+

Inventory Data

+

+ We store the chemical inventory data you enter or scan, including chemical names, + CAS numbers, storage locations, quantities, vendor information, expiration dates, + and any comments you add. +

+

Protocol Data

+

+ If you use the Protocol Checker feature, we store the protocol documents or text + you upload for AI-powered safety analysis. +

+

Camera and Photos

+

+ The mobile app can use your device camera to scan chemical labels. Images are + processed on-device using Apple's built-in AI capabilities. Label images are not + transmitted to our servers unless you explicitly save them with a chemical entry. +

+

Automatically Collected Data

+

+ We collect standard server logs (IP address, request timestamps, browser/device + type) to operate and secure the Service. +

+
+ +
+

How We Use Your Information

+
    +
  • To provide and maintain the Service, including inventory tracking, safety alerts, and protocol analysis
  • +
  • To authenticate your account and maintain your session
  • +
  • To pre-fill form fields with your lab profile defaults
  • +
  • To send safety alerts about expiring or low-stock chemicals
  • +
  • To improve and secure the Service
  • +
+
+ +
+

Data Sharing

+

+ We do not sell, rent, or share your personal information or inventory data with + third parties. Your data may be disclosed only in the following circumstances: +

+
    +
  • With your consent
  • +
  • To comply with legal obligations or law enforcement requests
  • +
  • To protect the rights, safety, or property of LabWise or its users
  • +
+
+ +
+

Third-Party Services

+

+ The Service integrates with the following third-party services: +

+
    +
  • Google OAuth — if you choose to sign in with Google, your authentication is handled by Google's OAuth service, subject to Google's Privacy Policy.
  • +
  • PubChem — when scanning chemicals, we may query PubChem's public API to look up chemical properties by CAS number. Only the CAS number is sent; no personal data is shared.
  • +
+
+ +
+

Data Security

+

+ We use industry-standard security measures to protect your data, including HTTPS + encryption for all data in transit, secure session management with HTTP-only + cookies, and rate limiting on authentication and API endpoints. +

+
+ +
+

Data Retention and Deletion

+

+ Your data is retained for as long as your account is active. You may delete + individual chemical entries or protocol records at any time. To request full + account and data deletion, contact us at the email address below. +

+
+ +
+

Children's Privacy

+

+ The Service is not directed at children under 13. We do not knowingly collect + personal information from children under 13. If you believe a child has provided + us with personal data, please contact us so we can delete it. +

+
+ +
+

Changes to This Policy

+

+ We may update this Privacy Policy from time to time. We will notify you of any + material changes by posting the updated policy on this page with a revised "Last + updated" date. +

+
+ +
+

Contact Us

+

+ If you have questions about this Privacy Policy or your data, please contact us + at: pulipakaaditya@gmail.com +

+
+
+
+ + ); +}