Reviewed-on: #2 Reviewed-by: ammaratef45 <ammaratef45@proton.me>
hello friends !
To Run the Website Locally
Prerequisites
- Node.js version 18.17.1 or higher (we recommend using NVM to manage Node versions)
- pnpm (optional but recommended)
Step 1: Install correct Node.js version
If you have NVM (Node Version Manager) installed:
nvm install 18.17.1
nvm use 18.17.1
Verify your Node.js version:
node -v
Step 2: Install dependencies
npm install
Step 3: Start the development server
npx astro dev
Tech Stack
- Astro - The core framework
- React - For interactive components
- Tailwind CSS - For styling (find docs here)
- TypeScript - For type safety
To release a new version
Build in the docker image (make sure you have Docker installed!)
Set the version to the next semantic version after the version posted at our co-op cloud's packages site under "rtmwebsite":
version=<specify-version>
docker build --platform linux/amd64 -t git.coopcloud.tech/rtm/rtmwebsite:$version .
Push the image to gitea registery
Check out this documentation for how to login with gitea registery.
# If not in the same terminal session, rerun `version=...` line from last step
docker push git.coopcloud.tech/rtm/rtmwebsite:$version
At our co-op cloud's packages site, click on "rtmwebsite" and check that the version mentioned is the version you specified!
Update recipe
We use a private recipe to deploy this website. This step needs Wireguard to be activated (download Wireguard and ask Sootie's owner to create a config for you and give you Docker permissions). The following examples will assume your name in Sootie's config is "blueberry"!
You will need to have wget (brew install wget on mac) and abra installed.
Create an SSH key to use with Sootie with the following command. Take note of the file where you save the key. The following examples will assume it is saved to rtm and that the .ssh directory is in your home directory (which you can find with the command echo $HOME).
ssh-keygen -t ed25519
Run the following commands to install the SSH key to Sootie as an authorized key:
ssh-copy-id -i $HOME/.ssh/rtm.pub blueberry@resisttechmonopolies.online
ssh -i $HOME/.ssh/rtm 'blueberry@resisttechmonopolies.online'
In the $HOME/.ssh/config file (which you may have to create if it does not exist), paste the following:
Host resisttechmonopolies.online
Hostname resisttechmonopolies.online
User blueberry
UseKeychain yes
IdentityFile ~/.ssh/rtm
You should now be able to SSH into Sootie with just the command ssh resisttechmonopolies.online
Run the following command (outside of the terminal in which you ran ssh in the previous step)
abra server add resisttechmonopolies.online
Clone the sootie-config repo into your $HOME/.abra/servers/resisttechmonopolies.online directory:
git clone https://git.coopcloud.tech/RTM/sootie-config.git .
# DON'T FORGET THE . AT THE END OF THE COMMAND
Clone the rtm-astro-recipe repo into your $HOME/.abra/recipes directory:
git clone https://git.coopcloud.tech/RTM/rtm-astro-recipe.git
Update the version number to the latest in
.abra/servers/resisttechmonopolies.online/resisttechmonopolies.online.env
Then
abra app undeploy resisttechmonopolies.online
# wait 10 seconds
abra app deploy resisttechmonopolies.online