Post

Project AtmosphericX (Full Installation Guide v7)

Project AtmosphericX (Full Installation Guide v7)

Introduction

Welcome and thank you for your interest in Project AtmosphericX! This project is designed to provide a comprehensive and user-friendly platform for meteorological enthusiasts, storm chasers, or anyone interested in severe weather phenomena. Below is an overview setup and configurations that make AtmosphericX a powerful tool for weather analysis and real time alerts. Before exploring these features, the project must first be installed. Please follow the installation guide below to get started.

Using Git to Install AtmosphericX


If you wish to follow this guide to install git, you are welcome to do so. Otherwise, you may skip this step and proceed to the Node.js Installation.

Please ensure that the latest version of Git is installed.
If you are using Windows, make sure to select the option to add Git to your PATH during installation.
This will enable you to run Git commands from the command line.

Windows Installation Guide

Installing git on Windows is straightforward. Head to git-scm.com and download the latest version. Once downloaded, run the installer and follow the instructions. Be sure to select the option to add Git to your PATH during installation.

  • Select “Download for Windows”.
  • If you’re using a 64-bit version of Windows, choose “x64-bit Git for Windows Setup”.
  • If you’re using a 32-bit version of Windows, choose “x32-bit Git for Windows Setup”.

Git (Setup)

Note: Hit Next if no specific action is mentioned for a given page.

  1. Once installed, run the installer and click Next.
  2. Select the installation location (the default is fine) and click Next.
  3. Keep all options selected by default in the checkbox list and click Next.
  4. Uncheck “View Release Notes” and click Next.

Alright, now let’s confirm that git has been installed correctly.

  1. Open the command prompt by pressing Windows Key + R, typing cmd, and hitting Enter. This will open a command prompt window.
  2. Now, type the following command:
1
git --version 

The above command should display the version of git installed on your system.

  • If you see a version number, congratulations! You have successfully installed git on your Windows machine.
  • If you do not see a version number, please review the installation steps to ensure that you have added Git to your PATH during installation.

Linux Installation Guide

Installing git on Linux is simple. Open your terminal and run the following command:

Keep in mind that git is often pre-installed on many Linux distributions, depending on your configurations. However, if you find that you are unable to run git commands, you can install it by running the following command:

1
2
3
sudo apt-get install git   # For Debian/Ubuntu-based systems
sudo dnf install git       # For Fedora-based systems
sudo pacman -S git         # For Arch-based systems

Once installed, you can verify that git is installed correctly by running the following command in your terminal:

1
git --version

This command should display the version of git installed on your system.

  • If you see a version number, congratulations! You have successfully installed git on your Linux machine.
  • If you do not see a version number, please review the installation steps and ensure everything was followed correctly.

MacOS Installation Guide

Installing git on MacOS is straightforward. You can use the Homebrew package manager to install git. If you don’t have Homebrew installed, you can install it by running the following command in your terminal:

1
2
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install git

Alright, let’s confirm that git has been installed correctly. Open your terminal and type the following command:

1
git --version

This command should display the version of git installed on your system.

  • If you see a version number, congratulations! You have successfully installed git on your MacOS machine.
  • If you do not see a version number, please review the installation steps and ensure everything was followed correctly.

Note: The MacOS installation steps have not been extensively tested. If you encounter any issues during the process, please feel free to reach out for assistance. Your feedback is greatly appreciated and will help improve this guide!

Cloning AtmosphericX


To clone the AtmosphericX repository, open your terminal or command prompt and run the following command:

1
2
3
4
5
# Navigate to the directory where you want to clone the repository (optional)
cd path/to/your/directory 

# Clone the AtmosphericX repository
git clone https://github.com/k3yomi/AtmosphericX

If you encounter issues with the above command, please ensure that git is installed correctly and that you are using the correct URL for the repository.

Node.js Installation Guide


Installing Node.js is essential for running the AtmosphericX project. Node.js is a JavaScript runtime built on Chrome’s V8 JavaScript engine, enabling you to run JavaScript code outside of a web browser. Follow the instructions below to install Node.js on your system.

Please ensure that you are using the LTS (Long Term Support) version of Node.js. This version is recommended for most users as it is stable and well-supported. If you choose not to, you may encounter issues with NPM packages and the binding process when it comes to node-gyp.

