chore: remove .env.example and update README

Kim committed Nov 10, 2025 at 17:27 UTC fdbdbf8306973607dcfba4ffaafbf40ba1c49bc8
3 files changed +16 -19
.env.example deleted
-4
@@ -1,4 +0,0 @@
1 -STATIC_DIR=/app/dist
2 -PORTAL_UI_URL=http://localhost:4017
3 -POSTAL_FRONTEND_URL=http://*.localhost:4017
4 -BOOTSTRAP_URIS=ws://localhost:4017/relay
\ No newline at end of file
README.md
+10 -12
@@ -4,7 +4,7 @@
4 <img src="/portal.jpg" alt="Portal logo" width="540" />
5 </p>
6
7 -Portal is an open hosting network that transforms your local project into a public web endpoint. [See more.](https://gosuda.org/portal/)
7 +Portal is a permissionless, open hosting network that transforms your local project into a public web endpoint. [See more.](https://gosuda.org/portal/)
8
9 ## Table of Contents
10
@@ -25,9 +25,9 @@ This enables developers to publish local services globally without managing serv
25
26 - 🔄 **Connection Relay**: Connects clients behind NAT or firewalls through the Portal network.
27 - 🔐 **End-to-End Encryption**: Fully encrypted client-to-client communication, including browser sessions via a WASM-based Service Worker proxy.
28 +- 🕊️ **Permissionless Hosting**: Anyone can open or choose their own Portal — no approval, no central authority.
29 - 🚀 **High Performance**: Multiplexed connections using yamux
30 - ⚙️ **Simple Setup**: Build and bootstrap apps quickly using the Portal SDK or Tunnel client.
30 -- 🤖 **AI Friendly**: Instantly publish AI-generated websites or applications.
31
32 ## Quick Start
33 You can run **Portal** to host relay services, or run **App** to publish your own application through portal.
@@ -36,24 +36,22 @@ You can run **Portal** to host relay services, or run **App** to publish your ow
36 Run Portal with Docker Compose:
37
38 ```bash
39 -# 1. Copy environment file
40 -cp .env.example .env
41 -
42 -# 2. Start services
39 +# 1. Start services
40 docker compose up
41
45 -# 3. Open in browser (default web interface)
42 +# 2. Open in browser
43 http://localhost:4017
44
48 -# 4. Domain setup (optional)
45 +# 3. Domain setup (optional)
46 # Point DNS to this server:
47 # A record for portal.example.com → server IP
48 # A (wildcard) for *.example.com (or *.portal.example.com) → server IP
49 #
53 -# Then edit .env for your domain:
54 -PORTAL_UI_URL=https://portal.example.com
55 -POSTAL_FRONTEND_URL=https://*.example.com
56 -BOOTSTRAP_URIS=wss://portal.example.com/relay
50 +# Then edit docker-compose.yml environment for your domain:
51 +PORTAL_UI_URL: https://yourservice.com
52 +POSTAL_FRONTEND_URL: https://*.yourservice.com
53 +BOOTSTRAP_URIS: wss://yourservice.com/relay
54 +
55 ```
56
57 ### Running a Portal App
docker-compose.yml
+6 -3
@@ -6,9 +6,12 @@ services:
6 dockerfile: Dockerfile
7 command:
8 - "--port"
9 - - "4017"
10 - env_file:
11 - - .env
9 + - "${PORTAL_PORT:-4017}"
10 + environment:
11 + STATIC_DIR: ${STATIC_DIR:-/app/dist}
12 + PORTAL_UI_URL: ${PORTAL_UI_URL:-http://localhost:${PORTAL_PORT:-4017}}
13 + POSTAL_FRONTEND_URL: ${POSTAL_FRONTEND_URL:-http://*.localhost:${PORTAL_PORT:-4017}}
14 + BOOTSTRAP_URIS: ${BOOTSTRAP_URIS:-ws://localhost:${PORTAL_PORT:-4017}/relay}
15 ports:
16 - "4017:4017"
17 restart: unless-stopped