Puretide
E-Commerce Web App
A privacy-focused e-commerce platform built with Next.js, designed to minimize tracking surface area while still delivering a full shopping experience. It avoids external analytics and third-party cookies, and keeps user data client-side by default.
Skills Used
- Next.js ・
- TypeScript ・
- Tailwind CSS ・
- SQLite ・

Puretide is a privacy-first e-commerce web app that focuses on shipping a modern store experience without surveillance-by-default. There are no tracking scripts , no external analytics , and no telemetry collection . The UX stays fast and responsive thanks to a lightweight UI built with Next.js and Tailwind CSS .
- Next.js 14 – App Router architecture with modern React patterns
- TypeScript – Type-safe components, API routes, and utilities
- Tailwind CSS – Responsive dark theme UI styling
- React Context – Client-side cart state persisted to localStorage
- SQLite (sql.js) – Local order persistence via a SQLite-backed store
- Google Sheets API – Inventory and promo source of truth (with caching)
- Zoho Mail (SMTP) – Order confirmations, contact submissions, and alerts

Operationally, Puretide uses Zoho Mail (SMTP) for order confirmations, contact submissions, and low-stock alerts. SMTP configuration is provided via environment variables (`SMTP_HOST`, `SMTP_PORT`, `SMTP_USER`, `SMTP_PASS`, `SMTP_FROM`) and can be verified using the included test scripts.


The frontend uses the Next.js App Router with React components, and keeps interactive flows (cart and checkout) in client components. Cart state is managed via React Context and persisted in `localStorage` so the browsing and cart experience works without requiring user accounts or server-side sessions.
On the backend, API routes handle order creation and payment initiation, with idempotency safeguards to reduce duplicate submissions. Orders are persisted with a SQLite-backed store via sql.js , and stock/promo data can be synced from Google Sheets (cached to avoid excessive calls). Security headers such as CSP and `X-Robots-Tag: noindex` are applied to support a more private deployment posture.
Browse Other Projects

Vansippy
Happy Hour Finder Web App
Helping deal-seekers around Vancouver find Happy Hours at restaurants and bars close to them.
Go to Project
Instock Web App
Inventory Management System
A modern and scalable Inventory Management System for a client. Developed as a collaborative group project.
Go to Project
Transportes Moran
Aggregate Solutions Co.
Website built with React and styled using SCSS for modular and maintainable styling.
Go to Project
BrainFlix
Youtube clone web app
Webapp that built with React, using functional components and hooks for state and lifecycle management.
Go to Project
Bandsite Web
Web platform for indie bands
This website is built using a traditional front-end web development stack.
Go to Project