var okcms = require(".."); var isProduction = process.env.OK_PRODUCTION === "true"; var port = process.env.PORT || 1337; var path = require("path"); var app = okcms .createApp({ root: "public", debug: !isProduction, production: isProduction, admin: { theme: "okadmin", // dashboard: { // resources: { // card: { // groupBy: 'stack', // descending: true // } // } // }, dashboard: { resources: { flour: { display: "image", }, }, }, }, schemas: { page: { id: { type: "string" }, title: { type: "string" }, body: { type: "text" }, links: { type: "link-list", textLabel: "A", linkLabel: "B" }, }, bread: { type: { type: "string", id: true }, title: { type: "string" }, description: { type: "text" }, color: { type: "enum", options: ["red", "blue", "green"] }, rating: { type: "enum", options: { e: "Everyone", ec: "Early Childhood", e10: "Everyone 10+", t: "Teen", m: "Mature", ao: "Adults Only", rp: "Rating Pending", }, }, video: { type: "video" }, images: { type: "gallery" }, }, test: { id: { type: "string", hidden: true }, title: { type: "string" }, flagged: { type: "flag" }, media: { type: "media" }, }, flour: { id: { type: "string", hidden: true }, title: { type: "string" }, image: { type: "image" }, images: { type: "triple-captioned-image-list" }, }, }, resources: [ { type: "page", static: { id: "about" } }, { type: "page", static: { id: "contact" } }, { type: "bread" }, { type: "test" }, { type: "flour" }, ], services: { s3: { key: process.env.S3_KEY, secret: process.env.S3_SECRET, bucket: process.env.S3_BUCKET, dirname: "okcms-example", image: { allowed: true, preserveFilename: false, maxbytes: 2 * 1024 * 1024, }, file: { allowed: true, preserveFilename: false, maxbytes: 100 * 1024 * 1024, }, video: { allowed: true, preserveFilename: true, maxbytes: 200 * 1024 * 1024, }, audio: { allowed: true, preserveFilename: true, maxbytes: 100 * 1024 * 1024, }, }, webhook: { active: false, secret: "test", command: "/path/to/build.sh", }, example: { lib: require("./lib/okexample"), stuff: "things", }, dumpfm: { lib: require("./lib/okdumpfm"), }, /* push: { lib: require("./lib/okpush"), mongodbUrl: "mongodb://localhost/okpush_example", apn: { cert: path.join(__dirname, "./lib/okpush/test_certs/overlayer_dev_cert.pem"), key: path.join(__dirname, "./lib/okpush/test_certs/overlayer_dev_key.pem"), connection: { gateway: "gateway.sandbox.push.apple.com", } }, bundleId: "us.okfoc.overlayer", notifications: { // expiry (in seconds) // badge (int) // alert (message) // payload (raw json) hub: { alert: "The hub has been updated.", }, store: { alert: "The store is now open.", }, } }, */ }, views: { "/": { data: [ { type: "bread", query: "*" }, { type: "page", query: "*" }, ], }, "/about": { data: { type: "page", query: "about" }, }, "/contact": { data: { type: "page", query: "contact" }, }, "/:id": { data: { type: "bread", query: ":id" }, }, }, }) .listen(port); console.log("Server listening at port %d...", port);