Windows Installation Guide

  1. Head to the Node.js download page and select the Windows installer for the latest LTS (Long Term Support) version. This is recommended for most users as it is stable and well-supported.
  2. Once the installer is downloaded, run it and follow the installation wizard. Make sure to check the box that says “Add to PATH” during installation. This will allow you to use Node.js commands from the command line.
  3. After the installation is complete, open your command prompt by pressing Windows Key + R, typing cmd, and hitting Enter.
  4. Type the following command to verify that Node.js is installed correctly:
1
node -v

Linux Installation Guide

Installing Node.js on Linux and MacOS is a straightforward process. Follow the detailed steps below to ensure a successful installation. You can also refer to the Node.js official website for the latest version and additional instructions.

1
2
3
sudo apt-get install nodejs npm   # For Debian/Ubuntu-based systems
sudo dnf install nodejs npm       # For Fedora-based systems
sudo pacman -S nodejs npm         # For Arch-based systems

Verify the installation by running the following commands in your terminal:

1
2
node -v
npm -v

MacOS Installation Guide

  1. Using the Installer:
    • Download the MacOS installer for the latest LTS version from the Node.js download page.
    • Run the installer and follow the on-screen instructions.
  2. Using Homebrew:
    • If Homebrew is not installed, install it by running the following command in your terminal:
      1
      
      /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
      
    • Once Homebrew is installed, you can install Node.js by running:
      1
      2
      
      brew update
      brew install node
      
  3. Verify the Installation:
    • After installation, verify that Node.js and npm are installed correctly:
      1
      2
      
      node -v
      npm -v
      
    • If the commands output the version numbers, the installation was successful.

Note: The MacOS installation steps have not been extensively tested. If you encounter any issues during the process, please feel free to reach out for assistance. Your feedback is greatly appreciated and will help improve this guide!

Installing NPM Dependencies/Packages


Installing the required NPM packages is essential for running the AtmosphericX project. NPM (Node Package Manager) is a package manager for JavaScript and is included with Node.js. It allows you to install and manage libraries and dependencies for your projects. There are multiple ways of installing the dependencies, with two of them being the same method, and the last being the manual method.

Below is a list of the required packages and the associated versions (subject to change):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
  "dependencies": {
    "@msgpack/msgpack": "^3.1.1",
    "@xmpp/client": "^0.7.3",
    "@xmpp/component": "^0.7.1",
    "@xmpp/debug": "^0.7.0",
    "axios": "^1.8.2",
    "express": "^4.21.2",
    "express-session": "^1.18.1",
    "express-ws": "^5.0.2",
    "nodemailer": "^6.10.1",
    "shapefile": "^0.6.6",
    "better-sqlite3": "^11.10.0",
    "xml2js": "^0.6.2"
  }
}

This information is from the package.json file located in the project_atmospheric_x folder.

Using NPM to Install Dependencies

You can use NPM to install the required dependencies for the AtmosphericX project. Open your terminal or command prompt, navigate to the directory where you cloned the AtmosphericX repository, and run the following command:

1
2
npm install <package_name> # Non Version Specific
npm install <package_name>@<version> # Version Specific

Using the Custom Made Shell Script

You can use the custom-made .sh script to install the required dependencies for the AtmosphericX project.

  • If you are on Windows, you can double-click on the file, and it will automatically install all the required dependencies.
  • If you are on Linux, you can run the following command in your terminal:
1
2
chmod +x install.sh # Make the script executable
./install.sh # Run the script

If all works, you should see the following output:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
npm warn deprecated inflight@1.0.6: This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.
npm warn deprecated @npmcli/move-file@1.1.2: This functionality has been moved to @npmcli/fs
npm warn deprecated npmlog@5.0.1: This package is no longer supported.
npm warn deprecated npmlog@6.0.2: This package is no longer supported.
npm warn deprecated rimraf@3.0.2: Rimraf versions prior to v4 are no longer supported
npm warn deprecated @xmpp/tls@0.7.4: Critical security bug fixed in v0.12.1
npm warn deprecated glob@7.2.3: Glob versions prior to v9 are no longer supported
npm warn deprecated are-we-there-yet@2.0.0: This package is no longer supported.
npm warn deprecated are-we-there-yet@3.0.1: This package is no longer supported.
npm warn deprecated @xmpp/resolve@0.7.4: Potential security vulnerability fixed in 0.13.1 - see https://github.com/xmppjs/xmpp.js/pull/936
npm warn deprecated text-encoding@0.6.4: no longer maintained
npm warn deprecated gauge@4.0.4: This package is no longer supported.
npm warn deprecated gauge@3.0.2: This package is no longer supported.

