Skip to content

release: promote dev to main - #65

Merged
techwithanirudh merged 73 commits into
mainfrom
dev
Jul 31, 2026
Merged

release: promote dev to main#65
techwithanirudh merged 73 commits into
mainfrom
dev

Conversation

@techwithanirudh

Copy link
Copy Markdown
Owner

Promotes everything accumulated on dev since v4.1.0 to production.

52 commits, 25 files, +3357 / −3596. Merges cleanly — no conflicts against main.

Why now

The dynamic-config installer script lives in apps/docs/public/, so it ships with the docs site, which deploys from main. Until this lands, anyone running the installer still downloads the version that writes APP_PORT=0.0.0.0:3000 and breaks their Coolify restart (#62).

What's included

Area Highlights
Installer / docs APP_PORT fix for #62 (#63) — keeps the value numeric, validates the prompt, reuses an existing configured port
Dependencies Workspace-wide taze bump (#64), with TypeScript held at 6.x and the fumadocs family pinned
Style Releases 4.1.1 and 4.1.2; theme-selector rework and cleanup; sidebar responsiveness, width variables, and @layer base header fix
API Release-asset caching (ISR, response headers, transient-failure retries), lightningcss-wasm asset plugin
Docs site Landing page / FeatureCard accessibility work, stable screenshot keys, GitHub icon fix
Tooling commitlint, workspace turbo binary in CI, formatting passes

Commit-type breakdown: 15 chore, 13 fix*, 5 feat, 2 refactor.

Note on divergence

main carries one commit dev doesn't: c80be39 fix(api): cache GitHub release assets. It appears to be a hotfix applied straight to production and mirrored on dev as 5c3cbdf (same subject). The merge resolves without conflict, but worth a glance to confirm nothing in that hotfix gets reverted — it's the one thing here I couldn't verify from history alone.

Release flow

release.yml runs on push to dev, not main, so the changesets "Version Packages" PR and the GitHub Releases style artifacts are unaffected by this merge. This promotion is purely about getting the current dev state onto the production deploy target.


Generated by Claude Code

techwithanirudh and others added 30 commits February 3, 2026 16:27
The theming video guide was returning 403 from video.twimg.com due to
Twitter blocking hotlinked video content. Switched to YouTube embed
using vidstack's native YouTube provider.

https://claude.ai/code/session_014CCAXWeN4boNw9SWToiuU4

Co-authored-by: Claude <noreply@anthropic.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* fix: resolve select box picker icon alignment issue

* chore: re-add picker-icon height declaration

* feat: new version 4.0.7

* fix: change flex to inline-flex for alignment

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix: resolve spacing between project header

* feat: version 4.0.8

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Anirudh <70373803+techwithanirudh@users.noreply.github.com>
techwithanirudh and others added 28 commits May 6, 2026 10:28
… and styling

refactor: clean up unused imports and optimize feature data structure
fix: correct transition class name in TestimonialCard component
style: adjust padding and border styles in LandingPage component
# Conflicts:
#	apps/docs/src/app/(home)/_components/features/theme-showcase.tsx
# Conflicts:
#	apps/api/src/utils/fetcher.ts
…hidden class

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Ran taze recursively over every workspace and both pnpm catalogs.

TypeScript held at ^6.0.3: typescript-eslint 8.x refuses to load against
TS 7, which fails every lint task. Noted inline in pnpm-workspace.yaml.

The fumadocs family is pinned exactly at the versions dev already ran.
fumadocs-ui 16.13.0 dropped the useTranslations export that every
fumadocs-openapi 10.x imports, and fumadocs-mdx 15.2.0 emits a loader
shape fumadocs-core 16.9.0 does not read. Carets float back into the
incompatible range, so the pins are exact. Upgrading that family as a
coordinated set belongs in its own PR.

Also reformats sync-changelog.ts for prettier 3.9 and two sidebar
partials that were already unformatted on dev.
Coolify's compose uses APP_PORT in both `ports:` and `expose:`, and
`expose:` only accepts a bare port number. The installer defaulted
APP_PORT to 0.0.0.0:3000 and wrote it straight into .env, so the restart
failed with:

    strconv.ParseUint: parsing "0.0.0.0:3000": invalid syntax

Default APP_PORT to 3000 and validate the prompt: strip a bind address
if one is entered, reject non-numeric or out-of-range values, and reject
8000 since it is reserved for the Traefik dashboard entrypoint. A broken
value already in .env is flagged and replaced.

Re-running the installer now reuses an already-configured port as the
prompt default instead of silently moving it, with a carve-out for stock
Coolify's APP_PORT=8000 - offering that back would suggest a value the
validation loop always rejects.

Fixes #62
@vercel

vercel Bot commented Jul 31, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
coolify-tweaks-api Ready Ready Preview Jul 31, 2026 12:28pm
coolify-tweaks-web Ready Ready Preview Jul 31, 2026 12:28pm

@techwithanirudh
techwithanirudh merged commit a7bfeca into main Jul 31, 2026
11 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants