Skip to content

40ants/reblocks-cms

Repository files navigation

reblocks-cms - Content management system for sites built on Reblocks web framework

REBLOCKS-CMS ASDF System Details

  • Description: Content management system for sites built on Reblocks web framework
  • Licence: Unlicense
  • Author: Alexander Artemenko svetlyak.40wt@gmail.com
  • Homepage: https://40ants.com/reblocks-cms
  • Bug tracker: [https://github.com/40ants/reblocks-cms /issues][10da]
  • Source control: GIT
  • Depends on: [3bmd][cc3e], [3bmd-ext-code-blocks][d94a], [40ants-routes][25b9], [alexandria][8236], [anaphora][c9ae], [mito][5b70], [parenscript][7921], [reblocks][184b], [reblocks-lass][28e0], [reblocks-parenscript][c07c], [reblocks-ui2][85c5], [reblocks-ui2-tailwind][a861], [serapeum][c41d]

[][a710]

Installation

You can install this library from Quicklisp, but you want to receive updates quickly, then install it from Ultralisp.org:

(ql-dist:install-dist "http://dist.ultralisp.org/"
                      :prompt nil)
(ql:quickload :reblocks-cms)

Usage

TODO: Write a library description. Put some examples here.

API

REBLOCKS-CMS/CONTROLLER/CONTENT

package reblocks-cms/controller/content

Functions

function reblocks-cms/controller/content:create-content title text slug author &key (type :post) tags

function reblocks-cms/controller/content:get-content-by-slug slug

function reblocks-cms/controller/content:update-content content &key title text

REBLOCKS-CMS/CONTROLLER/CONTENT-TAG

package reblocks-cms/controller/content-tag

Functions

function reblocks-cms/controller/content-tag:bind-content-to-tag content tag

function reblocks-cms/controller/content-tag:get-content-tags content

REBLOCKS-CMS/MODELS/AUTHOR

package reblocks-cms/models/author

Classes

AUTHOR

class reblocks-cms/models/author:author (serial-pk-mixin dao-class record-timestamps-mixin)

REBLOCKS-CMS/MODELS/CONTENT

package reblocks-cms/models/content

Classes

CONTENT

class reblocks-cms/models/content:content (serial-pk-mixin dao-class record-timestamps-mixin)

REBLOCKS-CMS/MODELS/CONTENT-TAG

package reblocks-cms/models/content-tag

Classes

CONTENT-TAG

class reblocks-cms/models/content-tag:content-tag (serial-pk-mixin dao-class record-timestamps-mixin)

TAG

class reblocks-cms/models/tag:tag (serial-pk-mixin dao-class record-timestamps-mixin)

REBLOCKS-CMS/MODELS/TAG

package reblocks-cms/models/tag

Classes

TAG

class reblocks-cms/models/tag:tag (serial-pk-mixin dao-class record-timestamps-mixin)

REBLOCKS-CMS/ROUTES

package reblocks-cms/routes

Macros

macro reblocks-cms/routes:cms-pages namespace

REBLOCKS-CMS/UTILS/MARKUP

package reblocks-cms/utils/markup

Functions

function reblocks-cms/utils/markup:markdown-to-html text &key (stream reblocks/html:*stream*)

Renders given markdown TEXT as HTML into the current page's stream.

REBLOCKS-CMS/WIDGETS/CONTENT-PAGE

package reblocks-cms/widgets/content-page

Classes

CONTENT-PAGE

class reblocks-cms/widgets/content-page:content-page (ui-widget)

Readers

reader reblocks-cms/widgets/content-page:content-slug (content-page) (:slug)

Functions

function reblocks-cms/widgets/content-page:make-content-page content-slug

REBLOCKS-CMS/WIDGETS/POSTS-LIST

package reblocks-cms/widgets/posts-list

Classes

POSTS-LIST-ITEM

class reblocks-cms/widgets/posts-list:posts-list-item (widget)

Readers

reader reblocks-cms/widgets/posts-list:item-content (posts-list-item) (:content)

POSTS-LIST

class reblocks-cms/widgets/posts-list:posts-list (ui-widget)

TAGGED-POSTS-LIST

class reblocks-cms/widgets/posts-list:tagged-posts-list (posts-list)

Readers

reader reblocks-cms/widgets/posts-list:tag-name (tagged-posts-list) (:tag)

Functions

function reblocks-cms/widgets/posts-list:make-tagged-posts-list tag

REBLOCKS-CMS/WIDGETS/UTILS

package reblocks-cms/widgets/utils

Functions

function reblocks-cms/widgets/utils:render-tags tags

REBLOCKS-CMS/WIDGETS/VARS

package reblocks-cms/widgets/vars

Variables

variable reblocks-cms/widgets/vars:*h1-classes* "text-4xl sm:text-5xl font-bold text-gray-800 mb-4 leading-tight tracking-wide text-center"

Redefine this variable to change style of the main header on your site.

variable reblocks-cms/widgets/vars:*highlight-js-path* nil

Download the file with needed languages support and make a pathname like this:

(asdf:system-relative-pathname :lisp-ru
                                 (make-pathname :directory '(:relative "static")
                                                :name "highlight.min"
                                                :type "js"))

JS file can be downloaded on [official Highlight.js site][3c28].

variable reblocks-cms/widgets/vars:*highlight-js-theme-path* nil

Download the file with needed languages support and make a pathname like this:

(asdf:system-relative-pathname :lisp-ru
                                 (make-pathname :directory '(:relative "static")
                                                :name "atom-one-dark.min"
                                                :type "css"))

JS file can be downloaded on [official Highlight.js site][3c28].

variable reblocks-cms/widgets/vars:*tag-classes* "inline-block bg-gray-200 rounded-full px-2 text-sm font-semibold text-gray-700"

Redefine this variable to change appearence of the tag labels of the content.

/blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/controller/content-tag.lisp#L1 [cc74]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/controller/content-tag.lisp#L22 [5fe8]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/controller/content-tag.lisp#L36 [0d61]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/controller/content.lisp#L1 [d10f]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/controller/content.lisp#L16 [4376]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/controller/content.lisp#L21 [8169]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/controller/content.lisp#L32 [3f52]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/models/author.lisp#L1 [7deb]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/models/author.lisp#L10 [0e9e]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/models/content-tag.lisp#L1 [c624]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/models/content-tag.lisp#L22 [bb86]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/models/content.lisp#L1 [14f0]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/models/content.lisp#L19 [2bf9]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/models/tag.lisp#L1 [2ad4]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/models/tag.lisp#L10 [915a]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/routes.lisp#L1 [e09d]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/routes.lisp#L15 [f91a]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/utils/markup.lisp#L1 [d4df]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/utils/markup.lisp#L15 [323a]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/content-page.lisp#L1 [97c0]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/content-page.lisp#L55 [6120]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/content-page.lisp#L56 [b1e2]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/content-page.lisp#L65 [4191]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/posts-list.lisp#L1 [43aa]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/posts-list.lisp#L42 [2752]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/posts-list.lisp#L46 [d372]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/posts-list.lisp#L47 [6b66]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/posts-list.lisp#L52 [8939]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/posts-list.lisp#L53 [b2b6]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/posts-list.lisp#L66 [ba91]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/utils.lisp#L1 [314c]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/utils.lisp#L23 [996b]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/vars.lisp#L1 [3474]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/vars.lisp#L10 [4d44]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/vars.lisp#L15 [b85c]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/vars.lisp#L20 [f835]: https://github.com/40ants/reblocks-cms /blob/a39f20e4dcf4bfbdca646458315869ce9039dab1/src/widgets/vars.lisp#L34 [10da]: https://github.com/40ants/reblocks-cms /issues [a710]: https://github.com/40ants/reblocks-cms/actions [3c28]: https://highlightjs.org/download [cc3e]: https://quickdocs.org/3bmd [d94a]: https://quickdocs.org/3bmd-ext-code-blocks [25b9]: https://quickdocs.org/40ants-routes [8236]: https://quickdocs.org/alexandria [c9ae]: https://quickdocs.org/anaphora [5b70]: https://quickdocs.org/mito [7921]: https://quickdocs.org/parenscript [184b]: https://quickdocs.org/reblocks [28e0]: https://quickdocs.org/reblocks-lass [c07c]: https://quickdocs.org/reblocks-parenscript [85c5]: https://quickdocs.org/reblocks-ui2 [a861]: https://quickdocs.org/reblocks-ui2-tailwind [c41d]: https://quickdocs.org/serapeum


[generated by 40ANTS-DOC]

About

Content management system for sites built on Reblocks web framework

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •