mirror of
https://github.com/docsifyjs/docsify.git
synced 2025-12-08 19:55:52 +00:00
Style updates: - New "core" theme serves as base for all other themes (official and third-party) - New CSS custom properties for simplified customization of "core" theme **Note:** List of available properties will be made available in documentation by embedding soruce CSS in docs after merge. Merge is required because embedded CSS needs to be in `main` branch. For now, see `_vars.css` and `_vars-advanced.css` for details. - New theme "add-ons" modify core theme properties and/or add custom declarations as needed. - New Prism.js theme support - New configurable sidebar toggle design - New typography defaults to system sans-serif and monospace fonts instead of relying on external web font. - New "Core Dark" theme addon provide dark theme styles. Can optionally be applied based on operating system's light/dark setting using `@media` attribute on `<link>` element. - New "Vue" theme addon. Closely replicated popular v4 theme while allowing for v5 enhancements. - New CSS class names available for adding loading indicators, adding sidebar expand/collapse icons, adding sidebar group styles, clamping sidebar links to a single line with ellipses, and changing the sidebar toggle icon. - New auto-generated gradient background for cover page (ensure gradient hue is > 50 degree apart, use OKLCH color if supported, randomize grandient angle, reduce brightness in dark mode) - New button styles (basic, primary, secondary) - New form element styles (text input, radio, checkbox, ) - New "callouts" (previously "important" and "tip" helpers) - New default syntax highlighting theme (from [docsify-themeable](https://jhildenbiddle.github.io/docsify-themeable/)) - New auto-generated theme color shade and tint colors - New auto-generated monochromatic color palette - New form element styles (fields, legend, text input, text area, checkbox, radio, toggles, and select) - New "headerless" tables - New `kbd` styles - New task list style - New merged navbar styles (consistent with sidebar nav styles) - New search plugin styles and keyboard shortcut indicators - Add ability restore previously focused content element after hiding sidebar - Add "focus trap" when sidebar is visible on mobile (accessibility) - Add ability for sidebar links to wrap by default (previous single-line w/ ellipsis display available as CSS class on `<body>` option) - Add sidebar `page-link`, `group`, and `group-title` CSS classes to sidebar markup. - Add reduced motion media query to set all animation/transition timings to zero - Update Google Font imports (use new variable vs older fixed width fonts) - Update primary/secondary button order on coverpage (primary should be first) - Fix missing merged navbar when loading at desktop resolution then resizing to mobile - Fix inverted open/close sidebar visibility state at desktop/mobile resolutions - Fix overflow setting to prevent clipping of element focus ring - Fix safe area inset margins on mobile in landscape orientation - Fix inverted "tip" and "warn" class names - Fix scroll padding to prevent headers from touching top edge of viewport when scrolled to - Remove Stylus dependency (now using only PostCSS) - Remove legacy themes "Buble", "Dark", "Dolphin", and "Pure". Documentation updates: - New "UI Kit" page showcasing all elements styled by Docsify - Update "Quick Start" page template - Update "Adding pages" page with information on how to properly create sidebar group titles and navbar drop-down menus - Update "Themes" page with theme and class toggles - Update "Configuration" page with deprecation warnings for `themeColor` and `topMargin` - Move "Edit Page" link to footer - Remove [docsify-themeable](https://jhildenbiddle.github.io/docsify-themeable/) endorsement (currently not compatible with v5 and future is unknown) Miscellaneous updates: - New search plugin options: `insertBefore` and `insertAfter` - Add PostCSS config file - Update BrowserSync config (disable "ghost" mode) - Update tests - Fix Jest + Prettier 3 conflict - Fix `getAndRemoveDocisfyIgnoreConfig` name type (now `Docisfy` => `Docsify`) - Fix execution of sidebar-generating code when `hiddenSidebar` is `true` - Remove `inBrowser` constant (SSR deprecated, so no longer needed)
122 lines
4.1 KiB
JSON
122 lines
4.1 KiB
JSON
{
|
|
"name": "docsify",
|
|
"version": "4.13.0",
|
|
"description": "A magical documentation generator.",
|
|
"homepage": "https://docsify.js.org",
|
|
"repository": "github:docsifyjs/docsify",
|
|
"authors": "https://github.com/docsifyjs/docsify/graphs/contributors",
|
|
"license": "MIT",
|
|
"collective": {
|
|
"url": "https://opencollective.com/docsify"
|
|
},
|
|
"keywords": [
|
|
"client",
|
|
"creator",
|
|
"crs",
|
|
"doc",
|
|
"docs",
|
|
"documentation",
|
|
"generator",
|
|
"markdown"
|
|
],
|
|
"engines": {
|
|
"node": ">=20.11.0"
|
|
},
|
|
"type": "module",
|
|
"main": "dist/docsify.js",
|
|
"exports": {
|
|
".": "./src/core/Docsify.js",
|
|
"./*": "./*"
|
|
},
|
|
"files": [
|
|
"dist",
|
|
"themes"
|
|
],
|
|
"lint-staged": {
|
|
"*.js": "eslint --fix"
|
|
},
|
|
"dependencies": {
|
|
"medium-zoom": "^1.1.0",
|
|
"opencollective-postinstall": "^2.0.2",
|
|
"prismjs": "^1.29.0",
|
|
"tinydate": "^1.3.0"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/eslint-parser": "^7.24.5",
|
|
"@babel/preset-env": "^7.11.5",
|
|
"@eslint/js": "^9.3.0",
|
|
"@playwright/test": "^1.44.0",
|
|
"@rollup/plugin-babel": "^6.0.4",
|
|
"@rollup/plugin-commonjs": "^26.0.1",
|
|
"@rollup/plugin-node-resolve": "^15.1.0",
|
|
"@rollup/plugin-replace": "^5.0.2",
|
|
"@rollup/plugin-terser": "^0.4.3",
|
|
"@types/eslint": "^8.40.2",
|
|
"axios": "^1.5.0",
|
|
"browser-sync": "^3.0.2",
|
|
"common-tags": "^1.8.0",
|
|
"conventional-changelog-cli": "^3.0.0",
|
|
"cross-env": "^7.0.3",
|
|
"cssnano": "^7.0.1",
|
|
"eslint": "^9.3.0",
|
|
"eslint-config-prettier": "^9.1.0",
|
|
"eslint-plugin-jest": "^28.5.0",
|
|
"eslint-plugin-playwright": "^1.6.1",
|
|
"eslint-plugin-prettier": "^5.1.3",
|
|
"glob": "^10.3.15",
|
|
"globals": "^15.3.0",
|
|
"husky": "^9.0.11",
|
|
"jest": "^29.7.0",
|
|
"jest-environment-jsdom": "^29.7.0",
|
|
"lint-staged": "^15.2.2",
|
|
"marked": "^12.0.2",
|
|
"npm-run-all": "^4.1.5",
|
|
"postcss-cli": "^11.0.0",
|
|
"postcss-import": "^16.1.0",
|
|
"postcss-nesting": "^12.1.5",
|
|
"prettier": "^3.2.5",
|
|
"rimraf": "^5.0.7",
|
|
"rollup": "^4.17.2",
|
|
"rollup-plugin-import-css": "^3.5.0",
|
|
"vue": "^3.4.27",
|
|
"xhr-mock": "^2.5.1"
|
|
},
|
|
"scripts": {
|
|
"build:cover": "node build/cover.js",
|
|
"build:css": "postcss \"src/themes/*.css\" \"src/themes/**/[!_]*.css\" --base src/themes --dir dist/themes --map",
|
|
"build:css:min": "cross-env NODE_ENV='production' npm run build:css -- --ext .min.css",
|
|
"build:emoji": "node ./build/emoji.js",
|
|
"build:js": "rollup -c",
|
|
"build": "run-s clean build:js build:css build:css:min build:cover",
|
|
"clean": "rimraf --glob dist/** themes/** _playwright*/**",
|
|
"dev": "run-p serve:dev watch:*",
|
|
"docker:build:test": "npm run docker:cli -- build:test",
|
|
"docker:build": "docker build -f Dockerfile -t docsify-test:local .",
|
|
"docker:clean": "docker rmi docsify-test:local",
|
|
"docker:cli": "docker run --rm -it --ipc=host --mount type=bind,source=$(pwd)/test,target=/app/test docsify-test:local",
|
|
"docker:rebuild": "run-s docker:clean docker:build",
|
|
"docker:test:e2e": "npm run docker:cli -- test:e2e",
|
|
"docker:test:integration": "npm run docker:cli -- test:integration",
|
|
"docker:test:unit": "npm run docker:cli -- test:unit",
|
|
"docker:test": "npm run docker:cli -- test",
|
|
"lint:fix": "prettier . --write && eslint . --fix",
|
|
"lint": "prettier . --check && eslint .",
|
|
"postinstall": "opencollective-postinstall && npx husky install",
|
|
"prepare": "npm run build",
|
|
"prettier": "prettier . --write",
|
|
"pub:next": "cross-env RELEASE_TAG=next sh build/release.sh",
|
|
"pub": "sh build/release.sh",
|
|
"serve:dev": "npm run serve -- --dev",
|
|
"serve": "node server",
|
|
"test:e2e": "playwright test",
|
|
"test:e2e:chromium": "playwright test --project='chromium'",
|
|
"test:e2e:ui": "playwright test --ui",
|
|
"test:integration": "npm run test:jest -- --selectProjects integration",
|
|
"test:jest": "cross-env NODE_OPTIONS=--experimental-vm-modules jest",
|
|
"test:unit": "npm run test:jest -- --selectProjects unit",
|
|
"test": "run-s test:jest test:e2e",
|
|
"watch:css": "run-p 'build:css -- --watch' 'build:css:min -- --watch'",
|
|
"watch:js": "npm run build:js -- --watch"
|
|
}
|
|
}
|