# Digital Garage Sale Website A minimalistic, printable-style website for hosting a digital garage sale. Built with Flask and Python. ## Features - List items for sale with descriptions and photos - Categorize items - Track item status (For Sale, On Hold, Sold) - Display contact info (email and Signal) - Provide donation link - Password-protected admin portal - Print catalog feature for physical distribution ## Installation 1. Clone this repository 2. Create a virtual environment and activate it: ``` python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate ``` 3. Install dependencies: ``` pip install -r requirements.txt ``` 4. Install wkhtmltopdf for PDF generation: ``` # Ubuntu/Debian sudo apt-get install wkhtmltopdf # Fedora/CentOS/RHEL sudo dnf install wkhtmltopdf # macOS with Homebrew brew install wkhtmltopdf # Windows # Download the installer from https://wkhtmltopdf.org/downloads.html ``` ## Configuration You can modify the `config.py` file to change: - The admin password (default: admin123) - Secret key - Database path - Max upload size For production, set these environment variables: - `SECRET_KEY`: A secure random string - `ADMIN_PASSWORD`: A strong password for admin access - `DATABASE_URL`: Optional database URL (defaults to SQLite) ## Usage 1. Initialize the database: ``` python init_db.py ``` 2. Run the application: ``` python app.py ``` 3. Visit http://127.0.0.1:5000 in your browser 4. Access the admin portal at http://127.0.0.1:5000/admin (password: admin123 by default) ## Admin Features - Add/remove categories - Add/remove items - Edit item descriptions and photos - Update item status - Generate printable PDF catalog - Update contact information ## License This project is open source and available under the MIT License.