89 lines
2.1 KiB
Bash
Executable File
89 lines
2.1 KiB
Bash
Executable File
#!/bin/bash
|
|
set -e
|
|
|
|
echo "🚀 Control Center UI - Setup Script"
|
|
echo "=================================="
|
|
|
|
# Colors for output
|
|
RED='\033[0;31m'
|
|
GREEN='\033[0;32m'
|
|
YELLOW='\033[1;33m'
|
|
BLUE='\033[0;34m'
|
|
NC='\033[0m' # No Color
|
|
|
|
# Function to print colored output
|
|
print_status() {
|
|
echo -e "${BLUE}[INFO]${NC} $1"
|
|
}
|
|
|
|
print_success() {
|
|
echo -e "${GREEN}[SUCCESS]${NC} $1"
|
|
}
|
|
|
|
print_warning() {
|
|
echo -e "${YELLOW}[WARNING]${NC} $1"
|
|
}
|
|
|
|
print_error() {
|
|
echo -e "${RED}[ERROR]${NC} $1"
|
|
}
|
|
|
|
# Check if we're in the right directory
|
|
if [ ! -f "Cargo.toml" ]; then
|
|
print_error "Please run this script from the control-center-ui directory"
|
|
exit 1
|
|
fi
|
|
|
|
print_status "Checking prerequisites..."
|
|
|
|
# Check for Rust
|
|
if ! command -v rustc &> /dev/null; then
|
|
print_error "Rust is not installed. Please install Rust first:"
|
|
echo "curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh"
|
|
exit 1
|
|
fi
|
|
|
|
# Check for Node.js
|
|
if ! command -v node &> /dev/null; then
|
|
print_error "Node.js is not installed. Please install Node.js first."
|
|
exit 1
|
|
fi
|
|
|
|
# Check for trunk
|
|
if ! command -v trunk &> /dev/null; then
|
|
print_status "Installing Trunk..."
|
|
cargo install trunk
|
|
fi
|
|
|
|
# Add wasm32 target
|
|
print_status "Adding wasm32-unknown-unknown target..."
|
|
rustup target add wasm32-unknown-unknown
|
|
|
|
# Install Node.js dependencies
|
|
print_status "Installing Node.js dependencies..."
|
|
pnpm install
|
|
|
|
# Build TailwindCSS
|
|
print_status "Building TailwindCSS..."
|
|
pnpm run css:build
|
|
|
|
# Check Rust dependencies
|
|
print_status "Checking Rust dependencies..."
|
|
cargo check
|
|
|
|
print_success "Setup completed successfully!"
|
|
echo ""
|
|
echo "🎉 Ready to develop!"
|
|
echo ""
|
|
echo "Available commands:"
|
|
echo " npm run dev - Start development server"
|
|
echo " npm run dev:open - Start development server and open browser"
|
|
echo " npm run build - Build for production"
|
|
echo " npm run css:watch - Watch TailwindCSS changes"
|
|
echo " npm run clean - Clean build artifacts"
|
|
echo ""
|
|
echo "Development server will be available at: http://localhost:3000"
|
|
echo "API proxy configured for: http://localhost:8080"
|
|
echo ""
|
|
print_status "Happy coding! 🦀"
|