{"id":18408369,"url":"https://github.com/pingcap/tidb-prisma-vercel-demo","last_synced_at":"2025-07-10T16:38:50.202Z","repository":{"id":150075203,"uuid":"531759822","full_name":"pingcap/tidb-prisma-vercel-demo","owner":"pingcap","description":"Virtual online bookstore application demo which you can find books of various categories and rate the books.","archived":false,"fork":false,"pushed_at":"2024-12-11T13:20:23.000Z","size":658,"stargazers_count":66,"open_issues_count":2,"forks_count":41,"subscribers_count":13,"default_branch":"main","last_synced_at":"2025-05-26T05:09:22.147Z","etag":null,"topics":["bookstore","ecommerce","nextjs","prisma","tidb","tidbcloud","vercel"],"latest_commit_sha":null,"homepage":"https://tidb-prisma-vercel-demo.vercel.app/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pingcap.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-09-02T02:50:57.000Z","updated_at":"2025-05-25T16:32:39.000Z","dependencies_parsed_at":"2024-12-27T02:06:12.286Z","dependency_job_id":"6fc83c9f-7aa2-4d37-a768-d27bdc8bfa1c","html_url":"https://github.com/pingcap/tidb-prisma-vercel-demo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pingcap/tidb-prisma-vercel-demo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pingcap%2Ftidb-prisma-vercel-demo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pingcap%2Ftidb-prisma-vercel-demo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pingcap%2Ftidb-prisma-vercel-demo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pingcap%2Ftidb-prisma-vercel-demo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pingcap","download_url":"https://codeload.github.com/pingcap/tidb-prisma-vercel-demo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pingcap%2Ftidb-prisma-vercel-demo/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264608262,"owners_count":23636695,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bookstore","ecommerce","nextjs","prisma","tidb","tidbcloud","vercel"],"created_at":"2024-11-06T03:18:50.999Z","updated_at":"2025-07-10T16:38:50.180Z","avatar_url":"https://github.com/pingcap.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bookshop Demo\n\nBookshop is a virtual online bookstore application through which you can find books of various categories and rate the books.\n\nYou can perform CRUD operations such as viewing book details, adding and deleting ratings, editing book inventory, etc.\n\n\u003e Powered by TiDB Cloud, Prisma and Vercel.\n\n## 🔥 Visit Live Demo\n\n[👉 Click here to visit](https://tidb-prisma-vercel-demo.vercel.app/)\n\n![image](https://github.com/pingcap/tidb-prisma-vercel-demo/assets/56986964/2ef5fd7f-9023-45f4-b639-f4ba4ddec157)\n\n## Deploy on Vercel\n\n## 🧑‍🍳 Before We Start\n\nCreate a [TiDB Cloud](https://tidbcloud.com/) account and get your free trial cluster.\n\n### 🚀 One Click Deploy\n\nYou can click the button to quickly deploy this demo if already has an TiDB Cloud cluster.\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?demo-title=TiDB%20Cloud%20Starter\u0026demo-description=A%20bookstore%20demo%20built%20on%20TiDB%20Cloud%20and%20Next.js.\u0026demo-url=https%3A%2F%2Ftidb-prisma-vercel-demo.vercel.app%2F\u0026demo-image=%2F%2Fimages.ctfassets.net%2Fe5382hct74si%2F2HMASOQn8hQit2IFi2hK3j%2Fcfe7cc2aeba4b8f6760a3ea14c32f707%2Fscreenshot-20220902-160324_-_Chen_Zhen.png\u0026project-name=TiDB%20Cloud%20Starter\u0026repository-name=tidb-cloud-starter\u0026repository-url=https%3A%2F%2Fgithub.com%2Fpingcap%2Ftidb-prisma-vercel-demo\u0026from=templates\u0026integration-ids=oac_coKBVWCXNjJnCEth1zzKoF1j)\n\n\u003e Integration will guide you connect your TiDB Cloud cluster to Vercel.\n\n\u003cdetails\u003e\n  \u003csummary\u003e\u003ch3\u003eManually Deploy (Not recommended)\u003c/h3\u003e\u003c/summary\u003e\n\n#### 1. Get connection details\n\nYou can get the connection details by clicking the `Connect` button.\n\n![image](https://github.com/pingcap/tidb-prisma-vercel-demo/assets/56986964/86e5df8d-0d61-49ca-a1a8-d53f2a3f618c)\n\nGet `User` and `Host` field from the dialog.\n\n\u003e 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`.\n\n![image](https://github.com/pingcap/tidb-prisma-vercel-demo/assets/56986964/8d32ed58-4edb-412f-8af8-0e1303cceed9)\n\nYour `DATABASE_URL` should look like `mysql://\u003cUser\u003e:\u003cPassword\u003e@\u003cHost\u003e:4000/bookshop`\n\n#### 2. Deploy on Vercel\n\n[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Fpingcap%2Ftidb-prisma-vercel-demo\u0026repository-name=tidb-prisma-vercel-demo\u0026env=DATABASE_URL\u0026envDescription=TiDB%20Cloud%20connection%20string\u0026envLink=https%3A%2F%2Fdocs.pingcap.com%2Ftidb%2Fdev%2Fdev-guide-build-cluster-in-cloud\u0026project-name=tidb-prisma-vercel-demo)\n\n![image](https://user-images.githubusercontent.com/56986964/199161016-2d236629-bb6a-4e3c-a700-c0876523ca6a.png)\n\n\u003c/details\u003e\n\n## Deploy on AWS Linux\n\n### Install git and nodejs pkgs\n\n```bash\nsudo yum install -y git\n\n# Ref: https://docs.aws.amazon.com/sdk-for-javascript/v2/developer-guide/setting-up-node-on-ec2-instance.html\ncurl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash;\nsource ~/.bashrc;\nnvm install --lts;\nnode -e \"console.log('Running Node.js ' + process.version)\"\n```\n\n### Clone the repository\n\n```bash\ngit clone https://github.com/pingcap/tidb-prisma-vercel-demo.git;\ncd tidb-prisma-vercel-demo;\n```\n\n### Install dependencies\n\n```bash\ncorepack enable;\ncorepack yarn install;\nyarn;\n```\n\n### Connect to TiDB Cloud and create a database\n\n```bash\nmysql -h gateway01.us-west-2.prod.aws.tidbcloud.com -P 4000 -u user -p\n```\n\n```\nmysql\u003e create database tidb_labs_bookshop;\n```\n\n### Set environment variables\n\n```bash\nexport DATABASE_URL=mysql://user:pass@gateway01.us-west-2.prod.aws.tidbcloud.com:4000/tidb_labs_bookshop\n```\n\n### Build the project\n\n```bash\nyarn run prisma:deploy \u0026\u0026 yarn run setup \u0026\u0026 yarn run build\n```\n\n### Start the server\n\n```bash\nyarn start\n```\n\n### Open the browser\n\nOpen the browser and visit `http://\u003cip\u003e:3000`.\n\n## 📖 Development Reference\n\n### Prisma\n\n[Prisma Deployment Guide](https://www.prisma.io/docs/guides/deployment/deploying-to-vercel)\n\n### Bookshop Schema\n\n[Bookshop Schema Design](https://docs.pingcap.com/tidbcloud/dev-guide-bookshop-schema-design)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpingcap%2Ftidb-prisma-vercel-demo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpingcap%2Ftidb-prisma-vercel-demo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpingcap%2Ftidb-prisma-vercel-demo/lists"}