a stunning and sleek web proxy with support for hundreds of popular sites. https://docs.nebulaproxy.io/
Find a file
2024-10-17 04:18:45 -06:00
.vscode Chore: format... 2! 2024-10-12 02:20:39 -06:00
database_assets Marketplace: retro theme 2024-10-17 01:56:14 -06:00
public Chore: format... 2! 2024-10-12 02:20:39 -06:00
server We don't need this block anymore 2024-10-17 03:08:03 -06:00
src Add note about marketplace 2024-10-17 04:18:22 -06:00
.gitignore Server: switch to Fastify 2024-10-13 04:33:25 -06:00
astro.config.ts Allow the ability to completely disable the marketplace. 2024-10-17 03:07:17 -06:00
biome.json Chore: format... 2! 2024-10-12 02:20:39 -06:00
config.example.toml Server: switch to Fastify 2024-10-13 04:33:25 -06:00
package.json Apparently sharp didn't exist 2024-10-16 04:10:45 -06:00
pnpm-lock.yaml Apparently sharp didn't exist 2024-10-16 04:10:45 -06:00
README.md I forgot to add a seperator 2024-10-17 04:18:45 -06:00
svelte.config.js Chore: format... 2! 2024-10-12 02:20:39 -06:00
tailwind.config.mjs Chore: format... 2! 2024-10-12 02:20:39 -06:00
tsconfig.json Chore: format... 2! 2024-10-12 02:20:39 -06:00

ruby

repo size website status commit a week

Get Started

To get started, press one of the buttons below to deploy Incog

Terminal Docker

NOTE:

  • This will NOT deploy on Github Pages, Netlify, Vercel, Gitlab Pages or any other static host
  • This will NOT work on Render

Nebula Services Discord Titanium Network Discord


Features


Contributors


Tech Stack


Catalog/Marketplace

  • By default the marketplace is enabled, and uses SQLite
  • If you would like to disable the catalog, see #config
  • For big production instances I would recommend using Postgres over SQLite. To do this see #config
  • By default, the Docker images use Postgres. If you would like to disable this, see #docker

Deployment

Terminal

Prerequisites:

  • Node & npm
  • Git
  1. Clone the repo:
git clone https://github.com/nebulaservices/nebula && cd nebula
  1. Install all of the dependencies:
npm i
  1. Create a config.toml file
cp config.example.toml config.toml
  1. Modify the config.toml file to you liking (docs here)
nano .env
  1. Build the frontend:
npm run build
  1. Start the server
npm start

Note

You can run npm run bstart to build and start together


Docker

Normal Docker

Prerequisites:

  • Git
  • Docker
  1. Clone the repo (skip if using prebuilt image):
git clone https://github.com/nebulaservices/nebula && cd nebula
  1. Create an .env file (if using prebuilt image, copy the example from the repo):
cp .env.example .env
  1. Modify the .env file to your liking (docs here)
nano .env
  1. Build the docker image (skip if using prebuilt):
docker build --build-arg BARE_SERVER_OPTION=true GAMES_LINK=true RAMMERHEAD_OPTION=true -t incog:latest

For info on the build arg check here

  1. Run the docker images:

    • Prebuilt:
    docker run --env-file ./.env motortruck1221/nebula:latest
    
    • Image you built yourself:
    docker run --env-file ./.env incog:latest
    

Docker Compose

Prerequisites:

  • Git
  • Docker w/compose
  1. Clone the repo (skip if using prebuilt image):
git clone https://github.com/nebulaservices/nebula
  1. Create an .env file (if using prebuilt image, copy the example from the repo):
cp .env.example .env
  1. Modify the .env file to your liking (docs on that here]
nano .env
  1. Build the docker image (skip if using prebuilt):
docker compose -f ./docker-compose.build.yml build
  1. Run the docker image:

    • Prebuilt:
    docker compose up
    
    • Image you built yourself:
    docker compose -f ./docker-compose.build.yml up
    

Config

  • There are a couple of configuration options for nebula. Most of the time, the defaults are fine, but there are instances where you may not want certain options enabled or certain things running.
  • An example config file is located here.
  • Config format is in TOML
Variable Description Type Default
marketplace The options below are for the marketplace section object N/A
enabled Enable marketplace functionality boolean true
psk The password and authentication key for the marketplace. CHANGE FROM DEFAULT string CHANGEME
---------------------------- ---------------------------------------------------------------------------- ------------ --------------
db The below options are for the db (database) section object N/A
name The database name to use string database
username The username for the DB string username
password The database password. CHANGE FROM DEFAULT VALUE string password
postgres Whether to use postgres over sqlite (recommended for large production instances) boolean false
---------------------------- ---------------------------------------------------------------------------- ------------ --------------
postgres The below options are for the postgres section. (Only worry about this if you enabled postgres in the db section.) object N/A
domain Either the TLD or the IP address of your postgres server. string ''
port The port your postgres server is listening on number 5432
---------------------------- ---------------------------------------------------------------------------- ------------ --------------
server.server The below options are to configure the server. object N/A
port What port the server should listen on. (Note: Can also be configured via environment variable PORT) number 8080
wisp Whether the server should use the inbuilt wisp server. (Disabled if your using an external wisp server) boolean true
logging Whether or not to enable logging. Note: Logs are massive boolean true
---------------------------- ---------------------------------------------------------------------------- ------------ --------------
server.rammerhead Configure the Rammerhead server. DO NOT TOUCH UNLESS YOU ARE CERTAIN YOU KNOW WHAT YOU ARE DOING object N/A
reverseproxy Whether or not the Rammerhead server is behind a reverse proxy boolean true
localstorage_sync Whether or not to use localstorage sync boolean true
http2 Whether to allow http2 or not boolean true