Skip to content

Virtual online bookstore application demo which you can find books of various categories and rate the books.

License

Notifications You must be signed in to change notification settings

pingcap/tidb-prisma-vercel-demo

Repository files navigation

Bookshop Demo

Bookshop is a virtual online bookstore application through which you can find books of various categories and rate the books.

You can perform CRUD operations such as viewing book details, adding and deleting ratings, editing book inventory, etc.

Powered by TiDB Cloud, Prisma and Vercel.

πŸ”₯ Visit Live Demo

πŸ‘‰ Click here to visit

image

Deploy on Vercel

πŸ§‘β€πŸ³ Before We Start

Create a TiDB Cloud account and get your free trial cluster.

πŸš€ One Click Deploy

You can click the button to quickly deploy this demo if already has an TiDB Cloud cluster.

Deploy with Vercel

Integration will guide you connect your TiDB Cloud cluster to Vercel.

Manually Deploy (Not recommended)

1. Get connection details

You can get the connection details by clicking the Connect button.

image

Get User and Host field from the dialog.

Note: For importing initial data from local, you can set an Allow All traffic filter here by entering an IP address of 0.0.0.0/0.

image

Your DATABASE_URL should look like mysql://<User>:<Password>@<Host>:4000/bookshop

2. Deploy on Vercel

Deploy with Vercel

image

Deploy on AWS Linux

Install git and nodejs pkgs

sudo yum install -y git

# Ref: https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/setting-up-node-on-ec2-instance.html
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash;
source ~/.bashrc;
nvm install --lts;
node -e "console.log('Running Node.js ' + process.version)"

Clone the repository

git clone https://github.com/pingcap/tidb-prisma-vercel-demo.git;
cd tidb-prisma-vercel-demo;

Install dependencies

corepack enable;
corepack yarn install;
yarn;

Connect to TiDB Cloud and create a database

mysql -h gateway01.us-west-2.prod.aws.tidbcloud.com -P 4000 -u user -p
mysql> create database tidb_labs_bookshop;

Set environment variables

export DATABASE_URL=mysql://user:[email protected]:4000/tidb_labs_bookshop

Build the project

yarn run prisma:deploy && yarn run setup && yarn run build

Start the server

yarn start

Open the browser

Open the browser and visit http://<ip>:3000.

πŸ“– Development Reference

Prisma

Prisma Deployment Guide

Bookshop Schema

Bookshop Schema Design