diff --git a/.github/assets/screenshot.png b/.github/assets/screenshot.png new file mode 100644 index 0000000..24cd15a Binary files /dev/null and b/.github/assets/screenshot.png differ diff --git a/.github/assets/social-preview.png b/.github/assets/social-preview.png new file mode 100644 index 0000000..059331a Binary files /dev/null and b/.github/assets/social-preview.png differ diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 4612cfc..5b98d83 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -2,6 +2,10 @@ name: Build, Lint, and Release on: push: + # Tags cut a release; main runs the test job only, so the CI badge in the + # README reflects the state of the default branch rather than "no status". + branches: + - main tags: - 'v*' pull_request: diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 0000000..47cd4cf --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,79 @@ +# Changelog + +All notable changes to this project are documented here. + +The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), +and this project adheres to [Semantic Versioning](https://semver.org/). + +Downloads for every release are on the +[releases page](https://github.com/killerwolf/QuickToss/releases). + +## [Unreleased] + +### Changed + +- The PDF viewer is no longer part of the initial bundle — it loads the first time + you actually open a PDF, so the app starts faster for everyone who never previews one. +- The app icon fills more of its canvas, so it reads better at Dock and Finder sizes. + +## [1.4.0] - 2026-08-20 + +### Fixed + +- When a new version is available, QuickToss now tells you and links to the release + page. Previously it tried to install the update itself and failed, because + installing in place needs the code signing tracked in + [#7](https://github.com/killerwolf/QuickToss/issues/7). +- Updater diagnostics now survive a restart. The log directory wasn't being created, + so nothing was written to it. + +## [1.3.0] - 2026-08-20 + +### Added + +- Release-candidate tags (`v1.3.0-rc.1`) publish as GitHub prereleases, which the + updater ignores — so a candidate build no longer reaches everyone's install. + +### Fixed + +- Update failures are surfaced in the UI instead of failing silently, and the + auto-updater writes diagnostics to a log file. + +## [1.2.0] - 2026-08-20 + +### Changed + +- New app icon: a stack of cards mid-swipe. + +### Fixed + +- The icon build script ran but produced nothing usable. + +## [1.1.0] - 2026-08-20 + +### Added + +- QuickToss checks for a newer version on launch and tells you when one exists. + +## [1.0.0] - 2026-08-20 + +### Added + +- Separate Intel (`x64`) and Apple Silicon (`arm64`) builds, so each Mac gets a + native binary instead of one architecture running under translation. + +## [0.9.0] - 2025-09-24 + +### Added + +- First release. Pick a folder, then swipe or key through it one file at a time — + left to toss, right to keep. Previews for images, PDFs, plain-text formats and + video; `Cmd+Z` undoes any decision; tossed files go to the system Trash. + +[Unreleased]: https://github.com/killerwolf/QuickToss/compare/v1.4.0...HEAD +[1.4.0]: https://github.com/killerwolf/QuickToss/compare/v1.3.0...v1.4.0 +[1.3.0]: https://github.com/killerwolf/QuickToss/compare/v1.2.0...v1.3.0 +[1.2.0]: https://github.com/killerwolf/QuickToss/compare/v1.1.0...v1.2.0 +[1.1.0]: https://github.com/killerwolf/QuickToss/compare/v1.0.0...v1.1.0 +[1.0.0]: https://github.com/killerwolf/QuickToss/compare/v0.9.0...v1.0.0 +[0.9.0]: https://github.com/killerwolf/QuickToss/releases/tag/v0.9.0 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..085c4a9 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2025-2026 Hamdi LAADHARI + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index 0fc88ff..d29f166 100644 --- a/README.md +++ b/README.md @@ -2,11 +2,22 @@ Clean out a cluttered folder the way you'd swipe through a dating app: one file at a time, left to toss, right to keep. +

+ latest release + total downloads + build status + licence: MIT +

+ +

+ QuickToss on the first of eight files in a folder: an image preview with its name, size and date, a red toss button and a green keep button. +

+ Point QuickToss at a folder — `Downloads` is the usual suspect — and it shows you each file with a preview so you can decide in a second. Deleted files go to the system Trash, and every action can be undone, so there's nothing to be nervous about. ## Download -Grab the latest version from the [releases page](https://github.com/killerwolf/QuickToss/releases/latest). +Grab the latest version from the [releases page](https://github.com/killerwolf/QuickToss/releases/latest). What changed in each one is in [CHANGELOG.md](CHANGELOG.md). QuickToss currently ships for **macOS** only: diff --git a/package-lock.json b/package-lock.json index b1a52e5..e33506a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "quicktoss", - "version": "1.0.0", + "version": "1.4.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "quicktoss", - "version": "1.0.0", + "version": "1.4.0", "hasInstallScript": true, "license": "MIT", "dependencies": { @@ -44,6 +44,9 @@ "vite": "^5.0.8", "vitest": "^3.2.7", "wait-on": "^7.2.0" + }, + "engines": { + "node": ">=20" } }, "node_modules/@adobe/css-tools": { diff --git a/package.json b/package.json index ba9fa89..4c1dda4 100644 --- a/package.json +++ b/package.json @@ -1,9 +1,19 @@ { "name": "quicktoss", - "version": "1.0.0", - "description": "A Tinder-like file organization tool for efficient file cleanup", + "version": "1.4.0", + "description": "Clean out a cluttered folder the way you'd swipe through a dating app: one file at a time, left to toss, right to keep.", "main": "dist/main.js", - "homepage": "./", + "homepage": "https://github.com/killerwolf/QuickToss", + "repository": { + "type": "git", + "url": "git+https://github.com/killerwolf/QuickToss.git" + }, + "bugs": { + "url": "https://github.com/killerwolf/QuickToss/issues" + }, + "engines": { + "node": ">=20" + }, "scripts": { "dev": "concurrently \"npm run dev:vite\" \"npm run dev:electron\"", "dev:vite": "vite --port 3000", @@ -35,7 +45,7 @@ "electron", "productivity" ], - "author": "QuickToss Team", + "author": "Hamdi LAADHARI", "license": "MIT", "devDependencies": { "@biomejs/biome": "^2.2.4",