# Bookmark Manager A modern, feature-rich bookmark management application with advanced organization, search, and synchronization capabilities. ## ๐Ÿ“ Project Structure ``` โ”œโ”€โ”€ ๐Ÿ“‚ assets/ # Static assets (favicon, test data, etc.) โ”œโ”€โ”€ ๐Ÿ“‚ backend/ # Node.js/Express backend API โ”œโ”€โ”€ ๐Ÿ“‚ docs/ # Documentation and guides โ”œโ”€โ”€ ๐Ÿ“‚ frontend/ # HTML, CSS, JavaScript frontend โ”œโ”€โ”€ ๐Ÿ“‚ scripts/ # Setup and utility scripts โ”œโ”€โ”€ ๐Ÿ“‚ tests/ # Test files and verification scripts โ”œโ”€โ”€ bookmarks.html # Test data (sample bookmarks) โ””โ”€โ”€ bookmarks_all_*.json # Test data (bookmark exports) ``` ## ๐Ÿš€ Quick Start ### Option 1: Docker Setup (Recommended) ```bash ./scripts/docker-setup.sh ``` ### Option 2: Manual Setup ```bash ./scripts/setup.sh ``` ## ๐Ÿ“– Documentation - **[Getting Started](docs/GETTING_STARTED.md)** - Complete setup guide - **[Docker Setup](docs/DOCKER_SETUP.md)** - Docker installation guide - **[Manual Setup](docs/MANUAL_SETUP.md)** - Manual installation steps - **[Troubleshooting](docs/TROUBLESHOOTING_SETUP.md)** - Common issues and solutions ## ๐Ÿ”ง Development ### Backend Development ```bash cd backend npm install npm run dev ``` ### Frontend Development The frontend files are in the `frontend/` directory. Open `frontend/index.html` in your browser or serve via the backend. ### Database Management ```bash cd backend npm run db:backup # Create database backup npm run db:status # Check database status npm run db:reset # Reset database (development only) ``` ## ๐Ÿงช Testing Test files are organized in the `tests/` directory: - **Integration Tests**: `tests/test_*.html` - **Unit Tests**: `tests/test_*.js` - **Verification Scripts**: `tests/verify_*.js` ## ๐Ÿ“Š Features - **Advanced Search & Filtering** - **Folder Organization** - **Link Testing & Validation** - **Import/Export (HTML, JSON)** - **Duplicate Detection** - **Analytics & Statistics** - **Mobile-Responsive Design** - **Security Features** - **Database Backup/Restore** ## ๐Ÿ”’ Security - JWT-based authentication - Email verification - Password reset functionality - Rate limiting - Input validation - CSRF protection ## ๐Ÿ“ฑ Mobile Support Fully responsive design with touch-friendly interactions and mobile-optimized UI. ## ๐Ÿค Contributing 1. Fork the repository 2. Create a feature branch 3. Make your changes 4. Run tests 5. Submit a pull request ## ๐Ÿ“„ License This project is licensed under the MIT License.