diff --git a/.prettierignore b/.prettierignore index b36ef3a2..51116757 100644 --- a/.prettierignore +++ b/.prettierignore @@ -1,3 +1,5 @@ assets dist -node_modules \ No newline at end of file +node_modules +.github +.vscode \ No newline at end of file diff --git a/README.md b/README.md index 73583017..59a0388e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,30 @@

- +

-

Fosscord

+

Fosscord Server

-This branch is for MaddyUnderStars' refactor of Fosscord. This is not ready for production use. \ No newline at end of file +

+ + + + + + + + +

+ +## [About](https://fosscord.com) + +This repository contains: + +- [Fosscord HTTP API Server](/src/api) +- [WebSocket Gateway Server](/src/gateway) +- [HTTP CDN Server](/src/cdn) +- [Utility and Database Models](/src/util) + +## [Resources](https://docs.fosscord.com/resources/) + +- [Contributing](https://docs.fosscord.com/contributing/server/) + +## [Setup](https://docs.fosscord.com/server/setup/) \ No newline at end of file diff --git a/env-vars.md b/env-vars.md new file mode 100644 index 00000000..42e8a027 --- /dev/null +++ b/env-vars.md @@ -0,0 +1,15 @@ +# Fosscord env vars: + +| Name | Value | Description | +| ---------------- | -------------- | --------------------------------------------------------------- | +| THREADS | number | Number of threads to run Fosscord on when using bundle. | +| PORT | number | Port to listen on | +| DATABASE | string | Database connection string. Defaults to SQlite3 at project root | +| CONFIG_PATH | string | File path for JSON config, if not using `config` db table | +| WS_LOGEVENTS | boolean | If set, log websocket events from gateway | +| CDN | string | Lowest priority value for public CDN annoucements | +| GATEWAY | string | Lowest priority value for public gateway annoucements | +| STORAGE_LOCATION | string | CDN storage location. File path or S3 bucktet | +| STORAGE_PROVIDER | "s3" or "file" | CDN storage provider | +| STORAGE_BUCKET | string | S3 bucket name | +| STORAGE_REGION | string | S3 storage region | diff --git a/nginx.conf b/nginx.conf new file mode 100644 index 00000000..141cf5ca --- /dev/null +++ b/nginx.conf @@ -0,0 +1,26 @@ +# This is an example nginx config for Fosscord. + +server { + # Change server_name + server_name fosscord.example.com; + listen 80; + + location / { + # do NOT change this + proxy_pass http://127.0.0.1:3001; + proxy_set_header Host $host; + proxy_pass_request_headers on; + add_header Last-Modified $date_gmt; + add_header Cache-Control 'no-store, no-cache, must-revalidate, proxy-revalidate, max-age=0'; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-Proto https; + proxy_set_header X-Forwarded-For $remote_addr; + proxy_set_header X-Forwarded-Host $remote_addr; + proxy_no_cache 1; + proxy_cache_bypass 1; + + # this is important + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection "upgrade"; + } +} \ No newline at end of file