cannercms
⚡️ Content Management Framework creates custom CMS fast and easy. Support data sources such as Firebase/Firestore, GraphQL and Restful APIs.
File Explorer
Download Latest Version (.zip)- config.yml
- bug_report.md
- feature_request.md
- settings.json
- fileMock.js
- styleMock.js
- index.js
- index.js
- amount.js
- banner.js
- dashboardBody.js
- homeBody.js
- orderBody.js
- productsBody.js
- emailForm.js
- chart.js
- categories.schema.js
- customers.schema.js
- dashboard.schema.js
- fake-data.js
- home.schema.js
- locale.js
- orders.schema.js
- products.schema.js
- test.schema.js
- utils.js
- utils.schema.js
- canner.schema.js
- cli-preview.png
- client.js
- cms-demo.png
- index.html
- index.js
- logo-word-beta.svg
- logo-word.png
- revolution.png
- utils.js
- canner.schema.js
- package.json
- README.md
- index.js
- canner.def.js
- package.json
- README.md
- index.js
- canner.def.js
- package.json
- README.md
- index.js
- package.json
- README.md
- canner.schema.js
- package.json
- README.md
- canner.schema.js
- package.json
- README.md
- canner.schema.js
- package.json
- README.md
- authors.schema.js
- categories.schema.js
- posts.schema.js
- utils.js
- canner.schema.js
- package.json
- README.md
- custom-relation-tree_toOne.js
- canner.schema.js
- package.json
- README.md
- utils.js
- .gitignore
- README.md
- cli_vx.x.x.js
- core_vx.x.x.js
- plugin-proposal-class-properties_vx.x.x.js
- plugin-proposal-decorators_vx.x.x.js
- plugin-proposal-do-expressions_vx.x.x.js
- plugin-proposal-export-default-from_vx.x.x.js
- plugin-proposal-export-namespace-from_vx.x.x.js
- plugin-proposal-function-bind_vx.x.x.js
- plugin-proposal-function-sent_vx.x.x.js
- plugin-proposal-json-strings_vx.x.x.js
- plugin-proposal-logical-assignment-operators_vx.x.x.js
- plugin-proposal-nullish-coalescing-operator_vx.x.x.js
- plugin-proposal-numeric-separator_vx.x.x.js
- plugin-proposal-optional-chaining_vx.x.x.js
- plugin-proposal-pipeline-operator_vx.x.x.js
- plugin-proposal-throw-expressions_vx.x.x.js
- plugin-syntax-dynamic-import_vx.x.x.js
- plugin-syntax-import-meta_vx.x.x.js
- plugin-transform-modules-commonjs_vx.x.x.js
- plugin-transform-runtime_vx.x.x.js
- preset-env_vx.x.x.js
- preset-flow_vx.x.x.js
- preset-react_vx.x.x.js
- preset-stage-0_vx.x.x.js
- runtime_vx.x.x.js
- antd-components_vx.x.x.js
- antd-locales_vx.x.x.js
- vega-charts_vx.x.x.js
- victory-area-stack_vx.x.x.js
- victory-area_vx.x.x.js
- victory-bar-stack_vx.x.x.js
- victory-bar_vx.x.x.js
- victory-line_vx.x.x.js
- jest_vx.x.x.js
- ajv_vx.x.x.js
- antd_v3.x.x.js
- apollo-boost_vx.x.x.js
- apollo-link_vx.x.x.js
- babel-cli_vx.x.x.js
- babel-core_vx.x.x.js
- babel-eslint_vx.x.x.js
- babel-jest_vx.x.x.js
- babel-loader_vx.x.x.js
- babel-plugin-dynamic-import-node_vx.x.x.js
- babel-plugin-import_vx.x.x.js
- babel-plugin-transform-react-jsx_vx.x.x.js
- babel-preset-env_vx.x.x.js
- babel-preset-flow_vx.x.x.js
- babel-preset-stage-0_vx.x.x.js
- bson-objectid_vx.x.x.js
- canner-antd-theme_vx.x.x.js
- canner-compiler_vx.x.x.js
- canner-graphql-interface_vx.x.x.js
- canner-helpers_vx.x.x.js
- canner-layouts_vx.x.x.js
- canner-ref-id_vx.x.x.js
- canner-schema-loader_vx.x.x.js
- canner-script_vx.x.x.js
- cross-env_vx.x.x.js
- css-loader_vx.x.x.js
- enzyme-adapter-react-16.3_vx.x.x.js
- enzyme-adapter-react-16_vx.x.x.js
- enzyme-context-patch_vx.x.x.js
- enzyme-to-json_vx.x.x.js
- enzyme_v3.x.x.js
- eslint-config-google_vx.x.x.js
- eslint-plugin-flowtype_vx.x.x.js
- eslint-plugin-react_vx.x.x.js
- eslint_vx.x.x.js
- eval_vx.x.x.js
- faker_v4.x.x.js
- firebase_v5.x.x.js
- flat_vx.x.x.js
- flow-bin_v0.x.x.js
- flow-copy-source_vx.x.x.js
- gh-pages_vx.x.x.js
- graphiql_vx.x.x.js
- graphql-tag_vx.x.x.js
- gulp-babel_vx.x.x.js
- gulp-sourcemaps_vx.x.x.js
- gulp-typescript_vx.x.x.js
- gulp_vx.x.x.js
- html-webpack-plugin_vx.x.x.js
- immer_vx.x.x.js
- invariant_v2.x.x.js
- jest_v23.x.x.js
- lerna_vx.x.x.js
- less-loader_vx.x.x.js
- less_vx.x.x.js
- lodash_v4.x.x.js
- lodash_vx.x.x.js
- lowdb_vx.x.x.js
- memory-fs_vx.x.x.js
- mini-css-extract-plugin_vx.x.x.js
- node-sass_vx.x.x.js
- object-path_vx.x.x.js
- pluralize_v7.x.x.js
- pluralize_vx.x.x.js
- promise-polyfill_vx.x.x.js
- prop-types_v15.x.x.js
- puppeteer_v1.2.x.js
- query-string_vx.x.x.js
- react-apollo_v2.x.x.js
- react-content-loader_vx.x.x.js
- react-intl_v2.x.x.js
- react-intl_vx.x.x.js
- react-loadable_v5.x.x.js
- react-router-dom_v4.x.x.js
- react-spinners_vx.x.x.js
- react-test-renderer_v16.x.x.js
- react-vega_vx.x.x.js
- regenerator-runtime_vx.x.x.js
- rxjs_v5.0.x.js
- safer-eval_vx.x.x.js
- sass-loader_vx.x.x.js
- shortid_v2.2.x.js
- style-loader_vx.x.x.js
- styled-components_v3.x.x.js
- ts-jest_vx.x.x.js
- ts-loader_vx.x.x.js
- typescript_vx.x.x.js
- vega-lib_vx.x.x.js
- vega-tooltip_vx.x.x.js
- victory_vx.x.x.js
- webpack-cli_vx.x.x.js
- webpack-dev-server_vx.x.x.js
- webpack_v4.x.x.js
- app.ts
- config.ts
- package.json
- tsconfig.json
- tsconfig.release.json
- tslint.json
- arrayPattern.js
- connectPattern.js
- index.js
- objectPattern.js
- actionManager.js
- actionsToVariables.js
- actionToMutation.js
- generateAction.js
- index.js
- isAction.js
- mutate.js
- types.js
- exportModal.js
- importModal.js
- index.js
- utils.js
- index.js
- number.js
- select.js
- text.js
- toolbar.js
- index.js
- pagination.js
- share.js
- sort.js
- toolbarlayout.js
- utils.js
- Generator.js
- index.js
- locale.js
- Provider.js
- types.js
- cache.js
- connectContext.js
- containerQuery.js
- context.js
- deploy.js
- errorCatch.js
- graphqlQuery.js
- id.js
- index.js
- onDeploy.js
- query.js
- relation.js
- request.js
- route.js
- title.js
- types.js
- utils.js
- validation.js
- index.js
- arrayField.js
- compositeField.js
- nullField.js
- objectField.js
- relationField.js
- scalarField.js
- types.js
- utils.js
- index.js
- types.js
- utils.js
- emptyRenderChildren.js
- log.js
- rbac.js
- index.js
- arrayPattern.test.js
- connectPattern.test.js
- objectPattern.test.js
- actionManager.test.js
- actionsToMutation.test.js
- actionsToVariables.test.js
- generateAction.test.js
- mutate.test.js
- provider.test.js.snap
- data.js
- generater.test.js
- index.test.js
- provider.test.js
- async-array-crud.test.js
- async-array-toolbar.test.js
- dashboard.test.js
- sync-array-crud.test.js
- utils.js
- data.js
- deploy.test.js.snap
- id.test.js.snap
- onDeploy.test.js.snap
- queryComponent.test.js.snap
- request.test.js.snap
- utils.test.js
- cache.test.js
- deploy.test.js
- id.test.js
- onDeploy.test.js
- query.test.js
- queryComponent.test.js
- relation.test.js
- request.test.js
- route.test.js
- title.test.js
- validation.test.js
- onDeployManager.test.js
- schemaToQueriesObject.test.js.snap
- objectToQueries.test.js
- query.test.js
- schemaToQueriesObject.test.js
- compiler.js
- .babelrc
- package.json
- yarn.lock
- build.ts
- dataSources.ts
- serve.ts
- watchSchema.ts
- canner.def.js
- index.tsx
- package.json
- customize-string-input.tsx
- canner.schema.js
- App.d.tsx
- App.tsx
- Cms.d.tsx
- Cms.tsx
- default.canner.auth.ts
- Error.tsx
- Header.tsx
- index.html
- createEntryFile.ts
- createWebpackConfig.ts
- createWindowVarsFile.ts
- mock.ts
- requireUncached.ts
- transformSchemaToJSON.ts
- webpackCommon.ts
- config.ts
- index.ts
- createSchemaWebpackConfig.test.js.snap
- createWebpackConfig.test.js.snap
- createWebWebpackConfig.test.js.snap
- createSchemaWebpackConfig.test.js
- createWebpackConfig.test.js
- createWebWebpackConfig.test.js
- transformSchemaToJSON.test.js
- package-lock.json
- package.json
- tsconfig.global.json
- tsconfig.json
- tsconfig.release.json
- tslint.json
- yarn.lock
- canner-node.js
- index.js
- parser.js
- traverser.js
- tree.js
- types.js
- visitor.js
- node.test.js
- parse.test.js
- qa-compiler.test.js
- traverse.test.js
- tree.test.js
- visitor.test.js
- .babelrc
- package.json
- yarn.lock
- Error.js
- index.js
- Navbar.js
- Sidebar.js
- types.js
- index.js
- index.test.js
- navbar.test.js
- sidebar.test.js
- .babelrc
- package.json
- yarn.lock
- cancelButton.js
- confirmButton.js
- context.js
- createEmptyData.js
- createFakeData.js
- index.js
- item.js
- liteCMS.js
- types.js
- utils.js
- cancelbutton.test.js
- canner-react-cms-helpers.test.js
- confirmbutton.test.js
- createEmptyData.test.js
- createFakeData.test.js
- item.test.js
- liteCMS.test.js
- react163Adapter.js
- utils.test.js
- .babelrc
- package.json
- yarn.lock
- Block.js
- Body.js
- Col.js
- Collapse.js
- Condition.js
- Default.js
- Focus.js
- index.js
- InnerBlock.js
- Row.js
- Tabs.js
- index.test.js
- .babelrc
- package.json
- yarn.lock
- index.js
- .eslintrc
- canner-ref-id.test.js
- .babelrc
- package.json
- yarn.lock
- index.js
- utils.js
- loader.test.js.snap
- canner.def.js
- index.js
- package.json
- compiler.js
- loader.test.js
- test.schema.js
- .babelrc
- package.json
- yarn.lock
- array.js
- basic.js
- boolean.js
- component.js
- date.js
- enum.js
- file.js
- geoPoint.js
- image.js
- index.js
- json.js
- number.js
- object.js
- page.js
- relation.js
- root.js
- string.js
- body.js
- hocs.js
- index.js
- configure.js
- flow-types.js
- index.js
- layout.js
- utils.js
- validator.js
- visitorManager.js
- index.test.js.snap
- integration.test.js.snap
- react-component.test.js.snap
- canner.def.js
- package.json
- package.json
- canner.def.js
- package.json
- canner.def.js
- package.json
- filter.js
- pagination.js
- sorter.js
- blog.js
- index.test.js
- integration.test.js
- layout.test.js
- react-component.test.js
- serializer.js
- utils.test.js
- validator.test.js
- .babelrc
- package.json
- yarn.lock
- index.ts
- factory.ts
- interface.ts
- app.ts
- playground.ts
- package.json
- tsconfig.json
- tsconfig.release.json
- tslint.json
- yarn.lock
- index.js
- store.js
- wrap.js
- wrap.test.js.snap
- .eslintrc
- react-cms-simulator.test.js
- react163Adapter.js
- store.test.js
- wrap.test.js
- .babelrc
- package.json
- README.md
- yarn.lock
- CannerFirebaseStorage.js
- CannerGoogleCloudStorage.js
- CannerS3Storage.js
- CannerStorage.js
- FirebaseAdminStorage.js
- FirebaseClientStorage.js
- GoogleCloudStorage.js
- ImgurStorage.js
- index.js
- S3Storage.js
- Storage.js
- types.js
- utils.js
- FirebaseAdminStorage.test.js
- FirebaseClientStorage.test.js
- GoogleCloudStorage.test.js
- ImgurStorage.test.js
- S3Storage.test.js
- utils.test.js
- .babelrc
- package.json
- yarn.lock
- logo1616.ico
- middleware.ts
- oidcHandler.ts
- token.ts
- serve.ts
- head.pug
- cms.pug
- layout.pug
- app.ts
- config.ts
- constants.ts
- package.json
- tsconfig.json
- tsconfig.release.json
- tslint.json
- app.ts
- config.ts
- context.ts
- error.ts
- package.json
- tsconfig.json
- tsconfig.release.json
- tslint.json
- index.js
- index.test.js
- .babelrc
- package.json
- yarn.lock
- index.js
- index.test.js
- .babelrc
- package.json
- graphql.ts
- interface.ts
- jsonLogger.ts
- loggerMiddleware.ts
- oidcTokenVerifier.ts
- token.ts
- package.json
- tsconfig.json
- tsconfig.release.json
- tslint.json
- .eslintrc.js
- .flowconfig
- .gitignore
- .npmignore
- babel.config.js
- gulpfile.js
- jest.config.js
- jestSetupFile.js
- lerna.json
- LICENSE
- package.json
- README.md
- README.old.md
- tsconfig.json
- tsconfig.release.json
- webpack.config.js
- yarn.lock
# Installation Guide
1. Get the code
git clone https://github.com/CannerCMS/cannercms
Downloads the entire project code from GitHub to your computer.
cd cannercms
Moves into the project folder you just downloaded.
2. Node.js
Easy RecommendedPrerequisites
npm install
Downloads and installs the libraries listed in package.json.
npm start
Starts the development/run server.
After running the command, open the address shown in the terminal (usually something like http://localhost:3000) in your browser.
// repository documentation
Was this content helpful?
(0 ratings)
