You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Feb 21, 2024. It is now read-only.
Catalyst served to facilitate the process of commissioning through a simple, unified, and mobile-friendly way for artists to easily list their prices, receive and track commissions, and much more.
Unfortunately, we have decided to shut down the project. Hopefully someone else will revolutionize this space in the future!
Thanks to everyone who helped; we had a good run.
Running Locally
Since this project is open-source, you are welcome to fork this project and run it locally for yourself. However, please be aware that the ecosystem is quite complex and we provide no warranty nor maintenance.
We provide a Docker image for running the project locally. To build it, use the following:
docker build -t catalyst.
This container exposes port8080 and requires a few volumes:
/var/www/catalyst/keys
You must generate a RSA private and public keypair using the following:sh openssl genrsa -des3 -out key.pem 4096 # any password will do openssl rsa -in key.pem -out private.pem -outform PEM openssl rsa -in private.pem -outform PEM -pubout -out public.pem
Then, place the private key, including the------BEGIN... andEND, in a filekey.pem;
Finally, place the contents of public.pem,without the------BEGIN... andEND, intokey.pub
Finally, there aremany environment variables:
Database configuration:
DB_HOST defaultmariadb
DB_PORT default3306
DB_USER defaultmariadb
DB_PASS defaultmariadb
DB_NAME defaultcatalyst
Communication:
NO_REPLY_PASSWORD is the password for emailno-reply@catalystapp.co (hardcoded inEmail class)
SMTP_SERVER default localhost
SMTP_PORT default 1234
CAPTCHAs
All of these will not have any effect unless the site is moved out of development mode, which is currently not supported.
These are only kept for legacy reasons. All CAPTCHAs shown will say "for development only" and not provide any protection.
ERROR_LOG_PASSWORD is the password for emailerror_logs@catalystapp.co (hardcoded inEmail class)
DISCORD_BUG_WEBHOOK_TOKEN allows sending error messages to Discord, should be formatchannel-id/token
TELEGRAM_CHAT andTELEGRAM_TOKEN allows sending error messages to Telegram; should be a chat ID and a bot token respectively
For simplicity, we provide a starterdocker-compose.yaml which will startup a database. For this, you should only need to set environment variablesMARIADB_ROOT_PASSWORD andDB_PASSWORD, both of which can be random values. You will also need to provide./catalyst-keys (as described above) and./catalyst-data (mirroringexternal_assets in the repository).
Please note that no SSL or security is provided in this docker compose configuration;you must use a reverse proxy like Traefik to provide SSL and other important features. Additionally, this configuration exposes port 8081 as a database management interface;you must not expose this port to the internet.
If you want to use the Docker compose file with local development, set the image name to be the same as the one you built withdocker build.
We provide two prebuilt packages:
ghcr.io/catalyst-app/catalyst:master, everything in the project, as abandoned
ghcr.io/catalyst-app/catalyst:limited, a very limited version that only allows character updates/viewing on existing users. This is being hosted for a longer period to give a chance for users to migrate away from the platform.
Also, the following are not supported (although this is an incomplete list):
thumbnail generation for uploaded images
patreon integration for the about page
external resource auto-updating
production bundling/minification
catl.st image shortener
many Apache-based htaccess configuration/rewrites
About
We strive to simplify the complex process of commissioning for both the artist and the customer.