The new DragonFruit Website, built with Next.js, Tailwind CSS and shadcn/ui.
Head to https://dragonfruit.network to use the website.
To run the website locally, you'll need the latest version of Node.js (Standard or LTS) installed, then clone the repository, configure the dotenv file and run the dev server:
git clone https://github.com/dragonfruitnetwork/website
cd website
# Install dependencies (match lock file exactly)
npm ci
cp .env.example .env.local
# Edit .env.local with your preferred settings
# Start a local database
docker compose -f docker-compose.dev.yml up -d
# Generate a prisma client from the defined schema
npx prisma generate
# Start dev server
npm run devThis website uses a number of services to provide functionality.
This is the service that provides assets for the country listing and the connection status page. The source code for this service can be found in the onionfruit-web repository.
A service that indexes the wiki contents and provides language-specific results for individual clients. The wiki contents can be found in the dragonfruit-wiki repository. The indexing service source is currently not available.
The website uses better-auth paired with Google OAuth2 for authentication. To get a OAuth2 client ID and secret, you can create a project in the Google Cloud Console, enable the "Google Identity Platform" API, and create OAuth2 credentials. Make sure to set the authorized redirect URI to https://yourdomain.com/api/auth/callback/google.
The DragonFruit Website is licensed under AGPL version 3 or later. Refer to the licence file for more information. As a general guide, if you want to use any resource from this project, you must open source your project under the same licence and provide attribution. Note this doesn't include the DragonFruit Network name or logo, as these shouldn't be used.