Solutions to common issues with Research Project Tracker.
Try these in order:
node --version # Should be v16.0.0 or higher
rm -rf node_modules package-lock.json
npm install
cd src/frontend
rm -rf node_modules package-lock.json
npm install
cd ../..
# Kill processes on ports 5050 and 5173
lsof -ti:5050 | xargs kill -9
lsof -ti:5173 | xargs kill -9
npm run dev
Problem: Node.js/npm not installed
Solution:
# macOS
brew install node
# Windows
# Download from https://nodejs.org/
# Linux (Ubuntu/Debian)
curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
sudo apt-get install -y nodejs
Problem: Insufficient permissions
Solution:
# Option 1: Fix npm permissions
mkdir ~/.npm-global
npm config set prefix '~/.npm-global'
echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc
source ~/.bashrc
# Option 2: Use npx
npx npm install
# Option 3: Use sudo (not recommended)
sudo npm install
Problem: Network issues or corrupted cache
Solution:
# Clear npm cache
npm cache clean --force
# Delete lock file and node_modules
rm -rf node_modules package-lock.json
rm -rf src/frontend/node_modules src/frontend/package-lock.json
# Reinstall
npm install
cd src/frontend && npm install && cd ../..
Problem: Missing dependencies
Solution:
# Install missing backend dependencies
npm install
# Install missing frontend dependencies
cd src/frontend
npm install
cd ../..
# If specific module is missing
npm install <module-name>
Problem: Backend port occupied
Solution:
# macOS/Linux
lsof -ti:5050 | xargs kill -9
# Windows (PowerShell)
netstat -ano | findstr :5050
taskkill /PID <process_id> /F
# Or change port in .env
echo "PORT=5051" > .env
Problem: Frontend port occupied
Solution:
# macOS/Linux
lsof -ti:5173 | xargs kill -9
# Windows (PowerShell)
netstat -ano | findstr :5173
taskkill /PID <process_id> /F
# Or edit src/frontend/vite.config.js
# Change port in server.port setting
Problem: Port conflict
Solution:
# Find and kill process
npx kill-port 5050 5173
# Or restart computer (nuclear option)
Problem: Frontend dependencies or build issue
Solution:
# Rebuild frontend
cd src/frontend
rm -rf node_modules dist .vite
npm install
npm run dev
Problem: Backend not running or wrong URL
Solution:
curl http://localhost:5050/api/health
# Should return: {"status":"ok"}
src/frontend/src/config.js:
export const API_URL = 'http://localhost:5050/api'
Problem: Multiple processes accessing database
Solution:
# Stop all instances
pkill -f "node.*backend"
# Remove lock file (if exists)
rm src/backend/data/tracker.db-lock
# Restart
npm run dev
Problem: Database not created or wrong path
Solution:
# Check if database exists
ls -l src/backend/data/tracker.db
# If not, app will create it automatically on first start
npm run dev
# Or specify path in .env
echo "DATABASE_PATH=src/backend/data/tracker.db" > .env
Problem: Database file is damaged
Solution:
# Check integrity
sqlite3 src/backend/data/tracker.db "PRAGMA integrity_check;"
# If corrupted, restore from backup
cp backups/tracker-latest.db src/backend/data/tracker.db
# If no backup, try to recover
sqlite3 src/backend/data/tracker.db ".recover" > recovered.sql
# Then create new database and import
Problem: Database schema not initialized
Solution:
# Delete database and let app recreate it
rm src/backend/data/tracker.db
# Restart app (will run migrations)
npm run dev
# Or run migrations manually
npm run migrate
Problem: File permissions
Solution:
# Fix permissions
chmod 644 src/backend/data/tracker.db
chmod 755 src/backend/data
# Check ownership
ls -l src/backend/data/tracker.db
# Fix ownership if needed
chown $USER:$USER src/backend/data/tracker.db
Problem: JavaScript error or build issue
Solution:
cd src/frontend
rm -rf dist node_modules
npm install
npm run build
npm run dev
Problem: Can’t connect to backend API
Solution:
src/backend/server.jsProblem: API call failing or database issue
Solution:
Problem: Browser compatibility or JavaScript error
Solution:
Problem: CSS not loading or color format issue
Solution:
Chrome/Edge:
Firefox:
Safari:
Some extensions interfere with the app:
Problem: Large database or browser performance
Solution:
# Archive completed tasks
# Delete old whiteboard notes
# Remove archived projects
du -h src/backend/data/tracker.db
# If >50MB, consider cleanup
sqlite3 src/backend/data/tracker.db "VACUUM;"
Close other browser tabs
Problem: Large dataset or slow query
Solution:
CREATE INDEX idx_tasks_project ON tasks(project_id);
CREATE INDEX idx_tasks_status ON tasks(status);
Problem: Memory leak or too many components
Solution:
Problem: Deleted by accident or sync issue
Solution:
cp backups/tracker-latest.db /tmp/test.db
# Compare databases to find missing data
Problem: Sync conflict or import issue
Solution:
# Remove duplicates (SQL)
sqlite3 src/backend/data/tracker.db
DELETE FROM tasks WHERE id NOT IN (
SELECT MIN(id) FROM tasks GROUP BY title, project_id
);
.quit
Problem: Database issue or accidental deletion
Solution:
Problem: URL format or copy-paste issue
Solution:
Problem: Local server not responding
Solution:
Problem: Cross-origin request blocked
Solution:
Edit src/backend/server.js to ensure CORS is enabled:
const cors = require('cors');
app.use(cors({
origin: 'http://localhost:5173',
credentials: true
}));
Problem: Request taking too long
Solution:
“App is damaged” warning:
xattr -cr /path/to/project_tracker
SQLite not found:
brew install sqlite
Port permission errors:
# Use ports above 1024 (5050, 5173 are fine)
# Or run with sudo (not recommended)
PowerShell script execution disabled:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
Path too long errors:
npm scripts not working:
Permission errors:
# Fix ownership
sudo chown -R $USER:$USER .
# Fix permissions
chmod -R 755 .
Missing dependencies:
# Ubuntu/Debian
sudo apt-get update
sudo apt-get install -y build-essential sqlite3
# Fedora/RHEL
sudo dnf install -y gcc-c++ sqlite
SELinux issues:
# Temporarily disable
sudo setenforce 0
# Or configure SELinux policy
Problem: File watcher not detecting changes
Solution:
# Increase file watcher limit (Linux)
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf
sudo sysctl -p
# Restart dev server
npm run dev
Problem: Compilation errors or missing dependencies
Solution:
# Clean everything
rm -rf node_modules src/frontend/node_modules
rm -rf dist src/frontend/dist
rm package-lock.json src/frontend/package-lock.json
# Reinstall
npm install
cd src/frontend && npm install && cd ../..
# Try build
npm run build
Problem: Test environment or outdated snapshots
Solution:
# Update dependencies
npm install
# Update snapshots
npm test -- -u
# Run specific test
npm test -- <test-name>
When asking for help, include:
node --version
npm --version
uname -a # or systeminfo on Windows
Backend Logs:
# If configured, check logs folder
cat logs/error.log
tail -f logs/error.log # Watch in real-time
Browser Console:
Database Queries:
# Enable query logging in backend
DEBUG=* npm run dev
**Describe the bug**
A clear description of what the bug is.
**To Reproduce**
Steps to reproduce:
1. Go to '...'
2. Click on '...'
3. See error
**Expected behavior**
What you expected to happen.
**Screenshots**
If applicable, add screenshots.
**Environment**
- OS: [e.g., macOS 12.0, Windows 11, Ubuntu 22.04]
- Node version: [e.g., 18.0.0]
- Browser: [e.g., Chrome 120]
**Additional context**
Any other relevant information.
⚠️ WARNING: This deletes all data!
# 1. Backup first!
cp src/backend/data/tracker.db ~/tracker-backup-$(date +%Y%m%d).db
# 2. Delete everything
rm -rf node_modules src/frontend/node_modules
rm -rf dist src/frontend/dist
rm package-lock.json src/frontend/package-lock.json
rm src/backend/data/tracker.db
# 3. Fresh install
npm install
cd src/frontend && npm install && cd ../..
# 4. Start fresh
npm run dev
# 5. Restore data from backup (if needed)
cp ~/tracker-backup-*.db src/backend/data/tracker.db
âś… Do:
❌ Don’t:
Weekly:
Monthly:
Still stuck? Open an issue with details!