Giter VIP home page Giter VIP logo

field2's Introduction

Field2

Welcome to the Field2 development repository. This codebase is experimental and in flux; it is not ready for production work.

Prerequisites for building & running (on Linux)

  • git (distributed version control) installed via sudo apt-get install git

  • ant (a java build system) installed via sudo apt-get install ant

  • Not strictly a prerequisite - Intellij IDEA (a java development environment) from http://www.jetbrains.com/idea/.

  • java itself. Either get a JDK 8 or 9 EA.

  • jzmq from https://github.com/zeromq/jzmq (this is for IPython support)

To build, either invest the time importing the code-base into Idea (very recommended), or edit fieldwork2.properties in the repository and and build using build.sh (this calls ant -f fieldwork2.xml)

Statically-linked built versions of native dependencies are included in the repository (currently we have a version of GLFW 3.1, a fast jpeg loading library and LWJGL).

Then, assuming an error-free build:

cd ((therepository))
./f fieldbox.FieldBox -file something.field2 -threaded 1 

on OSX subsitute ./f_mac for ./f. Note you may need to edit your ./f script to point to the location of your JDK. Additionally you'll want to add -retina 1 to your command line on Retina displays (issue #39) .

fieldbox.FieldBox is the Java Class that's the main entry-point into Field2.

In case of confusion, search the issues here and email marc ([email protected]); in case of trouble or doubt, file an issue. Finally, I'll take everybody through this (on Linux and OS X at least) during a hands-on tutorial.

Plugins (e.g Editor, Processing, Clojure)

We've just checked in a Plugin API. Field will write an example to ~/.field/plugins.edn on first run. Edit this to extend the classpath, set options and tell Field to add plugins. So, for example, to run the Processing Plugin, I have a file that reads something like this:

; {:classpath [ "/Users/marc/Downloads/Processing.app/Contents/Java/core/library/core.jar"] } ; adds the core Processing jar to Field and the place where you are building fieldprocessing
; {:plugin fieldprocessing.Processing} ; tells Field to initialize the Processing plugin 

{:plugin fieldcef.plugins.GlassBrowser}
{:plugin fieldcef.plugins.TextEditor}
{:plugin fieldcef.plugins.OutputBox}

Edit that path to point to where you are building Field2 and where you have downloaded Processing 2 to (.../marc/fieldwork2/... and .../marc/Downloads/Processing.app/...).

Those last three lines (that include plugins from the fieldcef module) are optional, but greatly increase the functionality of Field. We'll be making them core shortly.

If something goes wrong initializing a plugin Field will continue to launch, but look in the terminal for the stacktrace and error message.

License

GPLv3 covers the project as a whole, dependencies not included.

field2's People

Contributors

marcdownie avatar westb2 avatar georgc5 avatar cassiel avatar

Watchers

 avatar James Cloos 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.