Skip to content

Latest commit

 

History

History
78 lines (51 loc) · 2.63 KB

README.md

File metadata and controls

78 lines (51 loc) · 2.63 KB

CMXpress

JSON-Schema based headless CMS

NOTE! SurrealDB(-access options) has made this project obsolete. Yay!

Status

Under leisure development.

TODO!

  1. Write tests (when proof-of-concept is valid) <= Include db.blueprint in tests, not in app...?

    • This will make me remember how stuff works after taking a break...
  2. Refactor to use adapters for dbService. All FS-DB stuff into respective adapter.

    • lmdb-store has compatibility-issues with node 18(? / !)
  3. Redo templateService, too complex

  4. Implement user registration & update

  5. Update JSON-scema to latest AJV implemented draft

  6. Secure all string-schema fields by patterns

  7. Swap generator to Yeoman? <= Do I even need a generator? -CLI?

  8. Publish on Npm

Tech

Knowledge

Tools

Disclaimer & motivation

This is above all a proof of concept using the technoloigies listed above.

The motivation is to start with minimum CPU-, RAM- and ca$h-overhead. The database is therefor a simple JSON-file storage, because most DBs are overkill for a small Wordpress-scale CMS. On par with that, this is also an antempt at making something I would love to use when friends ask me if I can help out with a website: Then I can say "Yes, I can, but only if you accept my terms", instead of sending them off to Wordpress (Which I hate to work with), or SquareWixSpace, any of which is pointless when their requirements are so simple.

Ultimate disclaimer

Use at own risk! This is a pet project, so it is justified according to my internal mental structure.


HttPie

http GET :3000/api/inspect/toText

NOTE! See the individual routes for more examples.

Login

http --session=~/tmp/session.json :3000/api/users/current
http --session=~/tmp/session.json POST :3000/api/auth/request [email protected]
// Extract <CODE> from reponse
http --session=~/tmp/session.json POST :3000/api/auth/exchange [email protected] code=<CODE>
http --session=~/tmp/session.json :3000/api/users/current
http --session=~/tmp/session.json :3000/api/auths/logout