Commit Graph

48 Commits

Author SHA1 Message Date
4c60e3cf4a Update asset verification and user experience
All checks were successful
renovate / renovate (push) Successful in 2m8s
CI / build (push) Successful in 10m24s
- Added SRI hash injection during frontend build to improve security.
- Updated ESLint configuration to include 'navigator' as a global variable.
- Introduced a new `settingsStore` to manage user preferences for asset verification.
- Enhanced `SoftwareCard` and `VerificationModal` components to display contributor information and security checks.
- Updated `verificationStore` to handle expanded toast notifications for detailed verification steps.
- Implemented a new `CodeBlock` component for displaying code snippets with syntax highlighting.
- Improved API documentation and added new endpoints for fetching software and asset details.
2025-12-27 16:29:05 -06:00
3605710875 Add asset verification feature with user preferences
- Introduced a new verification system for asset downloads, allowing users to choose whether to verify assets before downloading.
- Added a `VerificationModal` component to handle the verification process and user preferences.
- Implemented a `verificationStore` to manage the state of verification toasts and progress.
- Updated `SoftwareCard` to trigger background verification based on user preferences stored in local storage.
- Created `VerificationToasts` component to display real-time verification status and progress.
- Enhanced the WASM verifier integration to support the new verification workflow.
2025-12-27 15:46:52 -06:00
5fb00a9118 Update Content Security Policy to allow 'wasm-unsafe-eval' for enhanced WebAssembly support 2025-12-27 15:35:41 -06:00
d710ad6b4f Add WASM verifier loading and asset verification functions
- Introduced loadVerifier function to load the WASM verifier from the server.
- Added verifyAsset function to validate asset data against an expected SHA256 hash using the loaded verifier.
- Ensured compatibility with server-side rendering by checking for the window object.
2025-12-27 15:32:54 -06:00
e2c53de3c3 Add Go module file for software-verifier 2025-12-27 15:32:47 -06:00
c58384285a Add SHA256 computation and verification functionality
- Implemented computeSHA256 function to generate hex-encoded SHA256 hashes.
- Added verifySHA256 function to validate input data against expected hash in a WebAssembly context.
- Created main_test.go to include unit tests for computeSHA256 with various input cases.
2025-12-27 15:32:42 -06:00
fe67dc4d3e Add verification feature for asset downloads
- Integrated a new VerificationModal component to handle asset verification.
- Updated SoftwareCard to manage download verification state and trigger the modal.
- Added WASM execution script and binary for client-side verification.
- Included necessary imports and state management for verification process in SoftwareCard.
- Enhanced app.html to load the WASM execution script.
2025-12-27 15:32:34 -06:00
c6e9c779f5 Update ESLint configuration by adding additional global variables and updating ignore patterns
- Added global variables: MouseEvent, Blob, WebAssembly, Uint8Array, ArrayBuffer, and URL.
- Updated the ignore patterns to include 'static/**' in the ESLint configuration.
2025-12-27 15:32:18 -06:00
6178ffd7f9 Update Makefile to support WASM build and testing
- Added new targets for building and testing the WASM verifier.
- Updated the 'all' target to include 'build-wasm'.
- Modified 'build-frontend' to depend on 'build-wasm'.
- Introduced 'test-wasm' for running tests on the WASM verifier.
- Clean target now removes WASM output directory.
2025-12-27 15:32:00 -06:00
834a4a8c96 Update README.md 2025-12-27 15:31:42 -06:00
ivan
9d75a1b144 Merge pull request 'Update ghcr.io/renovatebot/renovate Docker tag to v37.440.7' (#2) from renovate/ghcr.io-renovatebot-renovate-37.x into master
All checks were successful
CI / build (push) Successful in 1m27s
renovate / renovate (push) Successful in 7m19s
Reviewed-on: #2
2025-12-27 20:47:02 +00:00
Renovate Bot
0c6938f03a Update ghcr.io/renovatebot/renovate Docker tag to v37.440.7
All checks were successful
CI / build (pull_request) Successful in 1m22s
2025-12-27 20:45:14 +00:00
ivan
00cbfcd4a5 Merge pull request 'Configure Renovate' (#1) from renovate/configure into master
All checks were successful
CI / build (push) Successful in 1m27s
renovate / renovate (push) Successful in 10m36s
Reviewed-on: #1
2025-12-27 20:32:22 +00:00
Renovate Bot
9bc61b494a Add renovate.json
All checks were successful
CI / build (pull_request) Successful in 1m13s
2025-12-27 20:30:27 +00:00
b3ceb9be26 Add Renovate workflow
All checks were successful
CI / build (push) Successful in 1m19s
renovate / renovate (push) Successful in 25m8s
2025-12-27 14:29:07 -06:00
58f0947630 Update 2025-12-27 14:28:54 -06:00
fa923fe600 hardcode domains
All checks were successful
CI / build (push) Successful in 55s
2025-12-27 13:34:17 -06:00
1404b76bca Update ALLOWED_ORIGINS configuration in docker-compose file
All checks were successful
CI / build (push) Successful in 1m16s
- Modified the ALLOWED_ORIGINS environment variable in docker-compose.coolify.yaml to remove the default fallback to '*', ensuring it only uses the specified SERVICE_URL_SOFTWARE_STATION value for improved security and configurability.
2025-12-27 12:41:56 -06:00
52df2d76c1 Update CORS configuration in main.go
- Updated the handling of the ALLOWED_ORIGINS environment variable to ensure a default value of '*' is used when the variable is empty, improving the flexibility of CORS settings.
2025-12-27 12:41:51 -06:00
50521bf070 Refactor environment variable handling in main.go
All checks were successful
CI / build (push) Successful in 54s
- Updated command-line flag definitions to use a helper function for retrieving environment variables, allowing for more flexible configuration.
- Changed default values for Gitea server URL, config path, UA blocklist path, and server port to be set via environment variables.
- Modified CORS middleware to accept allowed origins from an environment variable, enhancing security and configurability.
2025-12-27 12:08:41 -06:00
beab4e1e81 Add coolify docker compose 2025-12-27 12:08:33 -06:00
ec0b45ae8b Update Dockerfile for improved build efficiency and metadata
- Updated the Dockerfile to utilize cache mounts for npm and Go module installations, enhancing build performance.
- Changed the base image for the final stage to a more minimal runtime image.
- Simplified the application description in the image metadata.
- Ensured proper ownership for copied data and cache directories in the final image.
2025-12-27 12:08:20 -06:00
75af761d55 Update README
All checks were successful
CI / build (push) Successful in 54s
2025-12-27 11:39:37 -06:00
d9be7c07bf Update README
All checks were successful
CI / build (push) Successful in 54s
2025-12-27 11:34:41 -06:00
aa55beab4a Add build arguments for Docker image and update Makefile
- Introduced VERSION, BUILD_DATE, and VCS_REF variables to the Makefile for enhanced Docker image metadata.
- Added a new docker-build target to facilitate building the Docker image with the specified metadata, improving version tracking and documentation.
2025-12-27 11:34:11 -06:00
c9c74c778e Update Docker configuration and add metadata to Dockerfile
- Removed README.md and LICENSE from .dockerignore for inclusion in Docker image.
- Introduced a new docker-compose.yml file to define the application services and their configurations.
- Enhanced Dockerfile with build arguments and detailed image metadata for better documentation and version tracking.
2025-12-27 11:34:06 -06:00
50e636693c Add Dockerfile for multi-stage build process
- Introduced a Dockerfile that implements a multi-stage build process for the application.
- The first stage builds the frontend using Node.js and pnpm.
- The second stage compiles the Go binary with embedded frontend assets.
- The final stage creates a minimal runtime image, setting up necessary environment variables and exposing the application on port 8080.
2025-12-27 11:27:23 -06:00
64c04ceda6 Add authentication and admin panel features to README
All checks were successful
CI / build (push) Successful in 54s
- Updated README.md to include new features: authentication for certain software/containers and an admin panel, enhancing the documentation of the platform's capabilities.
2025-12-27 11:22:16 -06:00
e4eabfd36a Update legal documents to version 2.0 with last updated date
All checks were successful
CI / build (push) Successful in 53s
- Added versioning and last updated date to the legal disclaimer, privacy policy, and terms of service documents for better clarity and tracking of changes.
2025-12-27 03:43:07 -06:00
dffb05389f Revise legal documents for clarity and compliance
All checks were successful
CI / build (push) Successful in 55s
- Updated the legal disclaimer to include detailed sections on warranty, liability, integrity, and upstream content.
- Enhanced the privacy policy to align with GDPR, specifying data processing, anonymization, and user rights.
- Revised terms of service to clarify fair use, anti-abuse measures, and the disclaimer of warranties.
2025-12-27 03:40:58 -06:00
12b0944aa8 Update privacy policy and data collection details
All checks were successful
CI / build (push) Successful in 54s
- Updated the privacy policy to clarify data collection practices, including the use of User Agent and Client Hints for bot detection.
- Added TLS Metadata for improved bot detection capabilities.
- Introduced a persistent identifier (_ss_uid cookie) for long-term anti-abuse protection, while emphasizing the use of a single first-party cookie for security context without third-party trackers.
2025-12-27 03:35:48 -06:00
bd7fd93a00 Improve request fingerprinting and security middleware
- Updated GetRequestFingerprint to include additional headers (Sec-CH-UA-Platform, Sec-CH-UA-Mobile) and UID cookie for improved uniqueness.
- Modified SecurityMiddleware to set a new UID cookie if not present, enhancing user tracking and security.
- Adjusted test cases to reflect changes in fingerprinting logic and ensure accurate validation of request parameters.
2025-12-27 03:35:36 -06:00
621b54092d Update .dockerignore and .gitignore to include additional test-related files
All checks were successful
CI / build (push) Successful in 54s
- Added .salt, test-hashes.json, and test_handlers_hashes.json to both .dockerignore and .gitignore for improved file management and to prevent unnecessary files from being included in builds and version control.
2025-12-27 03:30:30 -06:00
9f28e7b328 Remove unused gitea-dark.webp icon from static icons directory 2025-12-27 03:30:23 -06:00
2f0af4c988 Refactor API and background updater functionality
- Updated the StartBackgroundUpdater function to accept a callback for software list updates, improving flexibility.
- Refactored the API handlers to utilize a proxied software list, enhancing data handling and response efficiency.
- Introduced a new method for refreshing the proxied software list, ensuring accurate data representation.
- Added unit tests for API handlers to validate functionality and response correctness.
2025-12-27 03:30:18 -06:00
84489a572a Add avatar cache management and cleanup functionality
All checks were successful
CI / build (push) Successful in 54s
- Introduced constants for avatar cache limit and cleanup interval.
- Implemented a background cleanup process to manage the avatar cache size, removing the oldest files when the limit is exceeded.
- Updated the AvatarHandler to refresh the modification time of cached avatars for better cache management.
2025-12-27 03:21:24 -06:00
f2f2f88047 Update localization files for German, Italian, and Russian translations
- Reformatted JSON entries for improved consistency and readability.
- Ensured translations for various software-related messages are correctly structured across all three languages.
- Maintained existing translations while enhancing overall clarity for user feedback.
2025-12-27 03:21:11 -06:00
20332ed8c4 Update frontend dependencies and version to 0.2.0
All checks were successful
CI / build (push) Successful in 54s
- Bumped version from 0.1.0 to 0.2.0 in package.json.
- Updated dependencies:
  - @sveltejs/kit to 2.49.2
  - svelte to 5.46.1
  - svelte-check to 4.3.5
  - vite to 7.3.0
2025-12-27 03:17:43 -06:00
348e1687da Add custom error page component for handling errors
- Created a new Svelte component `+error.svelte` to display user-friendly error messages.
- The component differentiates between 404 errors and other error statuses, providing appropriate feedback and navigation options.
- Integrated localization support for error messages using `svelte-i18n`.
2025-12-27 03:17:10 -06:00
d47e634a4a Add user agent blocklist file for bot detection
- Created a new file `ua-blocklist.txt` to store URLs for bad user agent lists.
- The lists will be fetched every 24 hours and cached for improved bot detection.
2025-12-27 03:15:56 -06:00
b068b7a984 Update localization files to include new error messages and descriptions
- Added translations for error handling and page not found messages in German, English, Italian, and Russian JSON files.
- Enhanced user experience by providing clearer feedback for unexpected errors and navigation issues.
2025-12-27 03:15:50 -06:00
ab3c188e91 Add RSS feed generation and improve security features
- Implemented structured RSS feed generation using XML encoding.
- Enhanced URL registration by incorporating a random salt for hash generation.
- Introduced a bot blocker to the security middleware for improved bot detection.
- Updated security middleware to utilize the new bot blocker and added more entropy to request fingerprinting.
2025-12-27 03:15:42 -06:00
f08e148b2f Add bot blocker functionality and update security middleware
- Introduced a bot blocker initialized with a user agent blocklist.
- Updated the security middleware to utilize the new bot blocker in both main and test files.
- Enhanced error handling for API requests to return a proper 404 response when content is not found.
2025-12-27 03:15:31 -06:00
9a3afd61ed Update README.md 2025-12-27 03:15:22 -06:00
b886551201 Remove outdated README.md file from frontend directory 2025-12-27 03:15:11 -06:00
8e8fbf27b7 Add CI workflow configuration for building and testing
All checks were successful
CI / build (push) Successful in 1m48s
2025-12-27 03:01:21 -06:00
1d5d6aacb4 0.1.0 2025-12-27 02:57:25 -06:00
63a6f8f7dc first commit 2025-12-27 02:54:15 -06:00