Final Fantasy XI Private Server Catalog https://ixion.dev/
Go to file
Corey ba172f599c
Initial commit
2024-04-08 10:39:38 -04:00
.devcontainer Initial commit 2024-04-08 10:39:38 -04:00
api Initial commit 2024-04-08 10:39:38 -04:00
client Initial commit 2024-04-08 10:39:38 -04:00
.editorconfig Initial commit 2024-04-08 10:39:38 -04:00
.gitattributes Initial commit 2024-04-08 10:39:38 -04:00
.gitignore Initial commit 2024-04-08 10:39:38 -04:00
LICENSE Initial commit 2024-04-08 10:39:38 -04:00
README.md Initial commit 2024-04-08 10:39:38 -04:00
TODO.md Initial commit 2024-04-08 10:39:38 -04:00

README.md

Ixion

Description

Ixion is designed to catalog public LandSandBoat servers. The API accepts POST requests with the url parameter which are fetched with the /api/settings subdirectory, looking for some required LSB settings as a json response. Valid LSB URLs are saved and periodically checked and updated accordingly. When a previously valid URL has been inactive for 24 hours, it is removed from the database.

The React client fetches server data from the API and displays it in a relevant way to users. Filtering is built into the client for now. When the API response fails or is empty, a default LSB demo server is displayed, pulling some info from GitHub.

Features

  • Automatic Verification: Verifies LSB server URL by sending a request to the public API. Requires the LSB server to enable the HTTP server.
  • Automatic Deletion: Deletes LSB servers from the database if their API is found to be invalid after a configurable period of inactivity (default 24hrs).
  • Periodic Checks: Runs update checks on all LSB servers in the database.
  • Server Filtering: Filter LSB servers by different parameters.
  • Dockerized Deployment: The application is containerized for easy deployment and development.

Setup Instructions

Production

API

In the api directory copy .env.example to .env and set details accordingly.

docker compose up

The API will be running on port 8000.

Client

In the client directory:

npm install
npm run build
npm start

Build output is in dist/. Client will be running on port 3000.


Development

Download the Dev Containers extension for VS Code and open the folder in the container. This also works well in codespaces.

If using Windows, highly recommend using WSL and storing the repo in the WSL filesystem.

License

MIT