Commit Graph
100 Commits
Author SHA1 Message Date
daniel156161 b45139f429 feat(mesh): support shared secret verification
- Allow the link API verifier to accept either mesh-scoped JWTs or a shared secret.
- Read SERVICELINK_MESH_SECRET from the environment for trusted Docker network calls.
- Update the servicelink submodule to include shared-secret verifier support.
2026-06-14 12:21:04 +02:00
daniel156161 60139f48f2 fix: harden storage proxy and error handling
Build and Push Docker Container / build-and-push (push) Successful in 2m3s
- Preserve Convex storage response headers while validating allowed component query parameters.
- Add fallback favicon routes for common browser and resource paths.
- Make Convex error tracking non-blocking so error pages still render when tracking fails.
- Return clearer 405 responses and map Convex outages to 503 or 504 with Retry-After headers.
- Route logging through wide-event-aware helpers to avoid duplicate logs when structured events are enabled.
2026-06-14 01:07:56 +02:00
daniel156161 ca85dc2265 refactor: use shared ServiceLink blueprint
- Replace the local /rpc Quart route with the shared ServiceLink blueprint helper.
- Move mesh scope enforcement into bearer_verifier via require_scope.
- Update ServiceLink tests to call the public handle_envelope and verify exports.
- Advance the servicelink submodule to include the shared CLI and RPC discovery work.
2026-06-14 00:32:27 +02:00
daniel156161 1dbf3b36ff chore(deps): refresh uv lock dependencies
Build and Push Docker Container / build-and-push (push) Successful in 1m17s
- Update the uv lockfile with the latest resolved dependency versions.
- Refresh security/auth-adjacent packages including cryptography, certifi, idna, and joserfc.
- Pull in current compatibility fixes for aiohappyeyeballs, yarl, werkzeug, wrapt, packaging, click, and propcache.
2026-06-14 00:14:36 +02:00
daniel156161 2982d44e55 feat: add servicelink RPC mesh endpoint
Build and Push Docker Container / build-and-push (push) Successful in 3m21s
- Add the servicelink submodule and register POST /rpc for node-to-node file operations.
- Require bearer tokens with the mesh scope and apply rate/body-size limits to RPC calls.
- Map database connectivity failures to the existing 504 database error flow, with JSON responses for API routes.
- Cover the new RPC handlers and database error handling with focused pytest tests.
- Bump the NanoShare package version to 1.21.0.
2026-06-13 23:59:35 +02:00
daniel156161 cb6422aacb chore: release NanoShare 1.20.0
Build and Push Docker Container / build-and-push (push) Successful in 2m4s
- Bump the application version from 0.1.0 to 1.20.0 using the project version scheme.

- Trim pyproject dependencies to direct root packages only and let uv.lock keep the resolved transitive set.

- Update the quart_common submodule to include the latest wide-event session context handling.

- Adjust NanoShare wide-event middleware expectations for the new session payload shape.
2026-05-13 22:01:06 +02:00
daniel156161 a73c0302a4 add joserfc package for new auth
Build and Push Docker Container / build-and-push (push) Successful in 1m14s
2026-05-13 21:01:30 +02:00
daniel156161 4cefc4e0ad update uv lock file to correct nameing
Build and Push Docker Container / build-and-push (push) Successful in 1m27s
2026-05-13 20:46:58 +02:00
daniel156161 5b619670ee update quart common with middleware pre_database_hooks
Build and Push Docker Container / build-and-push (push) Failing after 45s
2026-05-13 20:40:17 +02:00
daniel156161 9c731d6e67 feat(logging): add NanoShare wide event instrumentation
Build and Push Docker Container / build-and-push (push) Failing after 51s
- Register quart_common wide-event logging during app setup so every HTTP request emits one canonical structured event.

- Replace the inline security middleware with reusable quart_common security middleware wiring and move skip path configuration into app constants.

- Add NanoShare-specific wide-event context for health checks, auth/error handlers, file list/edit/delete/serve flows and upload outcomes.

- Rename runtime logging/project metadata from simple-picoshare to nanoshare where it is emitted in service context.

- Update my_helpers and quart_common submodules for Convex/wide-event integration and reusable security middleware support.

