1.3.3 (2026-02-23)
- config: resolve oauth env vars at runtime (#342) (69e936b)
- document: conflict compare with external url (#346) (dc1c2db)
- tree: reselect root item to update status (8fc2b3e)
- tree: root item sync (69f9c6b)
1.3.2 (2026-02-13)
- build: avoid shiki and mdc loading on server (855e9e5)
- data: do not add empty arrays (dad2c79)
- editor: edge case image insertion (#331) (c5cd61e)
- editor: remove extra style elements (#329) (5963ff8)
- editor: remove style components (#328) (452cd2f)
- lint: trailing space (1916e02)
- logs: remove duplicate title (3dfd626)
- performance: stop simultaneous convertion (bbaed55)
- perf: shiki lazy loading (#332) (c68b0b1)
- tests: skip hook for pristine files (621eda5)
- vite: monaco import warning (8e9de2b)
1.3.1 (2026-02-09)
1.2.1 (2026-02-09)
- ai: prevent meta commentary in completions and improve prompts (ecef17e)
1.3.0 (2026-02-09)
- auth: add support for Studio SSO server + env variables detection (#320) (53d9764)
- editor: ai completion speed improvements (#322) (0ae35dc)
- editor: ai powered content extension (#305) (8aba1f4)
- i18n: Add Bengali (bn) and Thai (th) locales (#297) (dde8866)
- i18n: Add Khmer (km) locale (#309) (ced73f1)
- ai: multiple improvements (2a799be)
- app: do not expose variable from app (0ed82ad)
- files: sanitize names to prevent unintended directory creation (#312) (c131d77)
- sso: enforce PKCE + move the server utils to correct dir (#323) (b2dc60d)
- state: active local storage (acf1a9a)
- types: server ai location (5f81a2a)
1.2.0 (2026-01-23)
- editor: duplicated boolean props (#299) (ff99c64)
- editor: separate classes by dots (#301) (be0a4d2)
- ItemCardForm: ensure fsPath has no leading path (55eddac)
- lint: no any (d14b94b)
- state: create custom shared composable (3ff2a1f)
- tree: sort items numerically by prefix then name (#293) (7ceacde)
1.1.1 (2026-01-19)
- auth: studio cookie handling (#284) (4df7f56)
- ItemCardForm: do not slugify whole path (#290) (fab454f)
- source: replace prefix without leading slash (#291) (81450ab)
1.1.0 (2026-01-14)
- ** editor:** add textarea input in form editor (#264) (d20a7c4)
- auth: add login and logout server runtime hooks (#263) (3b98f54)
- editor: support datetime input + fix date input (#234) (67f659c)
- form: detect potential media/icon selection + improve object inputs (#255) (de38ed8)
- frontmatter: remove hidden fields before passing document to studio editor (#254) (b0f0827)
- i18n: add Kurdish (ckb) locale (#270) (ac15b8c)
- i18n: add Vietnamese (vi) locale (#256) (399e465)
- meta: add component filtering in editor (#260) (185ab76)
- tiptap: add insertion actions to drag actions (#246) (c33a2dd)
- app: reduce z-index to let other modal show over it (#238) (a740855)
- collection: handle collection prefix (#242) (d09d54e)
- document: respect
contentHeadingoption (#215) (ca79f02) - form: arrays edition (#257) (e10ed37)
- itemCardForm: slugify file path (#228) (830fc03)
- tiptapToMdc: unwrap paragraphs inside slot (#247) (a7a0d92)
1.0.0 (2026-01-05)
- i18n: add Czech (cs) locale (#223) (b803597)
- i18n: add Korean (ko) locale (#220) (92fec9e)
- i18n: add Russian (ru) locale (#216) (b97e352)
- i18n: define locale in
UApp(#225) (a761b26)
1.0.0-beta.3 (2025-12-24)
1.0.0-beta.2 (2025-12-23)
- editor: binding extension (#201) (29632e1)
- editor: handle props edition for components (#195) (8819fe9)
- editor: handle span-style feature with toolbar button (#193) (5498cf7)
- gitlab: normalize instance URL by removing trailing slashes (#190) (ae29291)
- i18n: add Chinese Traditional (zh-tw) locale (#199) (bbe9b9a)
- auth: remove build error message with git token for custom auth (#200) (fed5a5d)
- git: use PAT owner as main authors + add co-authors (#203) (ff78007)
- i18n: typo in polish translation (#204) (bd89373)
- types: useless ts error comment (3371f8b)
1.0.0-beta.1 (2025-12-18)
- auth: provide utility for custom authentication (#181) 3e1b64f
- i18n: add Norwegian (nb-no) locale (#187) f8fcb7b
- i18n: add Norwegian Nynorsk (nn-no) translation (#188) c59a26c
- sidebar: apply left margin style to fixed elements (#189) 6e97ce8
1.0.0-beta.0 (2025-12-16)
- editor: emoji integration (#171) c4d0655
- editor: form editor for YAML/JSON and frontmatter (#178) 9aa2a8d
- editor: upload and display video (#162) 594a5b0
- i18n: add Arabic (ar) locale (#168) b50f513
- i18n: add Ukrainian (ua) locale (#177) 2b4ee9a
- media: add AVIF to the supported image file types (#174) d3d0e6c
- state: set tiptap editor mode as default 3cf5541
- document: avoid page fields for data types (#173) ca77b97
- document: do not apply
pagemeta information indatacollections (#167) a607691 - document: ignore empty lines in compare (#169) 0453f4e
- editor: relative links must no be targetted as _blank (#170) 8d18ec7
- module: optimize debug and extend as deps of nuxt studio (#175) eb5334e
1.0.0-alpha.4 (2025-12-10)
- auth: Google OAuth (#146) (e068543)
- i18n: add Dutch (nl) locale (#150) (c9a11ba)
- i18n: add Finnish (fi) locale (#157) (0a1d2d4)
- i18n: add Japanese (ja) locale (#147) (fa0164e)
- i18n: Add translations to TipTap editor UI (#148) (74a798e)
- i18n: improve Bulgarian (bg) translations (#154) (4634e9c)
- preview: use highlight options from
@nuxtjs/mdcto highlight code snippets (#158) (55bedd4)
- auth: improve OAuth state token validation (#160) (9992865)
- auth: only display detected provider on
_studiopage (98e0fd2) - editor: handle markdown files as
datacollection (#153) (511b2f5) - item: do not close form on extension selection (#161) (9f17b4f)
- item: do not unset action in progress on extension selection (#155) (b54b0dd)
- preferences: resolve double-toggle event conflict on debug switch (#166) (c5b69ed)
- sw: unregister on sign out (#164) (b261da9)
- tree: autfocus input on creation (b1e5ac3)
1.0.0-alpha.3 (2025-12-03)
- actions: use ellipsis in toolbar + add git repo (#120) (7e1ab68)
- editor: tiptap integration with Nuxt UI Editor (#125) (420791d)
- i18n: add Bulgarian (bg) locales (#121) (ada76a7)
- i18n: add Chinese (zh) locale (#143) (77a2848)
- i18n: add Farsi (fa) locale (#134) (75d9494)
- i18n: add German (de) locale (#119) (1ac2d5e)
- i18n: add Italian (it) locale (#142) (1ed9622)
- i18n: add Polish (pl) locales (#124) (2d95889)
- i18n: Add Portuguese Brazil (pt-br) locales (#138) (a936cf2)
- i18n: add spanish (es) locale (#123) (e28bd6a)
- i18n: Footer dev mode text + Edit Page button (#108) (0ee6023)
- locales: add Indonesian (id) locale (#141) (3e49d2b)
- dev: service-worker and dev api timeout (#145) (ae2717a)
- editor: data type edition (#117) (93fe90c)
- improve document equality check (2850168)
1.0.0-alpha.2 (2025-11-17)
- app: add internationalization (i18n) support (#70) (5d2099c)
- dev: enable studio in development mode without auth (#94) (953c364)
- github: allow defining custom redirect_url (#52) (1d249a3)
- i18n: diff toggle button in MDC alert (#106) (5ee50fe)
- i18n: internationalize Monaco completion snippets (#102) (044cb07)
- oauth: add
repository.privateoption for public repos (#49) (5a40a43) - oauth: gitlab support (#72) (43106e7)
- review: ability to resize review card editor (#66) (9161170)
- app: only navigate to treeitems with routePath (#74) (ba7ce0b)
- app: use local element to render overlay elements (#86) (136d1cd)
- content: handle item prefix as string (#93) (75f56ad)
- dev: load development host on dev mode (#107) (6dac3e3)
- dev: remove unnecessary utils import (#73) (93eb23b)
- editor: create portal for monaco overflow widgets (#67) (1a5e48b)
- editor: prevent indefinite editor resizing (#62) (48b03b1)
- editor: watch for colorMode change on diff-editor (#64) (a2d0a13)
- i18n: add missing trad (8351e61)
- module: ignore leading slash on source prefix check (554218a)
- studio: prevent mixing active files between media and content pages (#63) (b82cf7a)
- styles: improve dark mode text contrast (#101) (1f2e861)
- success: wording space (79ed12b)
1.0.0-alpha.1 (2025-11-05)
- add support for redirect query parameter (0d77460)
- app: edit this page button (392d1d3)
- deps: rollback unstorage to previous patch (5aa09f9)
- diff: compare date values with timestamp (#46) (5be5e03)
- fallback to user login (c74b1dd)
- service worker auto install (dc7ddb6)
- service-worker: handle vercel images (#48) (22ae221)
- actions: handle loading state for deletion (3d9e1dd)
- actions: rename folder and fix medias (#31) (78b89f3)
- actions: revert directory (221f84f)
- app: big refactor for great UX (#22) (791af4c)
- app: enable manifest and detect new deployment (32505ad)
- app: keep location state (67c4827)
- content: display warning if automatic parsing detected (5878b7e)
- content: files actions (#9) (0b4a4b3)
- content: integrate
modern-monacofor file edition (#7) (efa2f10) - content: refactor and revert action (#13) (40efbc2)
- content: set status in tree directories (a363249)
- content: show document sync and edit this page button (#16) (301fc20)
- context: create folder action (#25) (59c57d8)
- context: delete actions (#19) (9ad324d)
- context: duplicate and rename (#23) (aed8a2d)
- development web component (11d629f)
- dev: sync with file-system in development mode (#32) (223023f)
- editor: components suggestions inside monaco (#21) (8e93bea)
- git: commit files to Github (#20) (2c9b969)
- github: handle conflict on file (0b0aa4c)
- host: file system storage in development (#10) (1fd3774)
- host: sync file selection (#8) (d32afb1)
- integrate nuxt-auth-utils and authenticate with Google and Github (072e8ef)
- login: server handler page (#11) (b4d6646)
- manifest: display deployment alert (48891a3)
- media: add copy button (39c65bf)
- media: create folder (#36) (d793425)
- media: image editor (49221aa)
- medias: actions (#33) (cca347a)
- medias: initialize feature (#17) (65a3255)
- media: slugify name before uploading (e1244cd)
- media: upload and preview system with sw (#18) (b8fc257)
- media: upload loading state (cb047ed)
- playground: define studio route (7715a9a)
- preview: sync from host to studio (930fd0f)
- publish: publish changes (#34) (d1d7562)
- publish: success page (4d7783a)
- review: error page on publish fail (3fc3c20)
- success: loading reload app button (96fd570)
- tree: add prefix edition (9aa7a02)
- tree: compute tree based on fsPath (#38) (b0e5c6a)
- tree: detect same file renaming + automatic error tooltip (b0f781b)
- tree: improve ui (53529ab)
- ui: banner for new website version detected (5d143d9)
- ui: content listing files + resizable panel (#5) (73d1bb2)
- ui: editor panel (#6) (935044f)
- ui: file breadcrumb (498b867)
- ui: handle ellipsis dropdown in breadcrumb (77a4e3b)
- ui: improvements (8326af2)
- ui: improvements UI UX (2999867)
- ui: move toolbar up and sidebar left (577597f)
- ui: new tree visual (fee5a40)
- ui: remove modals validation (3f1cf80)
- ui: set close content panel by default (014aef1)
- ui: toggle for technical view (532304d)
- useStudioState: store if studio is active (0ffce18)
- actions: create then rename (cc9e347)
- actions: show tooltip directly for confirmation (ef6ddca)
- add dummy route to prevent vue-router warning (e2a7142)
- auto-redirect to github for sign-in (fea9d8f)
- collection: generate id for collection with prefix (c3571e8)
- content: do not navigate on navigation file (07167b9)
- content: do not reselect current file (edea263)
- content: editor experience (#39) (53b645d)
- content: parse/stringify different file types (#14) (391b6c7)
- content: preserve TOC field on minify (#27) (449e93e)
- content: update remark mdc to fix frontmatter parsing (cedcbf4)
- content: wrong db path on rename (dc78b20)
- content: yaml files behaviour (#45) (d10548e)
- context: use fspath to find tree item (e2bfd63)
- draft: edge cases (d6b7489)
- editor: handle deletion directly on file (839bb18)
- editor: improve document compare (a457aca)
- editor: media selection (2bf3903)
- editor: monaco word wrap (2431814)
- editor: multiple buggy experience (#40) (941fb1c)
- git: handle pushing removes/renamed files (#28) (98878c5)
- github: conflict and loading state (21ec482)
- github: remove pristine files from commit (3050ad4)
- lint: add missing comma (a1e5ffc)
- lint: missing comma (a14720c)
- lint: unused import (d9269c4)
- login: open ui on first connection (2845657)
- manifest: store previous id (eeb920e)
- medias: multiple rename of same file (d87a79c)
- minor improvements (#24) (17e13d8)
- monaco: dynamic readonly mode (b55fdc2)
- monaco: hide unchanged lines on diff view (#37) (1e5ed36)
- monaco: remove padding for better ui (5ab1473)
- review: images (3ee5a04)
- router: missing await (3a7ea76)
- signout: reload app (20a4947)
- state: location redirection (de8dc1b)
- success: increment timeout (efbdbf9)
- test: add prefix in tree (4aa6e9c)
- test: remove only (61e59f9)
- test: remove useless (dca471f)
- tree: cancel rename when user click outside of form (4ffd62e)
- tree: do not close form when click on extension (5a8d784)
- tree: do not store collection in directory id (410d7b9)
- tree: fs path for prefixed source (4f81f27)
- tree: handle actions from all levels (5c67c3b)
- tree: handle empty prefix (6c12ca9)
- tree: only diplay prefix for document (4488dd6)
- tree: rename file on current index (136a68f)
- tree: status on root item (89d1f63)
- types: error when mounting app (ba39b25)
- ui: close content by default (3457e93)
- ui: refine UI styles (#30) (a36ad89)
- useGit: only commit non pristine files (c567487)
- useStudioState: set location when switching feature tabs (fdab7b4)