89 lines
1.8 KiB
Markdown
89 lines
1.8 KiB
Markdown
# Getting Started - Bookmark Manager
|
|
|
|
## Quick Setup (5 minutes)
|
|
|
|
### 1. Prerequisites
|
|
- **Node.js** (v16+): [Download here](https://nodejs.org/)
|
|
- **PostgreSQL** (v12+): [Download here](https://www.postgresql.org/download/)
|
|
|
|
### 2. Database Setup
|
|
```bash
|
|
# Create databases
|
|
psql -U postgres
|
|
CREATE DATABASE bookmark_manager;
|
|
CREATE DATABASE bookmark_manager_test;
|
|
\q
|
|
```
|
|
|
|
### 3. Automatic Setup
|
|
```bash
|
|
# Run the setup script
|
|
./setup.sh
|
|
```
|
|
|
|
### 4. Manual Setup (if script fails)
|
|
```bash
|
|
# Install dependencies
|
|
cd backend
|
|
npm install
|
|
|
|
# Configure environment
|
|
cp .env.example .env
|
|
# Edit .env with your database credentials
|
|
|
|
# Initialize database
|
|
npm run db:init
|
|
|
|
# Start the application
|
|
npm run dev
|
|
```
|
|
|
|
### 5. Open Application
|
|
Open your browser to: **http://localhost:3000**
|
|
|
|
## First Steps
|
|
|
|
1. **Register**: Create a new account
|
|
2. **Verify Email**: Check your email for verification link
|
|
3. **Login**: Sign in with your credentials
|
|
4. **Add Bookmarks**: Start organizing your bookmarks!
|
|
|
|
## Testing the Application
|
|
|
|
```bash
|
|
cd backend
|
|
|
|
# Run all tests
|
|
npm test
|
|
|
|
# Run specific test types
|
|
npm run test:unit # Unit tests
|
|
npm run test:integration # API tests
|
|
npm run test:security # Security tests
|
|
```
|
|
|
|
## Common Issues
|
|
|
|
**Database Connection Error**
|
|
- Make sure PostgreSQL is running
|
|
- Check your `.env` file credentials
|
|
- Ensure databases exist
|
|
|
|
**Port 3000 in Use**
|
|
- Change PORT in `.env` file
|
|
- Or kill the process: `lsof -i :3000` then `kill -9 <PID>`
|
|
|
|
**Email Verification Not Working**
|
|
- Configure email settings in `.env`
|
|
- For Gmail, use App Passwords
|
|
- Check spam folder
|
|
|
|
## Need Help?
|
|
|
|
- Check the full [README.md](README.md) for detailed documentation
|
|
- Review logs in `backend/logs/`
|
|
- Run diagnostics: `npm run db:diagnostics`
|
|
|
|
---
|
|
|
|
**You're ready to start bookmarking! 🎉** |