as you know I previously released a new website for Tales of Pirates. I had planned to make updates to that one but due to college and graduation and everything, I ended up not really working on it again.
Long story short, here's a new version of the website that I had made, with more features and something that I'll actually be updating regularly according to community response.
You can download the website here: https://github.com/perseus/topcms
I'm also hosting a live version if you want to mess around with it here: https://topcms.anirudhsingh.dev/
The features that it currently has:
Basic site management ( news, downloads, authors etc.)
Ranking (Guild and Player)
A bare-bones admin panel that I plan to extend
A functional item mall and award center
Logging system ( I have the base for this set up but no UI. I'll be adding a UI which will allow you to look through any "critical" actions taken by GMs or players on the website )
The design isn't the best (I'm not a designer) so I'm open to any design feedback that you guys have.
Here's a few screenshots of what it looks like:
You're going to need NodeJS for this. You can find it here: https://nodejs.org/en/
You can download the latest LTS version (12.17.0) and install it.
Then, you need to open your command prompt (run it as admin), and `cd` into both the `api` and `web` folders and run
(For people who aren't well versed with the command prompt) :
"cd" is a command to change your current directory in the command prompt. If you have downloaded and extracted the website in the F: drive inside a "topcms" folder for example, the commands you would run after opening a command prompt are:
(".." is used to go to a directory that contains the current directory (basically go one up from where you currently are ))
Next, `cd` into the `api` folder and run
npm run install-wizard
This should start an installation wizard on `localhost:4000` that you can go through and it'll set the website up for you.
Next, to run the website, cd into the `api` folder and run
pm2 start dist/server.js
and the website should start at port 3000. (You can access it by going to `localhost:3000`)
If you want to run it on port 80, go into the `api` folder and look for a `.env`. At the end, write
pm2 is a process manager for node, which is used to run production applications and handles a lot of things that make it easy to run (automatically restarts the app if it crashes etc)
Some pm2 basics:
pm2 run dist/server.js
from inside the API directory to start your server
to see the currently running processes (you should see your server running if you do this)
to stop any processes that are currently running. You need to do this and then "pm2 run" again if you want to restart your server.
There are a few more configuration related things that I'll be putting up here but I hoped to get it into your hands so I could iron out any bugs and get this ready to be used by everyone.
Please let me know if you run into any issues or if anything needs to be made clear here.