mirror of
https://github.com/BetterSEQTA/BetterSEQTA-Plus.git
synced 2026-06-05 19:24:39 +00:00
Merge pull request #67 from SethBurkart123/script-dev
Add new scripts to simplify install and development
This commit is contained in:
@@ -47,32 +47,26 @@
|
||||
git clone https://github.com/SethBurkart123/EvenBetterSEQTA
|
||||
```
|
||||
|
||||
2. Install dependencies
|
||||
### Windows
|
||||
|
||||
Open the `install.bat` file located inside the `scripts` folder. Then after that is finished, open the `dev.bat` file.
|
||||
|
||||
### Mac & Linux
|
||||
|
||||
1. `cd` into the folder
|
||||
```
|
||||
npm install
|
||||
cd EvenBetterSEQTA/scripts
|
||||
```
|
||||
2. Make the scripts in the folder executable
|
||||
```
|
||||
chmod a+x *
|
||||
```
|
||||
3. Run the install and dev scripts
|
||||
```
|
||||
sh install.sh
|
||||
sh dev.sh
|
||||
```
|
||||
|
||||
3. Install webpack
|
||||
|
||||
```
|
||||
npm install -g webpack
|
||||
```
|
||||
|
||||
4. Run the dev script (it updates as you save files)
|
||||
|
||||
```
|
||||
npm run dev
|
||||
```
|
||||
|
||||
5. Install and run the dev script for the interface **at the same time** (all custom react components are a separate sub-repository)
|
||||
|
||||
```
|
||||
cd interface
|
||||
|
||||
npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
## Folder Structure
|
||||
|
||||
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
@echo off
|
||||
|
||||
REM Running install script
|
||||
call install.bat
|
||||
|
||||
cd ..
|
||||
|
||||
REM Try to get the version of pnpm
|
||||
pnpm --version > NUL 2>&1
|
||||
|
||||
REM Check the exit status of the previous command
|
||||
IF %ERRORLEVEL% EQU 0 (
|
||||
REM Running pnpm run build in both directories
|
||||
cd ./interface
|
||||
pnpm run build
|
||||
cd ..
|
||||
pnpm run build
|
||||
) ELSE (
|
||||
REM Running npm run build in both directories
|
||||
cd ./interface
|
||||
npm run build
|
||||
cd ..
|
||||
npm run build
|
||||
)
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Running install script
|
||||
./install.sh
|
||||
|
||||
cd ..
|
||||
|
||||
# Try to get the version of pnpm
|
||||
pnpm --version > /dev/null 2>&1
|
||||
|
||||
# Check the exit status of the previous command
|
||||
if [ $? -eq 0 ]; then
|
||||
# Running npm run dev in both directories
|
||||
cd ./interface
|
||||
pnpm run build
|
||||
cd ..
|
||||
pnpm run build
|
||||
else
|
||||
# Running npm run dev in both directories
|
||||
cd ./interface
|
||||
npm run build
|
||||
cd ..
|
||||
npm run build
|
||||
fi
|
||||
Executable
+21
@@ -0,0 +1,21 @@
|
||||
@echo off
|
||||
|
||||
cd ..
|
||||
|
||||
REM Try to get the version of pnpm
|
||||
pnpm --version >nul 2>&1
|
||||
|
||||
REM Check the exit status of the previous command
|
||||
if %ERRORLEVEL% == 0 (
|
||||
REM Running pnpm run dev in both directories
|
||||
cd interface
|
||||
start /b pnpm run dev
|
||||
cd ..
|
||||
pnpm run dev
|
||||
) else (
|
||||
REM Running npm run dev in both directories
|
||||
cd interface
|
||||
start /b npm run dev
|
||||
cd ..
|
||||
npm run dev
|
||||
)
|
||||
Executable
+21
@@ -0,0 +1,21 @@
|
||||
#!/bin/bash
|
||||
|
||||
cd ..
|
||||
|
||||
# Try to get the version of pnpm
|
||||
pnpm --version > /dev/null 2>&1
|
||||
|
||||
# Check the exit status of the previous command
|
||||
if [ $? -eq 0 ]; then
|
||||
# Running npm run dev in both directories
|
||||
cd ./interface
|
||||
pnpm run dev &
|
||||
cd ..
|
||||
pnpm run dev
|
||||
else
|
||||
# Running npm run dev in both directories
|
||||
cd ./interface
|
||||
npm run dev &
|
||||
cd ..
|
||||
npm run dev
|
||||
fi
|
||||
Executable
+34
@@ -0,0 +1,34 @@
|
||||
@echo off
|
||||
setlocal
|
||||
|
||||
:: Function to check if a program exists
|
||||
CALL :check_program_existence npm HAS_NPM
|
||||
CALL :check_program_existence pnpm HAS_PNPM
|
||||
|
||||
:: Checking and installing Node.js and npm if not present
|
||||
IF "%HAS_NPM%"=="false" (
|
||||
ECHO npm is not detected. Please install Node.js from https://nodejs.org/ and rerun this script.
|
||||
EXIT /B 1
|
||||
)
|
||||
|
||||
:: Checking and installing pnpm if not present
|
||||
IF "%HAS_PNPM%"=="false" (
|
||||
ECHO pnpm is not detected. Installing pnpm...
|
||||
npm install -g pnpm
|
||||
)
|
||||
|
||||
:: Installing dependencies using pnpm
|
||||
pnpm install
|
||||
CD interface
|
||||
pnpm install
|
||||
CD ..
|
||||
|
||||
ECHO Success! All dependencies installed.
|
||||
GOTO :EOF
|
||||
|
||||
:: Function to check if a program exists
|
||||
:check_program_existence
|
||||
SET "program=%~1"
|
||||
FOR /F "tokens=*" %%i IN ('where %program% 2^>NUL') DO (SET "%~2=true" & GOTO :EOF)
|
||||
SET "%~2=false"
|
||||
GOTO :EOF
|
||||
Executable
+67
@@ -0,0 +1,67 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Function to install pnpm
|
||||
install_pnpm() {
|
||||
if ! command -v pnpm >/dev/null 2>&1; then
|
||||
npm install -g pnpm
|
||||
fi
|
||||
pnpm_install
|
||||
}
|
||||
|
||||
# Function to install Node.js and npm
|
||||
install_npm() {
|
||||
# Detecting OS
|
||||
OS="unknown"
|
||||
case "$(uname -s)" in
|
||||
Darwin) OS="mac" ;;
|
||||
Linux) OS="linux" ;;
|
||||
esac
|
||||
|
||||
# Downloading and installing Node.js
|
||||
if [ "$OS" = "mac" ]; then
|
||||
# Install NVM (Node Version Manager) and Node.js
|
||||
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/master/install.sh | bash
|
||||
export NVM_DIR="$HOME/.nvm"
|
||||
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
|
||||
nvm install node
|
||||
elif [ "$OS" = "linux" ]; then
|
||||
# Using NodeSource Node.js Binary Distributions script for Linux
|
||||
curl -fsSL https://deb.nodesource.com/setup_current.x | sudo -E bash -
|
||||
sudo apt-get install -y nodejs
|
||||
fi
|
||||
}
|
||||
|
||||
# Function to install packages using pnpm
|
||||
pnpm_install() {
|
||||
pnpm install
|
||||
cd ./interface
|
||||
pnpm install
|
||||
cd ..
|
||||
}
|
||||
|
||||
# Function to install packages using npm
|
||||
npm_install() {
|
||||
npm install
|
||||
cd ./interface
|
||||
npm install
|
||||
cd ..
|
||||
}
|
||||
|
||||
cd ..
|
||||
|
||||
# Check for npm installation
|
||||
if ! command -v npm >/dev/null 2>&1; then
|
||||
echo "npm is not installed. Installing npm and Node.js..."
|
||||
install_npm
|
||||
fi
|
||||
|
||||
# Ask user for package manager preference
|
||||
echo "npm is installed."
|
||||
read -p "Do you wish to use pnpm? (y/n) " yn
|
||||
case $yn in
|
||||
[Yy]* ) install_pnpm;;
|
||||
[Nn]* ) npm_install;;
|
||||
* ) echo "Please answer yes or no."; exit 1;;
|
||||
esac
|
||||
|
||||
echo "Success! All dependencies installed."
|
||||
Reference in New Issue
Block a user