https://github.com/apostrophecms/apostrophe
apostrophe cms cms-framework jamstack javascript node node-js nodejs website-builder
Score: 34.44777021147164
Last synced: about 14 hours ago
JSON representation
Repository metadata:
A full-featured, open-source content management framework built with Node.js that empowers organizations by combining in-context editing and headless architecture in a full-stack JS environment.
- Host: GitHub
- URL: https://github.com/apostrophecms/apostrophe
- Owner: apostrophecms
- Created: 2013-02-08T20:04:02.000Z (over 13 years ago)
- Default Branch: main
- Last Pushed: 2026-06-01T14:32:54.000Z (12 days ago)
- Last Synced: 2026-06-01T15:06:56.694Z (12 days ago)
- Topics: apostrophe, cms, cms-framework, jamstack, javascript, node, node-js, nodejs, website-builder
- Language: JavaScript
- Homepage: https://apostrophecms.com
- Size: 48 MB
- Stars: 4,561
- Watchers: 109
- Forks: 632
- Open Issues: 134
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Code of conduct: CODE_OF_CONDUCT.md
Owner metadata:
- Name: Apostrophe Technologies
- Login: apostrophecms
- Email:
- Kind: organization
- Description:
- Website: https://apostrophecms.com
- Location:
- Twitter: apostrophecms
- Company:
- Icon url: https://avatars.githubusercontent.com/u/12648958?v=4
- Repositories: 107
- Last Synced at: 2025-10-22T18:48:36.193Z
- Profile URL: https://github.com/apostrophecms
Committers metadata
Last synced: 14 days ago
Total Commits: 9,069
Total Committers: 128
Avg Commits per committer: 70.852
Development Distribution Score (DDS): 0.714
Commits in past year: 294
Committers in past year: 13
Avg Commits per committer in past year: 22.615
Development Distribution Score (DDS) in past year: 0.711
| Name | Commits | |
|---|---|---|
| Tom Boutell | t****m@p****m | 2597 |
| Tom Boutell | t****m@a****m | 1687 |
| Jed | v****y@p****m | 623 |
| Alex Bea | a****a@m****g | 611 |
| Stuart Romanek | s****t@a****m | 611 |
| Miro Yovchev | 2****v | 365 |
| Jimmy Harrison | j****y@p****m | 349 |
| Harouna Traoré | h****n | 255 |
| Stuart Romanek | s****t@p****m | 214 |
| Anthony Tarlao | a****o@g****m | 181 |
| mcoppola | m****2@g****m | 162 |
| Joel Smith | j****h@g****m | 158 |
| Robert Means | r****t@a****m | 138 |
| ETLaurent | E****t | 119 |
| Lars Houmark | l****s@h****m | 76 |
| Etienne Laurent | p****o@e****r | 72 |
| Kerry Gilbert | k****y@p****m | 72 |
| Alex Bea | a****a@g****m | 66 |
| alohaas | l****s@g****m | 50 |
| Stuart Romanek | s****t@s****k | 44 |
| Etienne Laurent | e****t@t****o | 42 |
| Greg van Brug | g****b@a****m | 40 |
| Austin Starin | a****n@g****m | 36 |
| bgantick | b****n@p****m | 30 |
| Ben Loeffler | b****n@B****l | 29 |
| Bob Clewell | b****b@p****m | 24 |
| Samantha Combs | s****1@g****m | 24 |
| Danny Povolotski | d****i@g****m | 22 |
| agilbert | a****x@p****m | 21 |
| Ben Rosenbach | b****n@b****m | 20 |
| and 98 more... | ||
Issue and Pull Request metadata
Last synced: 16 days ago
Total issues: 77
Total pull requests: 1,343
Average time to close issues: 10 months
Average time to close pull requests: 7 days
Total issue authors: 54
Total pull request authors: 29
Average comments per issue: 4.94
Average comments per pull request: 0.82
Merged pull request: 1,103
Bot issues: 0
Bot pull requests: 0
Past year issues: 5
Past year pull requests: 172
Past year average time to close issues: N/A
Past year average time to close pull requests: 5 days
Past year issue authors: 5
Past year pull request authors: 11
Past year average comments per issue: 2.2
Past year average comments per pull request: 0.75
Past year merged pull request: 93
Past year bot issues: 0
Past year bot pull requests: 0
Top Issue Authors
- abea (5)
- ezzle (4)
- Pixelguymm (4)
- LeviticusMaximus (3)
- rredaelli (3)
- ecb34 (3)
- rohan9024 (2)
- programarivm (2)
- stuartromanek (2)
- thomas-rousselot (2)
- harshmehta813 (2)
- chmdebeer (2)
- myovchev (2)
- umutakpinar-cpa (1)
- daklik (1)
Top Pull Request Authors
- boutell (369)
- myovchev (228)
- ValJed (227)
- haroun (155)
- ETLaurent (118)
- stuartromanek (96)
- BoDonkey (71)
- falkodev (32)
- khanhkhanhlele (8)
- daklik (8)
- gkumar9891 (4)
- triskuit (3)
- gregvanbrug (2)
- waldemar-p (2)
- Link-the-elf (2)
Top Issue Labels
- bug (41)
- enhancement (17)
- question (8)
- help wanted (4)
- contributions welcome (3)
- good first issue (3)
- UI (2)
- documentation (1)
- clicking-refresh-stinks (1)
- v3 (1)
- pinned (1)
Top Pull Request Labels
- don't merge yet (4)
- don't merge (2)
- bug (1)
Package metadata
- Total packages: 17
-
Total downloads:
- npm: 38,795,933 last-month
- Total docker downloads: 1,480,360,386
- Total dependent packages: 1,605 (may contain duplicates)
- Total dependent repositories: 90,336 (may contain duplicates)
- Total versions: 1,550
- Total maintainers: 20
- Total advisories: 25
npmjs.org: sanitize-html
Clean up user-submitted HTML, preserving allowlisted elements and allowlisted attributes on a per-element basis
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/sanitize-html#readme
- Licenses: MIT
- Latest release: 2.17.4 (published about 1 month ago)
- Last Synced: 2026-06-02T23:13:06.660Z (10 days ago)
- Versions: 122
- Dependent Packages: 1,495
- Dependent Repositories: 89,985
- Downloads: 34,441,984 Last month
- Docker Downloads: 1,480,360,386
-
Rankings:
- Docker downloads count: 0.047%
- Dependent packages count: 0.049%
- Downloads: 0.099%
- Dependent repos count: 0.102%
- Average: 0.622%
- Stargazers count: 1.569%
- Forks count: 1.865%
- Maintainers (4)
-
Advisories:
- Apostrophe has default XSS via `xmp` raw-text passthrough in `sanitize-html`
- sanitize-html allowedTags Bypass via Entity-Decoded Text in nonTextTags Elements
- sanitize-html is vulnerable to XSS through incomprehensive sanitization
- sanitize-html Information Exposure vulnerability
- Sanitize-html Vulnerable To REDoS Attacks
- Improper Input Validation in sanitize-html
- Improper Input Validation in sanitize-html
- Cross-Site Scripting in sanitize-html
- Cross-Site Scripting in sanitize-html
- Cross-Site Scripting in sanitize-html
npmjs.org: apostrophe
The Apostrophe Content Management System.
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/apostrophe
- Licenses: MIT
- Latest release: 4.26.1 (published 4 months ago)
- Last Synced: 2026-03-17T23:00:19.449Z (3 months ago)
- Versions: 1,117
- Dependent Packages: 57
- Dependent Repositories: 147
- Downloads: 77,903 Last month
-
Rankings:
- Dependent packages count: 0.587%
- Dependent repos count: 1.277%
- Average: 1.321%
- Stargazers count: 1.469%
- Forks count: 1.573%
- Downloads: 1.698%
- Maintainers (4)
-
Advisories:
- Apostrophe has stored XSS via javascript: URL in Image Widget Link
- Apostrophe has a Weak Password Recovery Mechanism for Forgotten Password and Improper Input Validation
- Apostrophe has authenticated SSRF in rich-text widget import via @apostrophecms/area/validate-widget
- ApostropheCMS: Information Disclosure via choices/counts Query Parameters Bypassing publicApiProjection Field Restrictions
- Stored XSS in SEO Fields Leads to Authenticated API Data Exposure in ApostropheCMS
- ApostropheCMS: Stored XSS via CSS Custom Property Injection in @apostrophecms/color-field Escaping Style Tag Context
- ApostropheCMS: publicApiProjection Bypass via project Query Builder in Piece-Type REST API
- ApostropheCMS: User Enumeration via Timing Side Channel in Password Reset Endpoint
- ApostropheCMS MFA/TOTP Bypass via Incorrect MongoDB Query in Bearer Token Middleware
- Apostrophe CMS Insufficient Session Expiration vulnerability
- Cross-site Scripting in apostrophe
- Denial of Service in apostrophe
- Open Redirect in apostrophe
npmjs.org: uploadfs
Store files in a web-accessible location via a simplified API. Can automatically scale and rotate images. Includes S3, Azure and local filesystem-based backends with the most convenient features of each.
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/uploadfs
- Licenses: MIT
- Latest release: 1.26.1 (published 3 months ago)
- Last Synced: 2026-05-30T14:01:50.211Z (14 days ago)
- Versions: 106
- Dependent Packages: 9
- Dependent Repositories: 72
- Downloads: 8,781 Last month
-
Rankings:
- Dependent repos count: 1.613%
- Dependent packages count: 2.252%
- Downloads: 2.319%
- Average: 3.344%
- Forks count: 4.538%
- Stargazers count: 5.998%
- Maintainers (4)
npmjs.org: oembetter
A modern oembed client. Allows you to register filters to improve or supply oembed support for sites that don't normally have it. You can also supply a allowlist of services you trust to prevent XSS attacks.
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/oembetter#readme
- Licenses: MIT
- Latest release: 1.2.0 (published about 1 month ago)
- Last Synced: 2026-05-24T12:31:36.882Z (20 days ago)
- Versions: 34
- Dependent Packages: 13
- Dependent Repositories: 65
- Downloads: 8,167 Last month
-
Rankings:
- Dependent packages count: 1.669%
- Dependent repos count: 1.687%
- Downloads: 2.351%
- Average: 3.649%
- Stargazers count: 5.998%
- Forks count: 6.54%
- Maintainers (14)
npmjs.org: launder
A sanitize module for the people. Built for ApostropheCMS.
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/launder#readme
- Licenses: MIT
- Latest release: 1.7.1 (published about 1 month ago)
- Last Synced: 2026-05-24T12:31:42.440Z (20 days ago)
- Versions: 18
- Dependent Packages: 8
- Dependent Repositories: 52
- Downloads: 4,222,014 Last month
-
Rankings:
- Dependent repos count: 1.844%
- Downloads: 2.411%
- Dependent packages count: 2.481%
- Average: 5.564%
- Forks count: 8.874%
- Stargazers count: 12.21%
- Maintainers (17)
npmjs.org: @apostrophecms/seo
SEO Tools for ApostropheCMS
- Homepage: https://github.com/apostrophecms/apostrophe/blob/main/packages/seo
- Licenses: MIT
- Latest release: 1.4.2 (published about 2 months ago)
- Last Synced: 2026-05-30T14:01:51.735Z (14 days ago)
- Versions: 15
- Dependent Packages: 3
- Dependent Repositories: 3
- Downloads: 6,661 Last month
-
Rankings:
- Downloads: 4.739%
- Dependent repos count: 6.355%
- Forks count: 7.011%
- Average: 8.021%
- Dependent packages count: 8.845%
- Stargazers count: 13.153%
- Maintainers (4)
proxy.golang.org: github.com/apostrophecms/apostrophe
- Homepage:
- Documentation: https://pkg.go.dev/github.com/apostrophecms/apostrophe#section-documentation
- Licenses: other
- Latest release: v1.9.0 (published almost 11 years ago)
- Last Synced: 2026-05-24T12:31:39.059Z (20 days ago)
- Versions: 7
- Dependent Packages: 0
- Dependent Repositories: 0
-
Rankings:
- Dependent packages count: 6.999%
- Average: 8.173%
- Dependent repos count: 9.346%
npmjs.org: @apostrophecms/sitemap
Sitemap generator for ApostropheCMS.
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/sitemap#readme
- Licenses: MIT
- Latest release: 1.4.0 (published about 2 months ago)
- Last Synced: 2026-05-30T14:01:46.762Z (14 days ago)
- Versions: 9
- Dependent Packages: 3
- Dependent Repositories: 5
- Downloads: 6,179 Last month
-
Rankings:
- Downloads: 4.862%
- Dependent repos count: 5.033%
- Forks count: 8.208%
- Average: 8.293%
- Dependent packages count: 8.849%
- Stargazers count: 14.513%
- Maintainers (4)
npmjs.org: @apostrophecms/form
Build forms for ApostropheCMS in a simple user interface.
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/form
- Licenses: MIT
- Latest release: 1.5.3 (published 4 months ago)
- Last Synced: 2026-05-30T14:01:53.429Z (14 days ago)
- Versions: 16
- Dependent Packages: 3
- Dependent Repositories: 3
- Downloads: 1,284 Last month
-
Rankings:
- Downloads: 6.099%
- Dependent repos count: 6.358%
- Average: 8.667%
- Dependent packages count: 8.849%
- Forks count: 8.874%
- Stargazers count: 13.156%
- Maintainers (4)
npmjs.org: @apostrophecms/cli
Commandline generator and configurator for Apostrophe CMS
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/cli
- Licenses: MIT
- Latest release: 3.6.1 (published about 1 month ago)
- Last Synced: 2026-05-30T14:01:47.376Z (14 days ago)
- Versions: 11
- Dependent Packages: 3
- Dependent Repositories: 1
- Downloads: 504 Last month
-
Rankings:
- Dependent packages count: 8.976%
- Forks count: 10.071%
- Dependent repos count: 10.591%
- Average: 11.782%
- Downloads: 12.115%
- Stargazers count: 17.155%
- Maintainers (4)
- Advisories:
npmjs.org: @apostrophecms/login-totp
Adds totp (time-based one-time password) to Apostrophe login pages
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/login-totp#readme
- Licenses: MIT
- Latest release: 1.3.3 (published 6 months ago)
- Last Synced: 2026-05-30T14:01:51.940Z (14 days ago)
- Versions: 9
- Dependent Packages: 3
- Dependent Repositories: 1
- Downloads: 328 Last month
-
Rankings:
- Dependent packages count: 8.845%
- Downloads: 8.996%
- Dependent repos count: 10.319%
- Average: 12.057%
- Forks count: 15.401%
- Stargazers count: 16.722%
- Maintainers (4)
npmjs.org: apostrophe-esriid
The Apostrophe Content Management System.
- Homepage: https://github.com/apostrophecms/apostrophe#readme
- Licenses: MIT
- Latest release: 2.94.2 (published almost 7 years ago)
- Last Synced: 2026-05-30T14:01:51.276Z (14 days ago)
- Versions: 2
- Dependent Packages: 3
- Dependent Repositories: 1
- Downloads: 20 Last month
-
Rankings:
- Stargazers count: 1.468%
- Forks count: 1.586%
- Dependent packages count: 8.79%
- Dependent repos count: 10.77%
- Average: 14.832%
- Downloads: 51.548%
- Maintainers (1)
npmjs.org: @ngodn/apostrophe
The Apostrophe Content Management System.
- Homepage: https://github.com/apostrophecms/apostrophe#readme
- Licenses: MIT
- Latest release: 2.94.7 (published almost 7 years ago)
- Last Synced: 2026-05-30T14:01:52.589Z (14 days ago)
- Versions: 6
- Dependent Packages: 2
- Dependent Repositories: 1
- Downloads: 66 Last month
-
Rankings:
- Stargazers count: 1.467%
- Forks count: 1.582%
- Dependent packages count: 8.79%
- Dependent repos count: 10.77%
- Average: 17.365%
- Downloads: 64.215%
- Maintainers (1)
npmjs.org: @apostrophecms/ai-helper
AI helpers for content creation
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/ai-helper#readme
- Licenses: MIT
- Latest release: 1.0.0-beta.11 (published 4 months ago)
- Last Synced: 2026-05-24T12:30:57.523Z (20 days ago)
- Versions: 11
- Dependent Packages: 1
- Dependent Repositories: 0
- Downloads: 341 Last month
-
Rankings:
- Forks count: 11.894%
- Dependent repos count: 18.77%
- Average: 19.657%
- Stargazers count: 20.682%
- Dependent packages count: 27.282%
- Maintainers (4)
npmjs.org: @apostrophecms/import-export
Import Export Documents for ApostropheCMS
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/import-export#readme
- Licenses: UNLICENSED
- Latest release: 3.6.0 (published about 2 months ago)
- Last Synced: 2026-05-30T14:01:48.077Z (14 days ago)
- Versions: 31
- Dependent Packages: 1
- Dependent Repositories: 0
- Downloads: 2,138 Last month
-
Rankings:
- Downloads: 9.591%
- Forks count: 15.314%
- Stargazers count: 20.915%
- Average: 26.746%
- Dependent repos count: 36.17%
- Dependent packages count: 51.742%
- Maintainers (4)
- Advisories:
npmjs.org: postcss-viewport-to-container-toggle
A plugin for [PostCSS](https://github.com/postcss/postcss) that allows to toggle between viewport and container units based on the presence of a container data attribute.
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/postcss-viewport-to-container-toggle#readme
- Licenses: MIT
- Latest release: 2.3.0 (published 3 months ago)
- Last Synced: 2026-05-30T14:01:51.621Z (14 days ago)
- Versions: 7
- Dependent Packages: 0
- Dependent Repositories: 0
- Downloads: 14,656 Last month
-
Rankings:
- Dependent repos count: 25.572%
- Average: 31.311%
- Dependent packages count: 37.051%
- Maintainers (5)
npmjs.org: @apostrophecms/apostrophe-astro
Apostrophe integration for Astro
- Homepage: https://github.com/apostrophecms/apostrophe/tree/main/packages/apostrophe-astro#readme
- Licenses: MIT
- Latest release: 1.12.0 (published about 1 month ago)
- Last Synced: 2026-05-30T14:01:49.942Z (14 days ago)
- Versions: 29
- Dependent Packages: 1
- Dependent Repositories: 0
- Downloads: 4,907 Last month
-
Rankings:
- Dependent repos count: 36.01%
- Average: 43.801%
- Dependent packages count: 51.592%
- Maintainers (4)
Dependencies
- actions/checkout v2 composite
- actions/setup-node v1 composite
- supercharge/mongodb-github-action 1.3.0 composite
- @babel/eslint-parser ^7.17.0 development
- eslint ^7.25.0 development
- eslint-config-apostrophe ^3.4.0 development
- eslint-plugin-n ^15.2.1 development
- eslint-plugin-node ^11.1.0 development
- eslint-plugin-promise ^5.1.0 development
- eslint-plugin-vue ^7.9.0 development
- mocha ^9.1.2 development
- nyc ^15.1.0 development
- replace-in-file ^6.1.0 development
- stylelint ^14.6.1 development
- stylelint-declaration-strict-value ^1.8.0 development
- stylelint-order ^5.0.0 development
- vue-eslint-parser ^7.1.1 development
- webpack-bundle-analyzer ^3.9.0 development
- @apostrophecms/vue-color ^2.8.2
- @opentelemetry/api ^1.0.4
- @opentelemetry/semantic-conventions ^1.0.1
- @tiptap/extension-highlight ^2.0.0-beta.33
- @tiptap/extension-link ^2.0.0-beta.38
- @tiptap/extension-placeholder ^2.0.0-beta.196
- @tiptap/extension-text-align ^2.0.0-beta.29
- @tiptap/extension-text-style ^2.0.0-beta.23
- @tiptap/extension-underline ^2.0.0-beta.23
- @tiptap/starter-kit ^2.0.0-beta.185
- @tiptap/vue-2 ^2.0.0-beta.79
- autoprefixer ^10.4.1
- bluebird ^3.7.2
- body-parser ^1.18.2
- boring ^1.1.1
- broadband ^1.1.0
- cheerio ^1.0.0-rc.10
- chokidar ^3.5.2
- common-tags ^1.8.0
- connect-mongo ^3.0.0
- connect-multiparty ^2.1.1
- cookie-parser ^1.4.5
- cors ^2.8.5
- credentials ^3.0.2
- css-loader ^5.2.4
- cuid ^2.1.8
- dayjs ^1.9.8
- debounce-async 0.0.2
- deep-get-set ^1.1.1
- dompurify ^2.3.1
- express ^4.16.4
- express-bearer-token ^2.4.0
- express-cache-on-demand ^1.0.3
- express-session ^1.17.1
- form-data ^4.0.0
- fs-extra ^7.0.1
- glob ^5.0.15
- he ^0.5.0
- html-to-text ^5.1.1
- i18next ^20.3.2
- i18next-http-middleware ^3.1.5
- import-fresh ^3.3.0
- is-wsl ^2.2.0
- jsdom ^17.0.0
- klona ^2.0.4
- launder ^1.4.0
- lodash ^4.17.20
- mini-css-extract-plugin ^1.6.0
- minimatch ^3.0.4
- mkdirp ^0.5.5
- mongodb ^3.6.6
- node-fetch ^2.6.1
- nodemailer ^6.6.1
- nunjucks ^3.2.1
- oembetter ^1.0.1
- passport ^0.3.2
- passport-local ^1.0.0
- path-to-regexp ^1.8.0
- performance-now ^2.1.0
- postcss-html ^1.3.0
- postcss-loader ^5.0.0
- postcss-scss ^4.0.3
- prompts ^2.4.1
- qs ^6.10.1
- regexp-quote 0.0.0
- resolve ^1.19.0
- resolve-from ^5.0.0
- sanitize-html ^2.7.1
- sass ^1.52.3
- sass-loader ^10.1.1
- server-destroy ^1.0.1
- sluggo ^0.3.0
- tinycolor2 ^1.4.2
- tough-cookie ^4.0.0
- underscore.string ^3.3.4
- uploadfs ^1.17.1
- v-tooltip ^2.0.3
- vue ^2.6.14
- vue-advanced-cropper ^1.10.1
- vue-click-outside-element ^1.0.15
- vue-loader ^15.10.0
- vue-material-design-icons ~4.12.1
- vue-style-loader ^4.1.2
- vue-template-compiler ^2.6.14
- vuedraggable ^2.24.3
- webpack ^5.72.0
- webpack-merge ^5.7.3
- xregexp ^2.0.0
- apostrophe file:../../.
- @apostrophecms/sitemap ^1.0.2
- actions/checkout v2 composite
- actions/setup-node v1 composite