{"id":15026798,"url":"https://github.com/uatrend/pagekit","last_synced_at":"2025-06-10T13:33:58.373Z","repository":{"id":48331318,"uuid":"176985556","full_name":"uatrend/pagekit","owner":"uatrend","description":"Pagekit CMS","archived":false,"fork":false,"pushed_at":"2022-09-12T08:43:25.000Z","size":28924,"stargazers_count":22,"open_issues_count":26,"forks_count":6,"subscribers_count":5,"default_branch":"develop","last_synced_at":"2025-04-09T20:44:02.528Z","etag":null,"topics":["cms","nojquery","pagekit","pagekit-cms","php74","symfony5","tinymce","uikit3","update","vue2"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/uatrend.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-03-21T16:37:27.000Z","updated_at":"2023-07-19T21:55:59.000Z","dependencies_parsed_at":"2023-01-18T04:30:53.172Z","dependency_job_id":null,"html_url":"https://github.com/uatrend/pagekit","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uatrend%2Fpagekit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uatrend%2Fpagekit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uatrend%2Fpagekit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uatrend%2Fpagekit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/uatrend","download_url":"https://codeload.github.com/uatrend/pagekit/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/uatrend%2Fpagekit/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259085350,"owners_count":22803185,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cms","nojquery","pagekit","pagekit-cms","php74","symfony5","tinymce","uikit3","update","vue2"],"created_at":"2024-09-24T20:05:07.052Z","updated_at":"2025-06-10T13:33:58.348Z","avatar_url":"https://github.com/uatrend.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Pagekit\n\n[![Symfony](https://img.shields.io/badge/symfony-5.1.7-blue)](https://github.com/symfony/symfony)\n[![Vue](https://img.shields.io/badge/vue-2.6.12-green)](https://github.com/vuejs/vue)\n[![UIkit](https://img.shields.io/badge/uikit-3.5.8-blue)](https://github.com/uikit/uikit)\n[![Build Status](https://travis-ci.org/uatrend/pagekit.svg?branch=develop)](https://travis-ci.org/uatrend/pagekit)\n[![Discord](https://img.shields.io/badge/chat-on%20discord-7289da.svg)](https://discord.gg/e7Kw47E)\n\n\u003cdetails\u003e\n\u003csummary\u003ePreview summary\u003c/summary\u003e\n\u003ctable\u003e\n    \u003ctbody\u003e\n        \u003ctr\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://cloud.githubusercontent.com/assets/1716665/14317675/ba034b8c-fc09-11e5-81ed-f10f37d86ea5.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Pagekit\" src=\"https://cloud.githubusercontent.com/assets/1716665/14317675/ba034b8c-fc09-11e5-81ed-f10f37d86ea5.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/64491316-d56f5180-d280-11e9-91b7-68d309489ffe.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Dashboard\" src=\"https://user-images.githubusercontent.com/24713453/64491316-d56f5180-d280-11e9-91b7-68d309489ffe.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95061078-9118e400-0714-11eb-8f6d-8577d7a85ae5.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Pagekit home page\" src=\"https://user-images.githubusercontent.com/24713453/95061078-9118e400-0714-11eb-8f6d-8577d7a85ae5.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n        \u003c/tr\u003e\n        \u003ctr\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95016783-9de2fc80-066e-11eb-82f5-2f944cbe25bb.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Installer languages\" src=\"https://user-images.githubusercontent.com/24713453/95016783-9de2fc80-066e-11eb-82f5-2f944cbe25bb.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95016785-9facc000-066e-11eb-8c2a-f991252fb377.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Installer buttons option-back-next\" src=\"https://user-images.githubusercontent.com/24713453/95016785-9facc000-066e-11eb-8c2a-f991252fb377.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95016786-a1768380-066e-11eb-8250-a7a054fe09de.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Installer select demo content\" src=\"https://user-images.githubusercontent.com/24713453/95016786-a1768380-066e-11eb-8250-a7a054fe09de.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n        \u003c/tr\u003e\n        \u003ctr\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95060613-f28c8300-0713-11eb-89ac-0586f3c6c743.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Editor settings\" src=\"https://user-images.githubusercontent.com/24713453/95060613-f28c8300-0713-11eb-89ac-0586f3c6c743.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95016844-0631de00-066f-11eb-84b6-fd3b0a9a2720.gif\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Storage\" src=\"https://user-images.githubusercontent.com/24713453/95016844-0631de00-066f-11eb-84b6-fd3b0a9a2720.gif\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95016845-08943800-066f-11eb-8d82-f4d5204d2450.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Modal starage\" src=\"https://user-images.githubusercontent.com/24713453/95016845-08943800-066f-11eb-8d82-f4d5204d2450.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n        \u003c/tr\u003e\n        \u003ctr\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95016880-590b9580-066f-11eb-80d9-2af68d6e87f2.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Page Edit\" src=\"https://user-images.githubusercontent.com/24713453/95016880-590b9580-066f-11eb-80d9-2af68d6e87f2.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95060907-557e1a00-0714-11eb-98e9-305e63d82819.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Page theme settings\" src=\"https://user-images.githubusercontent.com/24713453/95060907-557e1a00-0714-11eb-98e9-305e63d82819.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95060769-249de500-0714-11eb-9e8d-8bddff02c892.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Site theme settings\" src=\"https://user-images.githubusercontent.com/24713453/95060769-249de500-0714-11eb-9e8d-8bddff02c892.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n        \u003c/tr\u003e\n        \u003ctr\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95016701-172e1f80-066e-11eb-8da0-5f6d7e438615.png\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Theme-one\" src=\"https://user-images.githubusercontent.com/24713453/95016701-172e1f80-066e-11eb-8da0-5f6d7e438615.png\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95016942-bf90b380-066f-11eb-9165-8a088c86e425.gif\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Blog page\" src=\"https://user-images.githubusercontent.com/24713453/95016942-bf90b380-066f-11eb-9165-8a088c86e425.gif\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n            \u003ctd align=\"center\"\u003e\n                \u003ca href=\"https://user-images.githubusercontent.com/24713453/95016943-c28ba400-066f-11eb-8789-3b9f2957aee1.gif\" rel=\"noopener noreferrer\" target=\"_blank\"\u003e\n                    \u003cimg alt=\"Position page\" src=\"https://user-images.githubusercontent.com/24713453/95016943-c28ba400-066f-11eb-8789-3b9f2957aee1.gif\" style=\"max-width:100%;\" /\u003e\n                \u003c/a\u003e\n            \u003c/td\u003e\n        \u003c/tr\u003e\n    \u003c/tbody\u003e\n\u003c/table\u003e\n\n\u003c/details\u003e\n\n[Homepage](http://pagekit.com) - Official home page.\n\nThis is an updated build Pagekit CMS (for developers).\n\nBuild includes the following updated components:\n\n- Pagekit CMS 1.0.18\n- Blog extension\n- [Admin theme](#theme)\n- Theme One\n- Demo content\n\nDownload the latest [build](https://github.com/uatrend/pagekit/releases) or [install from source](#install) before installation.  \nThe installation procedure is the same as in the official [documentation](https://pagekit.com/docs/getting-started/installation).\n\nMarketplace functionality like install, update and remove works the same like in original version.\n**Note!** Before enabling extensions, update them for compatibility. Debug mode and debug panel work the same as in the main version.\n\n------\n\n## Major changes:\n\n- Required PHP Version - 7.4+\n- Used UIkit 3 and Vue 2 frameworks\n- Updated Symfony and Composer frameworks\n- [Updated Composer dependencies](https://github.com/uatrend/pagekit/blob/develop/composer.json)\n- [Updated Node dependencies](https://github.com/uatrend/pagekit/blob/develop/package.json)\n- Updated PHP core components\n- Updated Javascript core components\n\nRemoved jQuery from all scripts. UIkit functions are used instead. Several bugs that are present in the original assembly have been fixed, some styles have been changed for ease of use. The mobile version has remained the same with minor changes.\n\n## \u003ca name=\"install\"\u003e\u003c/a\u003eInstall from source\n\nYou can [install Node dependencies, build the front-end components](#node) and run [scripts](#scripts) via [yarn](https://yarnpkg.com/).\n\nClone Repository\n\n```\n$ git clone git@github.com:uatrend/pagekit.git project-folder\n$ cd project-folder\n```\n\nInstall PHP dependencies\n\n```\n$ composer install\n```\n\n\u003ca name=\"node\"\u003e\u003c/a\u003eInstall Node dependencies\n\n```\n$ yarn install\n```\n\n## \u003ca name=\"scripts\"\u003e\u003c/a\u003eScripts\n\nJavascript watch or compile:\n\n```\n$ yarn watch-js\n$ yarn compile-js\n```\n\nTo build in production mode:\n\n```\n$ yarn compile-js --mode=production\n```\n\nLESS watch or compile:\n\n```\n$ yarn watch-less\n$ yarn compile-less\n```\n\nJS/LESS watch at the same time:\n\n```\n$ yarn watch-all\n```\n\nESlint lint or watch ```*.js/*.vue``` files:\n\n```\n$ yarn lint\n$ yarn lint-watch\n```\n\nCLDR locale data:\n\n```\n$ yarn cldr\n```\n\nCopying required assets:\n\n```\n$ yarn assets\n```\n\n## \u003ca name=\"theme\"\u003e\u003c/a\u003eAdmin theme\n\nTheme is fully compatible with **UIkit 3**.\nReworked scripts, layout and colors. Added side and top menus with dropdowns. Removed unused styles.\n\nFor individual markup of each page, added a class page in the body tag automatically generated through PHP.\n\nFor example, body class for dashboard page looks like:\n\n```html\n\u003cbody class=“dashboard”\u003e\n```\nand for system Settings:\n\n```html\n\u003cbody class=“system-settings”\u003e\n```\n\n## Theme icons\n```uikit-icons.js``` are now used for Pagekit icons. \n\n## Editor Settings\n\nYou can choose the default editor in the system settings: \t\n- HTML Editor \n- Tinymce (with split mode option)\n- Codemirror\n\nMoved all editors dependencies to ```editor/assets``` folder.\n\n## Theme Plugin\n\n(added to core ```/app/system/app/lib/theme.js```)\n\nAbility to programmatically configure the buttons, dropdown lists, pagination and search form in the top menu for each component used (see code).\n\nExample: dashboard - ```index.js```\n\n```javascript\nname: 'dashboard',\n\nmixins: [Theme.Mixins.Helper],\n\n...\n\ntheme: {\n    hideEls: '#dashboard \u003e div:first-child \u003e div:last-child',\n    elements() {\n        var vm = this;\n        return {\n            addwidget: {\n                scope: 'topmenu-left',\n                type: 'dropdown',\n                caption: 'Add Widget',\n                class: 'uk-button uk-button-text',\n                icon: { attrs: { 'uk-icon': 'triangle-down' }},\n                dropdown: { options: () =\u003e 'mode: click' },\n                items: () =\u003e vm.getTypes().map((type) =\u003e {\n                    let props = {\n                        on: {click: () =\u003e vm.add(type)},\n                        caption: type.label,\n                        class: 'uk-dropdown-close'\n                    }\n                    return {...type, ...props}\n                }),\n            }\n        }\n    }\n}\n```\n\nAdding side menu items through PHP - ```$view-\u003e$data()```\n\n```php\n'view.data' =\u003e function ($event, $data) use ($app) {\n    if (!$app-\u003eisAdmin()) {\n        return;\n    }\n    $data-\u003eadd('Theme', [\n        'SidebarItems' =\u003e [\n            'additem' =\u003e [\n                'addpost' =\u003e [\n                    'caption' =\u003e 'Add Post',\n                    'attrs' =\u003e [\n                        'href' =\u003e $app['url']-\u003eget('admin/blog/post/edit')\n                    ],\n                    'priority' =\u003e 1\n                ]\n            ]\n        ]\n    ]);\n}\n```\n\n------\n\nThanks to Yootheme and developers!  \nFeel free to ask any questions - I will answer as much as possible.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuatrend%2Fpagekit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fuatrend%2Fpagekit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fuatrend%2Fpagekit/lists"}