{"id":29565621,"url":"https://github.com/vikash0064/unsnap.in","last_synced_at":"2026-04-11T03:32:16.695Z","repository":{"id":304329711,"uuid":"1010660408","full_name":"vikash0064/Unsnap.in","owner":"vikash0064","description":"AI-enhanced image upload and sharing platform with authentication, previews, and secure management.","archived":false,"fork":false,"pushed_at":"2025-07-12T11:03:15.000Z","size":247,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-03T17:34:05.352Z","etag":null,"topics":["ai","authentication","css","html5","image-gallery","image-upload","javascript","mysql","open-source-project","php","responsive-design","tailwindcss","webapp"],"latest_commit_sha":null,"homepage":"https://unsnap.ct.ws","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vikash0064.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-06-29T14:47:15.000Z","updated_at":"2025-07-12T11:03:18.000Z","dependencies_parsed_at":"2025-07-13T04:17:05.530Z","dependency_job_id":null,"html_url":"https://github.com/vikash0064/Unsnap.in","commit_stats":null,"previous_names":["vikash0064/unsnap.in"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/vikash0064/Unsnap.in","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vikash0064%2FUnsnap.in","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vikash0064%2FUnsnap.in/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vikash0064%2FUnsnap.in/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vikash0064%2FUnsnap.in/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vikash0064","download_url":"https://codeload.github.com/vikash0064/Unsnap.in/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vikash0064%2FUnsnap.in/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31668046,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-10T17:19:37.612Z","status":"online","status_checked_at":"2026-04-11T02:00:05.776Z","response_time":54,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","authentication","css","html5","image-gallery","image-upload","javascript","mysql","open-source-project","php","responsive-design","tailwindcss","webapp"],"created_at":"2025-07-18T21:34:55.587Z","updated_at":"2026-04-11T03:32:16.670Z","avatar_url":"https://github.com/vikash0064.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"  # 📸 Unsnap – AI-Enhanced Image Upload and Sharing Platform\n\n[Live Site 🌐](https://unsnap.ct.ws)\n\n**Unsnap** is a feature-rich, secure, and responsive image uploading and sharing platform built using modern web technologies. Designed for scalability and simplicity, it offers seamless image uploads, real-time previews, user authentication (including Google OAuth), and image categorization with CSRF protection.\n\n---\n\n## 🚀 Features\n\n- ✅ **User Authentication** (Email login + Google OAuth)\n- 📤 **Secure Image Upload** with file validation \u0026 thumbnail creation\n- 👤 **Profile Dashboard** to view, delete, and manage uploads\n- 🏷️ **Category-based Sorting** (e.g., Nature, Travel, Art)\n- 🔐 **CSRF Protection** and Session Management\n- 📱 **Responsive Design** with Tailwind CSS\n- 📸 **Image Viewer** with modal previews and action buttons\n- 🧠 **AI-Ready Backend** (Gemini API or GPT-based tagging can be integrated)\n- 🧩 **Modular Codebase** with separate concerns (auth, display, upload)\n\n---\n\n## 🧑‍💻 How to Use Unsnap\n\nFollow these simple steps to start uploading and managing your images on **Unsnap**:\n\n### 🟢 1. Visit the Website  \nGo to the live site:  \n👉 [https://unsnap.ct.ws](https://unsnap.ct.ws)\n\n### 🔐 2. Sign Up or Log In\n\n- 📨 Use your **email and password** to register or log in.\n- 🔒 Session-based authentication keeps your uploads secure.\n- *(Optional: If Google Login is enabled, use \"Login with Google\")*\n\n### 📤 3. Upload Images\n\n- Click on the **Upload** button.\n- Choose an image from your device.\n- Add optional **category** or **caption** (if available).\n- Click **Submit** to upload the image.\n- The system will:\n  - Validate file type and size\n  - Create a **thumbnail**\n  - Store the image securely in the backend\n\n### 🖼️ 4. View Uploaded Images\n\n- Go to your **Saved Images** or **Profile** page\n- All your uploaded images will be displayed with:\n  - Thumbnail preview\n  - Category\n  - Upload date\n  - Delete option\n\n### 🗑️ 5. Manage Your Uploads\n\n- Click the 🗑️ (Delete) icon to remove an image from your gallery.\n- You can only delete images that **you uploaded**.\n\n### 🔐 6. Security and Privacy\n\n- All uploads are **user-specific** and **protected by CSRF tokens**\n- Only authenticated users can upload, view, and delete their images\n- Your session will expire after inactivity to enhance security\n\n---\n\n## 🧰 Tech Stack\n\n| Layer        | Technology                                |\n|--------------|-------------------------------------------|\n| **Frontend** | HTML5, Tailwind CSS, JavaScript           |\n| **Backend**  | PHP 8.x                                   |\n| **Database** | MySQL                                     |\n| **Hosting**  | Free PHP Hosting (`ct.ws` domain via InfinityFree) |\n| **Auth**     | Sessions, Google OAuth via Firebase/Auth |\n| **Security** | CSRF Tokens, Input Sanitization, MIME Validation |\n\n---\n\n## 🧱 Folder Structure\nunsnap/\n├── index.php              # Home page with login/register UI\n├── upload.php             # Handles image upload logic\n├── saved.php              # Displays uploaded images for logged-in user\n├── logout.php             # Destroys session and logs out user\n├── README.md              # Project documentation\n├── LICENSE                # Open-source license (MIT)\n├── .gitignore             # Prevents sensitive files from being pushed\n│\n├── includes/              # PHP includes (logic \u0026 backend utilities)\n│   ├── db.php             # Database connection settings\n│   ├── auth.php           # User session \u0026 login check\n│   ├── csrf.php           # CSRF token generation/verification\n│   └── functions.php      # Common helper functions (file name clean-up, etc.)\n│\n├── assets/                # All frontend styling \u0026 scripts\n│   ├── css/\n│   │   └── style.css      # Tailwind or custom CSS\n│   ├── js/\n│   │   └── script.js      # JS for modal, preview, interactivity\n│   └── images/            # Static images like logos or icons\n│\n├── uploads/               # Uploaded image storage\n│   ├── full/              # Original uploaded images\n│   └── thumbnails/        # Auto-resized thumbnail previews\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvikash0064%2Funsnap.in","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvikash0064%2Funsnap.in","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvikash0064%2Funsnap.in/lists"}