added 297 packages, and audited 298 packages in 3s

29 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

Starting AtmosphericX (2 Methods)


Alright, we have installed everything needed for the project. Now, we can start with the project itself and configurations. There are two methods to start the project. The first is the manual method, and the second is the automatic method. The automatic method is recommended, as it is much easier and faster to set up, and you can create a shortcut for quick access. However, if you prefer the manual method, feel free to proceed!

File Startup

In the project directory, you will find a file called run.sh. This is a shell script that will automatically start the project for you. You can simply double-click the file, and it will run the script for you.

Note: If you are using Windows, you can create a shortcut to the file and place it on your desktop for easy access. Additionally, you can create a batch file to run the script automatically.

Manual Startup

In the project directory, you will find a folder named project_atmospheric_x. This folder contains all the necessary files and folders to run the project. Open your terminal and navigate to the project_atmospheric_x folder. You can do this by running the following command:

1
2
cd path/to/your/directory/project_atmospheric_x
node index.js

Dashboard Setup


This may vary depending on your configuration if you’re hosting locally.

To access the dashboard, go to: http[s]://<localhost or IP address>:<port>

By default, the root account is activated with the following credentials:

  • Username: root
  • Password: root

If you have issues logging in, please check the following:

  • If you are using a web proxy such as nginx, make sure to forward all http traffic to https correctly.
  • Ensure websocket connections can be upgraded to wss if you are using.
  • Delete all cookies from your browser related to the domain / address you are using.
  • If all fails, you have an option to disable the portal via configurations. This is not recommended. (hosting.portal = false)

Security Notice: It is highly recommended that you change the default password. You can do this from the login page or within the dashboard under Account Settings.

If you wish to activate an account, go to the terminal window with AtmosphericX open and type the /activate command to activate the account. The command is as follows:

1
2
3
/activate <account username> <true> # This will activate the account
/del-account <account username> # This will delete the account
/set-role <account username> <0 or 1> # This will set the role of the account (0 = Default User, 1 = Administrator) | Default root is always 1 unless changed!

Feel free to explore more commands by typing /help.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
Memory: 21 MiB (5%)
┌─────────┬────────────────┬────────────────────────────┬─────────────────────────────────────────────────────┐
│ (index) │ Command        │ Description                │ Usage                                               │
├─────────┼────────────────┼────────────────────────────┼─────────────────────────────────────────────────────┤
│ 0       │ '/help''List all commands''No usage'                                          │
│ 1       │ '/activate''Activates an account''<username> <true/false>'                           │
│ 2       │ '/set-role'"Sets a user's role (0/1)"'<username> <0 = Default User | 1 = Administrator>' │
│ 3       │ '/del-account''Deletes an account''<username>'                                        │
│ 4       │ '/force''Force update all clients''No usage'                                          │
│ 5       │ '/clients''Get all clients''No usage'                                          │
│ 6       │ '/safe-close''Close app safely''No usage'                                          │
│ 7       │ '/debug-xml''Debug XML alerts''No usage'                                          │
│ 8       │ '/debug-raw''Debug raw alerts''No usage'                                          │
│ 9       │ '/debug-ugc''Debug raw alerts''No usage'                                          │
│ 10      │ '/clear''Clear console''No usage'                                          │
│ 11      │ '/memory-dump''Create a memory dump''No usage'                                          │
│ 12      │ '/hammer-time''Stress testing''No usage'                                          │
└─────────┴────────────────┴────────────────────────────┴─────────────────────────────────────────────────────┘

Updating AtmosphericX


To update AtmosphericX, you have two options: manually replacing all files or using the newly developed update.sh script. The best method depends on the type of update you need, as some updates may require a full reinstall while others can be applied more efficiently with the script.

Conclusion


You have successfully installed AtmosphericX and are now ready to explore its features. The project is designed to be user-friendly and customizable, allowing you to tailor it to your specific needs. If you have any questions or need assistance, feel free to reach out to the community or check the documentation for more information. A detailed breakdown of the configurations will come shortly but for now, you can explore on your own and see what you can find!

If you wish to know more about the features, head here.

This post is licensed under CC BY 4.0 by the author.