Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
31 changes: 20 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,37 +3,48 @@
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
[![Storefront checks](https://github.com/SakuraUltra/my-shop/actions/workflows/storefront-checks.yml/badge.svg?branch=main)](https://github.com/SakuraUltra/my-shop/actions/workflows/storefront-checks.yml)

**A boutique ecommerce storefront with a complete, no-keys-required demo shopping journey.**
**A boutique ecommerce storefront, from first browse to saved demo order.**

FORMA is the sample brand inside **my-shop**, a portfolio project and reusable Next.js, React and TypeScript storefront template. Warm ivory, deep olive and an editorial layout give everyday clothing and lifestyle pieces room to breathe. Browse a shared catalog, choose variants, save a cart, place a simulated order and explore its delivery timeline.
FORMA is the sample brand inside **my-shop**: a portfolio project and reusable **Next.js, React and TypeScript** template. Warm ivory, deep olive and an editorial layout frame a complete guest shopping journey—no API keys or database setup required.

[中文说明](docs/README.zh-CN.md) · [Project showcase](docs/showcase.md) · [Architecture & extension guide](docs/architecture.md) · [Deployment](docs/deployment.md)
[Run locally](#quick-start) · [Project case study](docs/showcase.md) · [v0.1.0 release](https://github.com/SakuraUltra/my-shop/releases/tag/v0.1.0) · [中文说明](docs/README.zh-CN.md)

> This is a **demo storefront**. It does not accept payments, register accounts, send emails or ship products. Cart and order data live in the visitor's browser. Use the fictional address provided at checkout.

## Preview

[![FORMA storefront preview: editorial home, collection, product details and saved demo order](docs/media/storefront-preview.gif)](https://github.com/SakuraUltra/my-shop/releases/tag/v0.1.0)

[Watch the MP4 walkthrough](docs/media/storefront-walkthrough.mp4) · [Explore the design and engineering decisions](docs/showcase.md)

The GIF and video are montages of captured screens from the working interface, not real-time screen recordings. Run the project locally to try the interactions.

[Download the offline showcase kit](https://github.com/SakuraUltra/my-shop/releases/download/v0.1.0/forma-v0.1.0-showcase.zip): extract the ZIP and open `index.html` for a static presentation with images and video. Interactive shopping requires [running the project locally](#quick-start).

<details>
<summary>View desktop, mobile and order screenshots</summary>

![FORMA desktop storefront: warm ivory, olive accents and editorial product photography](docs/media/desktop-home.jpg)

| Mobile storefront | Saved demo order |
| ---------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- |
| <img src="docs/media/mobile-home.jpg" alt="FORMA mobile storefront" width="260" /> | <img src="docs/media/demo-order.jpg" alt="A saved FORMA demo order with item and amount details" width="640" /> |

[Watch the short storefront walkthrough](docs/media/storefront-walkthrough.mp4) · [Read the project story and demo script](docs/showcase.md)

The walkthrough is assembled from captured screens of the working interface; it is not a real-time screen recording.
</details>

## Quick start

Use Node.js **22.22+** (Node 22 LTS recommended).

```bash
git clone https://github.com/SakuraUltra/my-shop.git
git clone --branch v0.1.0 https://github.com/SakuraUltra/my-shop.git
cd my-shop
npm ci
npm run dev
```

This checks out the **v0.1.0** release. Omit `--branch v0.1.0` to work with the latest `main` branch.

Open [localhost:3000](http://localhost:3000). No `.env`, database, seed command, payment key or account is required. Internet access is needed for dependency installation, Google fonts at build time and remote product photographs.

## Try the complete journey
Expand Down Expand Up @@ -103,11 +114,9 @@ This is a frontend commerce demo, not a production transaction system. Browser s

`prisma/schema.prisma` preserves the original relational design **as a reference only**. Prisma, Stripe and authentication are not connected to the app. The unused SDK wrappers and outdated database seed were removed from the default installation; adding production commerce requires server-side ownership and validation. See the [extension guide](docs/architecture.md).

## Deployment

Run `npm run build` and deploy to a host supporting Next.js. Set `NEXT_PUBLIC_SITE_URL` to the actual public address before the production build. Full instructions and post-deployment checks are in [docs/deployment.md](docs/deployment.md).
## Optional deployment

The repository's previous Vercel address is not advertised as a working demo until a new deployment is verified.
The project can be explored through this README, the release assets and a local installation. To host your own copy, run `npm run build` and deploy to a host supporting Next.js. Set `NEXT_PUBLIC_SITE_URL` to the actual public address before the production build. Full instructions and post-deployment checks are in [docs/deployment.md](docs/deployment.md).

## Images and licensing

Expand Down
39 changes: 29 additions & 10 deletions docs/README.zh-CN.md
Original file line number Diff line number Diff line change
@@ -1,35 +1,48 @@
# FORMA · 可完整体验的电商作品集

FORMA 是 **my-shop** 开源模板中的示例品牌,用 Next.js、React 和 TypeScript 构建。暖白、深橄榄色、商品大图与留白构成自然简约的精品店视觉。访客可以完整体验“浏览 → 选规格 → 购物车 → 模拟下单 → 查看订单 → 模拟配送”。
**从浏览商品到保存模拟订单,一套可以完整体验的精品店购物流程。**

**这是演示项目:不收款、不发货、不发送邮件,也不需要注册。** 订单只保存在当前浏览器,请使用结算页提供的虚构地址。
FORMA 是 **my-shop** 中的示例品牌,也是一个可复用的 **Next.js、React 和 TypeScript** 开源模板。暖白、深橄榄色与编辑式排版构成自然简约的视觉;无需 API 密钥或数据库配置,就能体验“浏览 → 选规格 → 购物车 → 模拟下单 → 查看订单 → 模拟配送”。

[English](../README.md) · [作品介绍与演示脚本](showcase.md) · [架构与扩展说明](architecture.md)
[本地启动](#本地启动) · [项目案例](showcase.md) · [v0.1.0 Release](https://github.com/SakuraUltra/my-shop/releases/tag/v0.1.0) · [English](../README.md)

> **这是演示项目:不收款、不发货、不发送邮件,也不需要注册。** 订单只保存在当前浏览器,请使用结算页提供的虚构地址。

## 效果预览

[![FORMA 动态预览:首页、商品列表、商品详情与模拟订单](media/storefront-preview.gif)](https://github.com/SakuraUltra/my-shop/releases/tag/v0.1.0)

[观看 MP4 演示](media/storefront-walkthrough.mp4) · [阅读设计与实现案例](showcase.md)

动图和视频由实际运行界面的截图串联制作,并非实时录屏。启动本地项目后,可以亲自体验页面交互。

[下载离线展示包](https://github.com/SakuraUltra/my-shop/releases/download/v0.1.0/forma-v0.1.0-showcase.zip):解压 ZIP 后打开 `index.html`,即可浏览包含图片和视频的静态展示;购物交互需要[本地运行项目](#本地启动)。

<details>
<summary>展开查看桌面、手机和订单截图</summary>

![FORMA 桌面首页:暖白底色、橄榄色点缀与商品大图](media/desktop-home.jpg)

| 手机首页 | 模拟订单 |
| -------------------------------------------------------------------- | ----------------------------------------------------------------------------------- |
| <img src="media/mobile-home.jpg" alt="FORMA 手机首页" width="260" /> | <img src="media/demo-order.jpg" alt="FORMA 模拟订单的商品及金额详情" width="640" /> |

[观看简短演示](media/storefront-walkthrough.mp4)

演示视频由实际界面截图串联制作,用于展示购物流程,并非实时录屏。从顶部的 **The collection** 进入商品列表即可亲自体验。
</details>

## 本地启动

使用 Node.js 22.22 或更新版本(推荐 Node 22 LTS):

```bash
git clone https://github.com/SakuraUltra/my-shop.git
git clone --branch v0.1.0 https://github.com/SakuraUltra/my-shop.git
cd my-shop
npm ci
npm run dev
```

打开 http://localhost:3000 。无需配置数据库、支付密钥或 `.env`。安装依赖、构建时加载 Google 字体,以及显示 Unsplash 图片需要联网。
以上命令检出 **v0.1.0** 发布版本;去掉 `--branch v0.1.0` 即可获取最新的 `main` 分支。

打开 [localhost:3000](http://localhost:3000)。无需配置数据库、支付密钥或 `.env`。安装依赖、构建时加载 Google 字体,以及显示 Unsplash 图片需要联网。

## 功能与设计

Expand All @@ -55,7 +68,7 @@ npm run dev

金额统一使用整数“分”。修改币种不会自动换算价格。订单不跨设备同步;每个购物车有数量限制,但多个演示订单不会共同扣减库存。税费未接入。

## 检查与上线
## 开发与检查

```bash
npm run lint
Expand All @@ -64,10 +77,16 @@ npm run build
npm run start
```

参考[部署指南](deployment.md)和[架构与扩展说明](architecture.md)。数据库设计保留在 `prisma/schema.prisma` 供后续参考,目前应用不会连接数据库。
数据库设计保留在 `prisma/schema.prisma` 供后续参考,目前应用不会连接数据库。更多实现细节见[架构与扩展说明](architecture.md)。

下一阶段可以完善产品内容编辑和自动化浏览器测试;真实登录、支付和共享库存应作为有明确后端边界的新阶段。

自动检查配置位于 [`.github/workflows/storefront-checks.yml`](../.github/workflows/storefront-checks.yml),覆盖拉取请求和 `main` 分支更新,也支持手动运行。流程安装锁定依赖,然后执行代码检查、测试和生产构建;仓库令牌仅有读取权限。它不会自动部署网站,具体提交是否通过请以 [GitHub Actions 记录](https://github.com/SakuraUltra/my-shop/actions/workflows/storefront-checks.yml)为准。

## 可选部署

通过 README、Release 素材和本地运行即可了解与体验这个项目。如果希望自行托管,可参考[部署指南](deployment.md),在构建前将 `NEXT_PUBLIC_SITE_URL` 设置为实际域名。

## 许可证与图片

应用代码采用 [MIT 许可证](../LICENSE),方便保留署名后复用。示例照片来源与使用说明见英文 README。
Binary file added docs/media/storefront-preview.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
33 changes: 33 additions & 0 deletions docs/releases/v0.1.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# FORMA v0.1.0

The first portfolio release of **FORMA**, a boutique ecommerce storefront and reusable **Next.js / React / TypeScript** template. This release can be explored directly on GitHub or through the downloadable presentation; no website deployment is needed.

## Start here

- **Watch:** the README includes a 16-second animated overview. Download `forma-walkthrough.mp4` for the 32-second version.
- **Present:** download `forma-v0.1.0-showcase.zip`, extract it and open `index.html`. The presentation bundles screenshots, video, an animated preview and a bilingual case study, so its media can be viewed offline. External source links require internet access.
- **Interact:** use the source code archive below, or clone the `v0.1.0` tag. With Node.js 22.22+, run `npm ci` and `npm run dev`, then open `http://localhost:3000`. Dependencies, build-time Google fonts and product photography require internet access.
- **Read:** [project case study](https://github.com/SakuraUltra/my-shop/blob/v0.1.0/docs/showcase.md) and [中文说明](https://github.com/SakuraUltra/my-shop/blob/v0.1.0/docs/README.zh-CN.md).

## Included

- FORMA's warm ivory and olive identity, responsive layouts and light/dark themes.
- A shared catalog of 12 sample products, URL-based filters, sorting and keyboard search.
- Variant selection, a persistent cart, catalog-based price and quantity checks, and guest demo checkout.
- Saved order snapshots, order history, storage-error handling and an interactive delivery simulation.
- 27 automated test cases and GitHub Actions checks for lint, tests and the production build.
- MIT-licensed application code, bilingual setup documentation and source-linked engineering decisions.

The animation and video are montages of captured working-interface screens, not real-time recordings. The presentation is a static showcase; interactive shopping runs in the local app.

## Demo scope

No real payments, accounts, emails or shipments are involved. Use the fictional address provided. Orders stay in the current browser; there is no shared inventory reservation or production transaction backend. Product photographs come from Unsplash and are separate from the code's MIT license.

## 中文发布说明

这是 FORMA 的首个作品展示版本。可以直接在 GitHub 看动图,或下载 **`forma-v0.1.0-showcase.zip`**,解压后打开 **`index.html`** 查看截图、视频和项目案例,无需部署、无需安装 Node.js。

想亲自操作购物车和模拟订单时,请下载源码并按本地运行说明启动。此版本包含 12 件示例商品、27 个自动测试,以及完整的商品发现、规格选择、购物车、模拟结算、订单与配送演示流程。

`SHA256SUMS.txt` lists checksums for the uploaded showcase ZIP, video and animated preview.
Loading
Loading