Cezanne Core
Usage
In order to get started with Cezanne, you need a configuration file in the root of your project (where the package.json
file is located).
We suggest to use Dhall for a better development experience (not required, but recommended).
let makeUrl = \(item : Text) -> let remote = "https://example.com" let opengraph = "${remote}/opengraph" let instagram = "${remote}/instagram" let twitter = "${remote}/twitter" let linkedin = "${remote}/linkedin" in { instagram = "${instagram}/${item}/:id" , opengraph = "${opengraph}/${item}/:id" , twitter = "${twitter}/${item}/:id" , linkedin = "${linkedin}/${item}/:id" } in { version = 0.1 , endpoints = { articles = makeUrl "articles" , topics = makeUrl "topics" , authors = makeUrl "authors" , languages = makeUrl "languages" } , viewports = { instagram = [1080, 1080] , opengraph = [1200, 630] , twitter = [1012, 506] , linkedin = [1920, 1080] } , aws = { access_key = "" , access_secret = "" , bucket_name = "" , path = "/path/example/:item/:id" } }
the generated JSON file is:
Name the file cezanne.config.json
and you can start to use Cezanne.
It will generate a dynamic method for every route listed in your cezanne.config.json
file, following the format:
generate[Endpoint][Social]
so that with the given configuration file, you'll have the following methods:
;;;
and so on. If the specified uri has a dynamic parameter (using the Express.js colon notation), you'll need to pass an object with the parameter values as follows:
; const generateArticlesInstagram = cezanne; // URI: https://example.com/instagram/articles/:id// dynamic id ^;