Skip to content

bluzky/orangecms

Repository files navigation

OrangeCMS - CMS admin for your static site

Demo post page

OrangeCMS is a admin app for static site on github. Instead of creating/editing file on your local and push to git repo. You are now can manage your content with Web UI and your content editors don't have to know anything about git

DEMO

Start dev server

  • Requirement: elixir, nodejs installed on your machine. Nodejs is used to build assets only

  • Install dependencies mix setup

  • Start project mix phx.server

Build release

  • Manual build mix assets.deploy && mix release
  • Build docker docker build -t orangecms .

Deploy with Fly.io

fly cli installation guide here https://fly.io/docs/flyctl/

Then run fly launch

Roadmap

  • Project

    • Creat project
    • Setup project flow
    • Project scope query
    • Encrypt github secret
  • Content type

    • Extract content type from markdown frontmatter
    • Add/edit/remove field from frontmatter schema
    • Add new content type and sync from github
    • Cofig image upload, use relative image path
    • Add default field for github file: file_name and file_dir
    • Reorder content type's field
    • Resync button to force sync latest data from github
  • Content entry

    • Import content from github
    • Create/edit/delete content entry
    • Publish (update/create) content to github
    • Markdown editor
    • Block editors
    • improve frontmatter form
    • Delete content both in database and on repo
    • Search, filter post
  • User

    • first time setup create user
    • Manage user
    • Assign user to project
    • RBAC
    • Update User profile and password
    • Login / logout
  • Integration

    • Cloudinary image upload
    • Manage API token
  • API

    • API load collection
    • API load single content entry
    • Token authentication

This project is impossible without these excellenct works: