Giter Club home page Giter Club logo

ocsimooc's Introduction

Instructions
============

This project is (initially) generated by eliom-distillery as the basic
project "ocsimooc".

Generally, you can compile it and run ocsigenserver on it by
  $ make db-init
  $ make db-create
  $ make db-update
  $ make test.byte (or test.opt)
Then connect to http://localhost:8080 to see the running app skeleton.
Registration will work only if sendmail if configured on your system.
But the default template will print the activation link on the standard
output to make possible for you to create your first users (remove this!).

See below for other useful targets for make.

Generated files
---------------

The following files in this directory have been generated by
eliom-distillery:

 - ocsimooc*.eliom[i]
   Initial source file of the project.
   All Eliom files (*.eliom, *.eliomi) in this directory are
   automatically compiled and included in the application.
   To add a .ml/.mli file to your project,
   append it to the variable SERVER_FILES or CLIENT_FILES in Makefile.options.

 - static/
   This folder contains the static data for your Website.
   The content will be copied into the static file directory of the server.
   Put your CSS or additional JavaScript files here.

 - Makefile.options
   Configure your project here.

 - ocsimooc.conf.in
   This file is a template for the configuration file for
   ocsigenserver. You will rarely have to edit itself - it takes its
   variables from the Makefile.options. This way, the installation
   rules and the configuration files are synchronized with respect to
   the different folders.

 - mobile
   The files needed by Cordova mobile apps

 - Makefile
   This contains all rules necessary to build, test, and run your
   Eliom application. See below for the relevant targets.

 - README


Makefile targets
----------------

Here's some help on how to work with this basic distillery project:

 - Initialize, start, create, stop, delete a local db, or show status:
     $ make db-init
     $ make db-start
     $ make db-create
     $ make db-stop
     $ make db-delete
     $ make db-status

 - Test your application by compiling it and running ocsigenserver locally
     $ make test.byte (or test.opt)

 - Compile it only
     $ make all (or byte or opt)

 - Deploy your project on your system
     $ sudo make install (or install.byte or install.opt)

 - Run the server on the deployed project
     $ sudo make run.byte (or run.opt)

   If WWWUSER in the Makefile.options is you, you don't need the
   `sudo'. If Eliom isn't installed globally, however, you need to
   re-export some environment variables to make this work:
     $ sudo PATH=$PATH OCAMLPATH=$OCAMLPATH LD_LIBRARY_PATH=$LD_LIBRARY_PATH make run.byte/run.opt

 - If you need a findlib package in your project, add it to the
   variables SERVER_PACKAGES and/or CLIENT_PACKAGES. The configuration
   file will be automatically updated.

 - Mobile app: Have a look in Makefile.mobile to see how to install
   the requested packages to build a mobile application,
   and the makefile rules to build and test it.

Use Camlp4 syntax
-----------------

The project is configured for using the PPX Eliom syntax. If you need
to use Camlp4, you need to provide custom targets. For example, to use
Camlp4 for the file foo_p4.eliom, add the following targets to the end
of Makefile.local:

  $(DEPSDIR)/foo_p4.eliom.server: foo_p4.eliom | $(DEPSDIR)
          $(ELIOMDEP) -server $(SERVER_INC) $< > $@

  $(DEPSDIR)/foo_p4.eliom.client: foo_p4.eliom | $(DEPSDIR)
          $(ELIOMDEP) -client $(CLIENT_INC) $< > $@

  ${ELIOM_TYPE_DIR}/foo_p4.type_mli: foo_p4.eliom
          ${ELIOMC} -infer ${SERVER_INC} $<

  ${ELIOM_SERVER_DIR}/foo_p4.cmo: foo_p4.eliom
          ${ELIOMC} -c ${SERVER_INC} $(GENERATE_DEBUG) $<

  ${ELIOM_SERVER_DIR}/foo_p4.cmx: foo_p4.eliom
          ${ELIOMOPT} -c ${SERVER_INC} $(GENERATE_DEBUG) $<

  ${ELIOM_CLIENT_DIR}/foo_p4.cmo: foo_p4.eliom
          ${JS_OF_ELIOM} -c ${CLIENT_INC} $(GENERATE_DEBUG) $<

ocsimooc's People

Contributors

canonici avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.