Skip to content

titaniumnetwork-dev/Incognito

 
 

Repository files navigation

ruby

repo size website status commit a week original repo

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

How to get links

Titanium Network Discord


Features


Contributors


Tech Stack


Roadmap

  • - Implement Scramjet
  • - Remove dependency on Fastify & switch completely to Hono
  • - General codebase cleanup & remove all of the functions exisiting on window
  • - Games page needs to be reworked due to more games
  • - i18n
  • - More themes
  • - Detatch from the Original repo

Deployment

Pre-built Binaries

  • When a new version is pushed, our CI automagically builds & uploads pre-built binaries to the release.
  • This enables you to:
    • A. Not install any extra runtime or install any new packages
    • B. Updates are easy and quick. Just download the new binary!
Usage:
  • First grab the current binary for your system & OS here
  • Then simply run the binary!
    • For example using linux:
    ./incognito-linux --server full

Note

  • You MAY have to make the binary executable on certain systems.

    • For example in Linux:
    chmod +x ./incognito-linux
  • To see all of the CLI options & usage see: cli

Docker

  • Docker is the second easiest way to run Incognito.
  • Currently, Docker images are built by @motortruck1221 manually per version update.
  • This enables:
    • Automatic updates
    • Easier deployment then building yourself.
    • No dependencies besides docker w/compose
Usage:
  • The Docker builds currently have 2 tags:

    • Latest
    • Or a pinned version of the build (eg: 1.1.7)
  • Currently, only Docker compose is supported. Docker without compose can be used but it's highly discouraged.

  • Prerequisites:

    • Docker w/compose
  • First, create a config.toml file and copy the example config from the repo

  • Then, copy and paste the contents of the docker-compose.yml file into your own docker-compose.yml file

  • After that, edit the docker-compose.yml file to your liking.

  • And finally:

docker compose up
  • That should fire Incognito up and you should be good!

Note

  • To see all of the CLI options & usage see: cli

  • To see all of the config.toml options see: config

Building & Running yourself

  • This is the last way to run Incognito
Usage:
  • Prerequisites:
    • Git
    • Deno 2.1.4 or newer
    • Node.js & NPM
  1. Clone the repo
git clone https://github.com/titaniumnetwork-dev/incognito.git
  1. Install all of the dependencies:
deno install --allow-scripts # This flag is here due to sharp, bufferutil and some others
  1. Create a config.toml file
cp config.example.toml config.toml
  1. Modify the config.toml file to your liking. See: config

  2. Build the frontend

deno task build
  1. Start the server
deno task start --server full

Note

  • To see all of the CLI options & usage see: cli

CLI

  • Incognito has a built in CLI for starting and running

  • Currently, there are only 4 flags. And 1 extra command

  • --help - This triggers the help prompt even when other flags are passed.

  • --server [full|standalone] - Choose between the full or standalone server. This option is required otherwise, it will just show the help prompt.

    • Full - Uses Fastify has a built in Wisp server (via wisp server node) (recommended for self hosters)
    • Standalone - Uses Hono as the server with no built in Wisp server. (recommended for a huge production instance with an external wisp server)
    • These are the only two options. Anything else passed here WILL throw an error.
  • --config <config path> - Use a config located somewhere else.

  • --seo - Currently the default is to only use the build with no seo enabled. This flag enables the seo build.

    • Domain must be set in the config
    • Overrides the enabled option in the config
  • upgrade - Allows for the ability to self-update the binary. Run this to self upgrade

    • --check check for a new version. Tells you if one is available.

Config

  • Incognito currently uses a config file in the toml format.
  • An example of this file can be found here
Build Opts
Type Default Description Can be overwritten by ENV var
games true Disables or enables the games page - [ ] - No
Server
Type Default Description Can be overwritten by ENV var
port 8000 Change the default port. Note: the environment var PORT takes precedence - [x] - Yes
wisp true Disable or enables the in built wisp server. *Note: when using the Hono server there is no built-in wisp server - [ ] - No
SEO
Type Default Description Can be overwritten by ENV var
SEO false Change whether or not to enabled SEO - [x] - Yes - SEO (as well via a CLI flag --seo
DOMAIN http://localhost:8000 When the both option is enable, only show the SEO stuff on this domain - [x] - Yes - DOMAIN

About

The official, up to date version of incognito

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Astro 72.6%
  • TypeScript 22.8%
  • JavaScript 4.1%
  • Dockerfile 0.5%