4.8 KiB
Testing the Smart Calendar Project in WSL
This document provides instructions for testing the Reclaim.ai clone (smart calendar project) in your WSL environment.
Prerequisites Verification
-
Verify WSL is running:
wsl --status -
Confirm Ubuntu distribution is accessible:
wsl -d Ubuntu --exec whoami
Project Setup in WSL
-
Enter your WSL environment:
wsl -d Ubuntu -
Navigate to the project directory:
cd ~/reclaim-clone -
Run the setup script to install dependencies:
chmod +x ~/setup_in_wsl.sh ~/setup_in_wsl.shOr follow manual steps below:
-
Install backend dependencies (Swift):
# Update package list sudo apt update # Install Swift prerequisites sudo apt install -y clang libicu-dev libxml2-dev libzip-dev libbsd-dev # For Ubuntu 20.04 or 22.04, install Swift using these commands: VERSION=$(lsb_release -rs) if [[ $VERSION == "20.04" || $VERSION == "22.04" ]]; then wget -q -O - https://swift.org/keys/all-keys.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/swift-archive.gpg echo "deb [signed-by=/etc/apt/trusted.gpg.d/swift-archive.gpg] https://download.swift.org/ubuntu$(echo $VERSION | sed 's/\.//') stable main" | sudo tee /etc/apt/sources.list.d/swift.list sudo apt update sudo apt install -y swift-lang fi -
Install frontend dependencies (Node.js & npm):
# Install Node.js curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - sudo apt-get install -y nodejs -
Install and configure PostgreSQL:
# Install PostgreSQL sudo apt update sudo apt install -y postgresql postgresql-contrib # Start PostgreSQL service sudo service postgresql start # Set up the reclaim_clone database sudo -u postgres createuser --superuser $(whoami) sudo -u postgres createdb reclaim_clone sudo -u postgres psql -d reclaim_clone -f ~/reclaim-clone/database/schema.sql -
Install client dependencies:
cd ~/reclaim-clone/client npm install cd ..
Testing the Backend (API)
-
Navigate to the project directory:
cd ~/reclaim-clone -
Test the backend (API server):
swift run -
Verify the backend is running:
- Open another terminal tab
- Enter WSL:
wsl -d Ubuntu - Test the API:
curl http://localhost:8080 - You should see a response from the server
Testing the Frontend (Web Client)
-
Navigate to the client directory:
cd ~/reclaim-clone/client -
Start the development server:
npm run dev -
Verify the frontend is running:
- Open a browser on the Windows host
- Navigate to
http://localhost:3000 - You should see the Reclaim.ai clone application
Testing Full Integration
-
Start both backend and frontend:
- Terminal 1:
cd ~/reclaim-clone && swift run - Terminal 2:
cd ~/reclaim-clone/client && npm run dev
- Terminal 1:
-
Access the application:
- In your Windows browser, go to
http://localhost:3000 - You should be able to use the full application with all features
- In your Windows browser, go to
Troubleshooting
-
If PostgreSQL service isn't starting:
sudo service postgresql start sudo systemctl enable postgresql -
If Swift isn't available:
- Check Ubuntu version:
lsb_release -a - Visit https://www.swift.org/download/ for Ubuntu-specific installation instructions
- Check Ubuntu version:
-
If the frontend can't connect to the backend:
- Verify both services are running
- Check that the backend is running on port 8080
- Verify the frontend is configured to connect to the correct backend URL
-
If you have permission issues:
# Fix file permissions if needed sudo chown -R $(whoami):$(whoami) ~/reclaim-clone
Verification Checklist
- WSL Ubuntu is accessible
- Project files are available in
~/reclaim-clone - Swift is installed and accessible (
swift --version) - Node.js is installed and accessible (
node --version) - PostgreSQL is installed and running
- Backend server starts without errors
- Frontend server starts without errors
- Application is accessible via browser at
http://localhost:3000 - All major features of the smart calendar app are functional
Additional Notes
- The project is now fully migrated to WSL and can be developed using Linux tools
- You can access the files from Windows at
\\wsl.localhost\Ubuntu\home\{username}\reclaim-clone - For development, you can use VS Code with the Remote-WSL extension for a better experience
- The application supports Trello-like kanban boards, calendar integration, and multi-user system as designed