This project is an exercise in using the Cene programming language. It implements a "hello world" level of functionality covering a few different ways of using Cene. Cene controls the build logic, the Web server logic, and the Web client logic.
<script> tag. The Node.js server serves the client-side code.
This repo also demonstrates how a program can be built from multiple .cene files.
To install, you'll need Node.js and npm. This repository also depends on specific npm packages (namely
express), but the
npm install commands below can take care of those.
To obtain build dependencies and run the directory transformation:
$ npm install $ npm run build
This will create a fin/ directory containing the transformation result, as well as an intermediate build/ directory. The fin/ directory itself has dependencies. To obtain server dependencies and start the Node.js server:
$ cd fin/ $ npm install $ node server.js
Then you can visit the site served at localhost:8080. The page displays a "Hello, client!" message by constructing some DOM nodes with the JS FFI.
Why two installations
You may wonder why we're installing additional dependencies after a build step rather than just installing them up front. We're doing this to demonstrate that Cene and its dependencies (npm and Node.js) are only incidental details of Cene's implementation, and they're not necessarily related to the needs of a specific Cene project. For instance, a Cene project could use some other package manager like Maven or RubyGems.
About this project
This project is released under the MIT license. See LICENSE.txt.