2025-04-17 11:54:32 -04:00

62 lines
1.5 KiB
Markdown

# Dev Server Setup
1. **Install Bun if you haven't already**
Bun is a fast JavaScript runtime, which we prefer over `npm`. These instructions will be written for Bun, but could be adapted to `npm` or `yarn` if needed.
```bash
curl -fsSL https://bun.sh/install | bash
```
2. **Clone the repo**
```bash
git clone https://git.pontusmail.org/librecloud/web.git
cd web
```
3. **Install dependencies**
```bash
bun install
```
4. **Generate auth secret**
This step is relatively painless. Execute the below command to generate a `.env.local` file with an `AUTH_SECRET`.
```bash
bunx auth secret
```
5. **Generate Altcha token**
If you plan to use the signup forms, you will need to use Altcha, a private proof-of-work CAPTCHA. All you need to do is execute the script below, and it will be written to your `.env` or `.env.local`.
```bash
$ bun tools/hmac.ts
Successfully wrote ALTCHA_SECRETKEY to .env.local
```
6. **Configure environment variables**
Following the environment variables section of this README, update your newly created `.env.local` file with your configuration.
7. **Initialize Prisma**
Because `web` uses a database for storing Git link statuses (and other things to come), you will need to initialize the SQLite database.
A `schema.prisma` file has been provided to make this easy.
This can be done by executing:
```bash
bunx prisma migrate dev --name init
```
8. **Start dev server**
```bash
bun dev
```