Files
wr.do/content/docs/developer/installation.mdx
T

75 lines
2.9 KiB
Plaintext

---
title: Installation
description: How to install the project.
---
<Steps>
### Create project
Start by creating a new Next.js project using `create-next-app`:
```bash
npx create-next-app wrdo --example "https://github.com/oiov/wr.do"
```
Or deploy with Vercel :
[![Deploy with Vercel](https://vercel.com/button)](https://vercel.com/new/clone?repository-url=https%3A%2F%2Fgithub.com%2Foiov%2Fwr.do)
<Callout type="warning" twClass="mt-4">
A good way to create your repository, but the deployment will fail because you
need to add your environment variables locally in your project. Follow the
documentation for that.
</Callout>
### Install dependencies
Enter in the folder and install dependencies for your project:
```bash
cd wrdo
pnpm install
```
### Create a `.env` file
Copy/paste the `.env.example` in the `.env` file:
{/* env表格 */}
| Environment Variable | Value | Description |
|----------------------|-------|-------------|
| NEXTAUTH_URL | `http://localhost:3000` | The URL of the Next.js application. |
| AUTH_SECRET | `123465` | The secret used to encrypt tokens and email verification hashes. |
| DATABASE_URL | `postgres://username:password@host:port/database` | The path to the postgres database. |
| GOOGLE_CLIENT_ID | `123465` | The ID of the Google OAuth client. |
| GOOGLE_CLIENT_SECRET | `123465` | The secret of the Google OAuth client. |
| GITHUB_ID | `123465` | The ID of the GitHub OAuth client. |
| GITHUB_SECRET | `123465` | The secret of the GitHub OAuth client. |
| RESEND_API_KEY | `123465` | The API key for Resend. |
| CLOUDFLARE_ZONE_ID | `123465` | The zone ID for Cloudflare. |
| CLOUDFLARE_API_KEY | `123465` | The API key for Cloudflare. |
| CLOUDFLARE_EMAIL | `123465` | The email for Cloudflare. |
| NEXT_PUBLIC_OPEN_SIGNUP | `1` | Open signup. |
| SCREENSHOTONE_BASE_URL | `https://api.example.com` | pending |
| GITHUB_TOKEN | `ghp_sscsfarwetqet` | https://github.com/settings/tokens |
| NEXT_PUBLIC_SHORT_DOMAINS | `wr.do,uv.do` | The list of short domains. Separated by `,` |
| NEXT_PUBLIC_EMAIL_DOMAINS | `wr.do,uv.do` | The list of email domains. Separated by `,` |
> `NEXT_PUBLIC_SHORT_DOMAINS`、`NEXT_PUBLIC_EMAIL_DOMAINS` is used to limit the short domain name and email domain name.
- How to get `GOOGLE_CLIENT_ID`、`GITHUB_ID`, see [Authentification](/docs/developer/authentification).
- How to get `RESEND_API_KEY`, see [Email](/docs/developer/email).
- How to get `CLOUDFLARE_ZONE_ID`、`CLOUDFLARE_API_KEY`、`CLOUDFLARE_EMAIL`, see [Cloudflare Configs](/docs/developer/cloudflare).
- How to get `DATABASE_URL`, see [Database](/docs/developer/database).
- How to active email worker, see [Email Worker](/docs/developer/cloudflare-email-worker).
For step by step installation, see [Quick Start](/docs/developer/quick-start).
### Configuration part
Let's check the configuration part for update all environment variables before use `pnpm run dev`.
</Steps>