-
b200498a10
fix: correct CI badge URLs to use Gitea workflow badge format
main
Sebastian Krüger
2026-03-05 12:57:47 +01:00
-
1369d5c228
fix: copy packages/types into backend Docker build
Sebastian Krüger
2026-03-05 12:51:52 +01:00
-
e200514347
refactor: move flyout to left side, restore logo, remove close button
Sebastian Krüger
2026-03-05 12:34:57 +01:00
-
d7057c3681
refactor: improve mobile flyout header
Sebastian Krüger
2026-03-05 11:44:23 +01:00
-
d820a8f6be
chore: relative uploads dir
Sebastian Krüger
2026-03-05 11:05:30 +01:00
-
9bef2469d1
refactor: rename RecordedEvent fields to snake_case
Sebastian Krüger
2026-03-05 11:04:36 +01:00
-
97269788ee
feat: add shared @sexy.pivoine.art/types package and fix type safety across frontend/backend
Sebastian Krüger
2026-03-05 11:01:11 +01:00
-
c6126c13e9
feat: add backend logger matching frontend text format
Sebastian Krüger
2026-03-05 10:22:49 +01:00
-
fd4050a49f
refactor: remove directus.ts shim, import directly from api
Sebastian Krüger
2026-03-05 10:19:05 +01:00
-
efc7624ba3
style: apply prettier formatting to all files
Sebastian Krüger
2026-03-04 22:27:54 +01:00
-
18116072c9
feat: add formidable ESLint + Prettier linting setup
Sebastian Krüger
2026-03-04 22:24:55 +01:00
-
741e0c3387
docs: update README for custom backend replacing Directus
Sebastian Krüger
2026-03-04 22:01:46 +01:00
-
662e3e8fe2
fix: model join date used join_date but API returns date_created
Sebastian Krüger
2026-03-04 21:42:34 +01:00
-
fa159feffa
fix: remove black border below video controls
Sebastian Krüger
2026-03-04 21:41:07 +01:00
-
124f0bfb22
fix: video src used movie.id but movie is already the UUID string
Sebastian Krüger
2026-03-04 21:27:06 +01:00
-
df89cc59f5
fix: use preview transform for home page video teasers
Sebastian Krüger
2026-03-04 21:24:59 +01:00
-
845e3df223
fix: image transforms — preserve aspect ratio, increase quality
Sebastian Krüger
2026-03-04 21:22:30 +01:00
-
05cb6a66e3
fix: image transforms via Sharp, model photos crash, video duration
Sebastian Krüger
2026-03-04 20:56:33 +01:00
-
273aa42510
fix: serve assets via DB lookup to resolve file path correctly
Sebastian Krüger
2026-03-04 20:40:22 +01:00
-
1e930baccb
fix: resolve GraphQL request hang in Fastify integration
Sebastian Krüger
2026-03-04 20:31:18 +01:00
-
012bb176d9
fix: convert Web API ReadableStream to Node.js Readable for Fastify
Sebastian Krüger
2026-03-04 20:11:08 +01:00
-
ed7ac0c573
fix: downgrade nanoid to v3 for CommonJS compatibility
Sebastian Krüger
2026-03-04 19:43:44 +01:00
-
4565038be3
fix: cast recording duration float to integer in data migration
Sebastian Krüger
2026-03-04 19:39:52 +01:00
-
fbafbeca5d
fix: pass tags as native arrays not JSON strings in data migration
Sebastian Krüger
2026-03-04 19:36:04 +01:00
-
480369aa4e
fix: correct column names in data migration script to match actual Directus schema
Sebastian Krüger
2026-03-04 19:33:33 +01:00
-
ceb57ec1c4
fix: copy root node_modules to runner stage in backend Dockerfile
Sebastian Krüger
2026-03-04 19:29:36 +01:00
-
4f8271217c
fix: set CI=true for pnpm install in backend Dockerfile
Sebastian Krüger
2026-03-04 19:26:25 +01:00
-
046689e363
fix: set CI=true for pnpm install -rP in frontend Dockerfile
Sebastian Krüger
2026-03-04 19:19:45 +01:00
-
9ba71239b7
fix: use correct 'file' parameter in docker/build-push-action (not 'dockerfile')
Sebastian Krüger
2026-03-04 19:09:58 +01:00
-
757bbe9e3b
fix: skip buttplug Rust build in backend Dockerfile via --ignore-scripts
Sebastian Krüger
2026-03-04 19:08:48 +01:00
-
73f7a4f2f0
ci: replace combined workflow with separate frontend and backend workflow files
Sebastian Krüger
2026-03-04 19:05:54 +01:00
-
3bd8d95576
ci: disable registry cache for backend build to fix poisoned buildcache
Sebastian Krüger
2026-03-04 18:57:39 +01:00
-
14e816241d
ci: split frontend and backend into separate jobs to fix image tag mix-up
Sebastian Krüger
2026-03-04 18:53:16 +01:00
-
4102f9990c
fix: switch backend to CommonJS, generate Drizzle migrations, add migrate script
Sebastian Krüger
2026-03-04 18:42:58 +01:00
-
2565e6c28b
fix: resolve pnpm frozen-lockfile error and argon2 native build
Sebastian Krüger
2026-03-04 18:19:52 +01:00
-
493ddd7e78
chore: remove packages/bundle (Directus extension)
Sebastian Krüger
2026-03-04 18:11:22 +01:00
-
33dd076a50
ci: add backend image build to docker workflow
Sebastian Krüger
2026-03-04 18:10:06 +01:00
-
9d7afbe1b5
feat: replace Directus with custom Node.js GraphQL backend
Sebastian Krüger
2026-03-04 18:07:18 +01:00
-
de16b64255
fix: use env object from \$env/dynamic/public instead of named imports
Sebastian Krüger
2026-03-04 17:19:26 +01:00
-
1e69d0b158
fix: create env placeholder file inline in Dockerfile for dynamic public env
Sebastian Krüger
2026-03-04 17:09:42 +01:00
-
865787fb45
feat: switch PUBLIC_API_URL and PUBLIC_URL to dynamic env for runtime configurability
Sebastian Krüger
2026-03-04 17:01:37 +01:00
-
3915dbc115
fix: .env inclusion
Sebastian Krüger
2026-03-04 16:47:54 +01:00
-
83ca9d4fb5
chore: update all dependencies to latest versions
Sebastian Krüger
2026-03-04 16:43:56 +01:00
-
225b9d41f5
chore: clean up repo and fix docker compose configuration
Sebastian Krüger
2026-03-04 16:36:49 +01:00
-
ad83fb553a
feat: switch to dynamic env for Umami to allow runtime configuration
Sebastian Krüger
2026-02-21 11:47:32 +01:00
-
2be36a679d
fix: resolve buttplug-wasm build error by using Vec and slices
Sebastian Krüger
2026-02-21 11:33:12 +01:00
-
75d4b4227c
chore: update buttplug dependencies to commit fad6c9d
Sebastian Krüger
2026-02-21 11:29:36 +01:00
-
2277e4f686
fix: resolve buttplug-wasm build error by using as_ref() for JS arrays
Sebastian Krüger
2026-02-21 11:13:53 +01:00
-
13c6977e59
feat: add PUBLIC_UMAMI_SCRIPT variable and integrate into layout
Sebastian Krüger
2026-02-21 11:05:30 +01:00
-
c85fa7798e
chore: remove Letterspace newsletter integration and all LETTERSPACE_* variables
Sebastian Krüger
2026-02-21 10:56:43 +01:00
-
ce30eca574
chore: new imprint address
Sebastian Krüger
2026-02-21 10:37:19 +01:00
-
6724afa939
fix: use correct Directus preset parameter for asset transforms
Sebastian Krüger
2026-02-16 08:42:38 +01:00
-
e744d1e40f
fix: clean up stale sorter entries and fix battery reactivity
buttplug-10
Sebastian Krüger
2026-02-07 13:07:13 +01:00
-
82be8b8859
fix: resolve device listing bug after buttplug v10 upgrade
Sebastian Krüger
2026-02-07 12:11:53 +01:00
-
27d86fff8b
fix: vite wasm rollup
Sebastian Krüger
2026-02-06 15:00:04 +01:00
-
6ea4ed1933
feat: upgrade buttplug package to protocol v4 and WASM v10
Sebastian Krüger
2026-02-06 14:46:47 +01:00
-
fed2dd65e5
feat: display play count on video detail page
Sebastian Krüger
2025-11-20 19:23:36 +01:00
-
756d767d59
fix: align sharing button height with like button
Sebastian Krüger
2025-11-20 19:20:30 +01:00
-
ac09d544d4
fix: query actual likes count from database instead of cached field
Sebastian Krüger
2025-11-20 19:17:32 +01:00
-
2c010c98d0
fix: use registry cache instead of GitHub Actions cache for Gitea compatibility
Sebastian Krüger
2025-11-15 18:09:46 +01:00
-
3bdf58a827
fix: rename GITEA_TOKEN to REGISTRY_TOKEN to avoid reserved name conflict
Sebastian Krüger
2025-11-15 18:02:48 +01:00
-
105efc9a47
chore: remove GitHub workflows in favor of Gitea Actions
Sebastian Krüger
2025-11-15 17:19:28 +01:00
-
da474f9a61
feat: add Gitea Actions workflow for Docker build and push
Sebastian Krüger
2025-11-15 17:14:25 +01:00
-
08328c47f7
fix: query correct junction table for model photos
Valknar XXX
2025-11-13 08:52:01 +01:00
-
eed4318e49
fix: increase models grid max-width for better layout
Valknar XXX
2025-11-13 08:07:16 +01:00
-
f45a9678f7
fix: correct photo data structure access in model page
Valknar XXX
2025-11-13 07:21:06 +01:00
-
8937f71260
fix: update models grid from 2 to 3 columns on medium screens
Valknar XXX
2025-11-13 07:03:09 +01:00
-
036fc35c9a
fix: add custom endpoint for getVideoBySlug to bypass permissions
Valknar XXX
2025-11-03 17:13:56 +01:00
-
b2aa8a57ca
fix: import directusApiUrl in services.ts
Valknar XXX
2025-10-29 07:23:46 +01:00
-
5333bfd87a
fix: use native fetch for getVideoBySlug to fix authenticated SSR
Valknar XXX
2025-10-29 05:36:16 +01:00
-
cd4c33a3f2
fix: safely handle empty/null models array in getVideoBySlug
Valknar XXX
2025-10-29 04:33:52 +01:00
-
d9b48ff490
fix: use slug field for model lookup instead of name concat
Valknar XXX
2025-10-29 03:23:03 +01:00
-
0b07da8e64
fix: replace Directus SDK with native fetch for featured content
Valknar XXX
2025-10-28 23:54:56 +01:00
-
10ab7a65df
fix: ensure home page data is serializable
Valknar XXX
2025-10-28 23:41:40 +01:00
-
b883867b15
feat: add recording sharing and community features
Valknar XXX
2025-10-28 14:32:39 +01:00
-
9002eb768b
fix: simplify tags handling in recordings endpoint
Valknar XXX
2025-10-28 14:07:29 +01:00
-
47016a2d5c
fix: parse tags JSON string in recording creation
Valknar XXX
2025-10-28 13:44:35 +01:00
-
6b3d770182
feat: display gamification stats on user profile page
Valknar XXX
2025-10-28 13:36:32 +01:00
-
064894b8bb
feat: add gamification hooks, leaderboard UI, and translations
Valknar XXX
2025-10-28 13:29:34 +01:00
-
8f09244188
feat: implement recording-focused gamification system
Valknar XXX
2025-10-28 13:21:51 +01:00
-
74e68c32dc
feat: implement user profile pages with comment avatar links
Valknar XXX
2025-10-28 12:54:45 +01:00
-
9503f8d0aa
fix: add authentication guard to /me page
Valknar XXX
2025-10-28 12:17:58 +01:00
-
b8fdcb1193
fix: remove featured filter from models endpoint
Valknar XXX
2025-10-28 11:30:14 +01:00
-
6232cc58f0
fix: add null safety to logout button component
Valknar XXX
2025-10-28 11:21:42 +01:00
-
cd6e8b7b3d
feat: migrate all API calls to custom bundle endpoints
Valknar XXX
2025-10-28 11:17:51 +01:00
-
a2240f8315
feat: implement Knex-based /sexy/models endpoint
Valknar XXX
2025-10-28 11:08:53 +01:00
-
0b08ce5900
wip: add custom /sexy/models endpoint to bypass permissions
Valknar XXX
2025-10-28 11:04:34 +01:00
-
3f38633863
feat: add comprehensive analytics dashboard for content creators
Valknar XXX
2025-10-28 10:42:06 +01:00
-
54f0758196
feat: add sorting by likes/plays and display stats on model profiles
Valknar XXX
2025-10-28 10:37:16 +01:00
-
51dd7a159a
feat: implement video likes and play tracking UI
Valknar XXX
2025-10-28 10:31:06 +01:00
-
da267eb66d
feat: add video likes and plays tracking system
Valknar XXX
2025-10-28 10:29:02 +01:00
-
e891e0de0a
fix: replace bits-ui Select with native HTML select
Valknar XXX
2025-10-28 05:51:43 +01:00
-
a959186de7
fix: proper state binding for Select component in device mapping
Valknar XXX
2025-10-28 05:48:25 +01:00
-
6e94ec99bc
fix: select component reactivity in device mapping dialog
Valknar XXX
2025-10-28 05:45:16 +01:00
-
9d9f72dec1
feat: add device mapping UI for playback compatibility
Valknar XXX
2025-10-28 05:41:37 +01:00
-
50ceda94b7
feat: add recording playback functionality
Valknar XXX
2025-10-28 05:28:04 +01:00
-
a252da6d9d
fix: recording save functionality and authentication
Valknar XXX
2025-10-28 05:16:36 +01:00
-
5bd2d9c215
fix: handle undefined user name in UI components
Valknar XXX
2025-10-28 04:48:41 +01:00
-
e226a47028
fix: Docker Compose volume mapping and schema compatibility
Valknar XXX
2025-10-28 04:38:48 +01:00
-
aa4e376490
feat: add buttplug device recording feature (Phase 1 & 2)
Valknar XXX
2025-10-28 04:05:09 +01:00