- Add NanoShare middleware tests covering safe user context, client IP enrichment, missing Convex handling and Convex security lookup failures.
2026-05-13 20:22:43 +02:00
daniel156161 42ce022d7b use new shared blueprint function
Build and Push Docker Container / build-and-push (push) Successful in 1m50s
2026-04-15 19:00:16 +02:00
daniel156161 6ead4b8541 update my_helpers submodule
Build and Push Docker Container / build-and-push (push) Successful in 1m29s
2026-04-15 18:49:58 +02:00
daniel156161 0b81d3d803 use login from quard_common 2026-04-15 18:49:17 +02:00
daniel156161 3d8d74785c fix file preview url
Build and Push Docker Container / build-and-push (push) Successful in 1m30s
2026-04-11 11:35:39 +02:00
daniel156161 1c58de68b6 update submodules 2026-04-11 11:35:20 +02:00
daniel156161 c28e4874d9 update my_helpers and remove useless newline into logger
Build and Push Docker Container / build-and-push (push) Successful in 1m23s
2026-04-06 14:25:48 +02:00
daniel156161 680e8dafff allow to strem upload to convex and reuse file id when upload error happend 2026-04-06 14:20:11 +02:00
daniel156161 b170fcfa98 use hypercorn from .venv folder 2026-04-01 22:11:17 +02:00
daniel156161 4773338ccc add convex health metrics route
Build and Push Docker Container / build-and-push (push) Successful in 2m4s
2026-04-01 21:32:28 +02:00
daniel156161 d9b7c88ccf fix login that it not shows 500 when authentik is to slow
Build and Push Docker Container / build-and-push (push) Successful in 1m51s
2026-04-01 21:17:01 +02:00
daniel156161 7b77387182 remove feature_flag_required for edit and info routes and buttons 2026-04-01 21:15:23 +02:00
daniel156161 65951a23ce use correct convex function and change how the edit html gets the file id 2026-04-01 21:05:07 +02:00
daniel156161 5bbc100d83 add info page for files 2026-04-01 20:39:25 +02:00
daniel156161 cf489c9f4a update submodules
Build and Push Docker Container / build-and-push (push) Failing after 11m40s
2026-04-01 19:45:39 +02:00
daniel156161 eeda177182 allow to edit files 2026-04-01 19:45:22 +02:00
daniel156161 0681bd398c not show pages that not exists yet
Build and Push Docker Container / build-and-push (push) Successful in 1m25s
2026-04-01 16:19:56 +02:00
daniel156161 ea4738ad06 use new quart_common functions 2026-04-01 16:17:30 +02:00
daniel156161 51f02ff5c8 add quart common submodule 2026-04-01 14:38:49 +02:00
daniel156161 b311bcae11 updateing my_helpers submodule 2026-04-01 13:44:55 +02:00
daniel156161 063ff3ca58 change convex from runtime to worker pool
Build and Push Docker Container / build-and-push (push) Successful in 1m52s
2026-03-28 13:21:09 +01:00
daniel156161 fc3a0219a0 update requirements 2026-03-28 13:15:40 +01:00
daniel156161 a6befb5aeb update actions to new version:
Build and Push Docker Container / build-and-push (push) Successful in 1m21s
- checkout: v6
- setup-buildx-action: v4
- login-action: v4
- build-push-action: v7
2026-03-10 08:59:17 +01:00
daniel156161 cc79e43b3c add /login and /logout paths to user auth
Build and Push Docker Container / build-and-push (push) Successful in 1m4s
2026-02-26 11:17:16 +01:00
daniel156161 367e9fbdb6 update requirements
Build and Push Docker Container / build-and-push (push) Successful in 1m17s
2026-02-26 10:39:40 +01:00
daniel156161 6137121209 update to get favicon from compontent by using the storage
Build and Push Docker Container / build-and-push (push) Successful in 1m36s
2026-02-16 12:02:52 +01:00
daniel156161 e8e37e8967 update requirements
Build and Push Docker Container / build-and-push (push) Successful in 1m18s
2026-02-11 12:44:20 +01:00
daniel156161 3cd30d3bad update requirements
Build and Push Docker Container / build-and-push (push) Successful in 1m42s
2026-02-09 10:09:06 +01:00
daniel156161 bea2d98fa6 update requirements
Build and Push Docker Container / build-and-push (push) Successful in 2m9s
2026-01-22 10:19:13 +01:00
daniel156161 d82ed3d43a fix adding of pasted text into convex and fix double paste problem
Build and Push Docker Container / build-and-push (push) Successful in 1m40s
2026-01-19 18:52:27 +01:00
daniel156161 e541000347 create Variables for to many 418 errors when they are a hacker or bot to get blocked
Build and Push Docker Container / build-and-push (push) Successful in 2m28s
2026-01-07 00:00:44 +01:00
daniel156161 b7ec488b44 add check if accessed storage file_id is a uuid and when not send them to a 404 error page
Build and Push Docker Container / build-and-push (push) Successful in 1m31s
2026-01-01 10:29:45 +01:00
daniel156161 9b69069367 update my_helpers submodule 2026-01-01 10:26:02 +01:00
daniel156161 6930bb3a61 remove not neaded safe_name and remove import of pathlib
Build and Push Docker Container / build-and-push (push) Successful in 1m20s
2025-12-29 09:17:42 +01:00
daniel156161 715af77a8c add code to increment blocked path access
Build and Push Docker Container / build-and-push (push) Successful in 1m21s
2025-12-29 09:12:52 +01:00
daniel156161 6280299770 add robots txt file
Build and Push Docker Container / build-and-push (push) Successful in 1m22s
2025-12-23 15:24:22 +01:00
daniel156161 a39862b5ab add testing files 2025-12-23 15:21:23 +01:00
daniel156161 ca7fbe9b80 update my_helpers and git ignore 2025-12-23 15:21:00 +01:00
daniel156161 729e7f5fca add protection that shares the data with my webside 2025-12-23 15:20:36 +01:00
daniel156161 0b2d635fd8 remove gel db completly with package
Build and Push Docker Container / build-and-push (push) Successful in 1m58s
2025-12-22 14:11:19 +01:00
daniel156161 e4171e4b73 delete gel db database schema 2025-12-22 14:03:53 +01:00
daniel156161 410e09a980 add working accessed quary and rename fields in html template
Build and Push Docker Container / build-and-push (push) Successful in 1m37s
2025-12-22 14:00:02 +01:00
daniel156161 fefda61c0b use new convex db base class and remove code that is already into the base class
Build and Push Docker Container / build-and-push (push) Successful in 1m21s
2025-12-22 11:43:05 +01:00
daniel156161 cdab1057cc remove pip package
Build and Push Docker Container / build-and-push (push) Successful in 1m38s
2025-12-22 02:04:30 +01:00
daniel156161 d635da039f move database and file storage from edgedb and disk to convex 2025-12-22 02:04:10 +01:00
daniel156161 88d72e3ee1 install convex package 2025-12-21 19:12:04 +01:00
daniel156161 6f0ad8bec2 move EdgeDB into db sub folder 2025-12-21 19:05:59 +01:00
daniel156161 2ea781c293 change gel db behafer to simple_scoping 2025-11-16 15:34:16 +01:00
daniel156161 51062d2e97 use uv python 3.13 debian slim as base image and not check config to use base image python and frozen to not check for updates of packages only lock file
Build and Push Docker Container / build-and-push (push) Successful in 58s
2025-10-31 14:17:43 +01:00
daniel156161 52f8e78e78 update dockerfile to use uv for packages and to run the server
Build and Push Docker Container / build-and-push (push) Successful in 1m27s
2025-10-31 13:44:50 +01:00
daniel156161 b93969a6c4 update my submodules 2025-10-31 13:42:57 +01:00
daniel156161 fea1cb12c5 add uv package manager files 2025-10-31 13:42:37 +01:00
daniel156161 f65ef26d42 create uploads volume in dockerfile
Build and Push Docker Container / build-and-push (push) Successful in 1m59s
2025-10-25 16:22:22 +02:00
daniel156161 340d72ca56 update repo path
Build and Push Docker Container / build-and-push (push) Successful in 1m30s
2025-10-25 16:11:39 +02:00
daniel156161 42c7047a92 show how many ids got deleted and when none got deleted
Build and Push Docker Container / build-and-push (push) Successful in 1m28s
2025-10-25 15:58:55 +02:00
daniel156161 fe4526bfe0 generate longer file_ids and retry if they is a collison in the database
Build and Push Docker Container / build-and-push (push) Successful in 1m31s
2025-10-25 15:45:13 +02:00
daniel156161 85407ad86f fix upload and redirect user to file list when upload successfully
Build and Push Docker Container / build-and-push (push) Successful in 1m38s
2025-10-25 15:11:17 +02:00
daniel156161 cd96e9135f fix not logging when user accessed they files and only show the file access from the user files and not all
Build and Push Docker Container / build-and-push (push) Successful in 1m37s
2025-10-25 14:54:00 +02:00
daniel156161 6f92fdefa9 add new accesslog menu point 2025-10-25 14:21:01 +02:00
daniel156161 31a3e25a16 move template page files into a better structure 2025-10-25 14:20:12 +02:00
daniel156161 501acce9ba don't log if the same user access they shared files
Build and Push Docker Container / build-and-push (push) Successful in 1m30s
2025-10-25 13:55:55 +02:00
daniel156161 0ff61a9e81 rename static template file folder to static and update middleware to not show access in logging 2025-10-25 13:54:06 +02:00
daniel156161 180fd1c071 add better rate limits
Build and Push Docker Container / build-and-push (push) Successful in 1m48s
2025-10-24 21:59:02 +02:00
daniel156161 6f85ee1856 fix submenu nav color
Build and Push Docker Container / build-and-push (push) Successful in 1m27s
2025-10-24 20:30:57 +02:00
daniel156161 a1c2b50b2a change api groupe to NanoShare
Build and Push Docker Container / build-and-push (push) Successful in 1m37s
2025-10-24 20:25:35 +02:00
daniel156161 e6b55e498d fix nav color
Build and Push Docker Container / build-and-push (push) Successful in 1m31s
2025-10-24 20:05:14 +02:00
daniel156161 a418a16b1a let chatgpt combine styles into one css file and use it
Build and Push Docker Container / build-and-push (push) Successful in 1m28s
2025-10-24 19:57:38 +02:00
daniel156161 ae4995f49c remove of upsert 404 error pages into database 2025-10-24 19:40:37 +02:00
daniel156161 b88c01c884 add fontawsome web fonts 2025-10-24 19:39:02 +02:00
daniel156161 8a90c1d85b add fontawsome and font for error page 2025-10-24 19:34:21 +02:00
daniel156161 fd20755f39 add error images 2025-10-24 11:11:38 +02:00
daniel156161 1b6689f111 import errorsAndBots to get server error messages
Build and Push Docker Container / build-and-push (push) Successful in 1m38s
2025-10-24 11:03:04 +02:00
daniel156161 84acbe28d1 add my favicons 2025-10-24 10:58:21 +02:00
daniel156161 cb07d0b95e update requirements 2025-10-24 10:57:35 +02:00
daniel156161 346ffc892c add .venv into gitignore file 2025-10-24 10:53:23 +02:00
daniel156161 5ee2156288 add dockerfile and gitea workflow 2025-10-24 10:51:10 +02:00
daniel156161 2eda108577 add code to convert datetime into localtime into file list and add access quarys 2025-10-24 10:50:19 +02:00
daniel156161 d04cd5f831 add empty file access quarys 2025-10-24 08:32:39 +02:00
daniel156161 8c2259d1de add routes and upload functions 2025-10-24 08:25:57 +02:00
daniel156161 175f382ec0 add database quarys 2025-10-24 08:21:34 +02:00
daniel156161 404bf263bf add code to start the server 2025-10-24 08:21:16 +02:00
daniel156161 3645c60214 add pages 2025-10-24 08:20:04 +02:00
daniel156161 5a6b558d9c remove file_content and make expires_at not required 2025-10-23 18:27:19 +02:00
daniel156161 4c308beca2 make file_content not required 2025-10-23 14:43:08 +02:00
daniel156161 430351035d fix database remove readonly propertys 2025-10-23 13:50:23 +02:00
daniel156161 fe8c5c45f7 add file_size into database 2025-10-23 12:58:47 +02:00
daniel156161 f071573ab3 add file content into file type 2025-10-23 11:45:49 +02:00
daniel156161 feea239720 add user id into file type 2025-10-23 11:41:36 +02:00
daniel156161 83b2ba7aa5 add requirements 2025-10-23 11:32:41 +02:00
daniel156161 3d31783d59 add files to ignore in repo 2025-10-23 11:32:24 +02:00
daniel156161 273123c71c add database schema 2025-10-23 11:32:05 +02:00