Giter Club home page Giter Club logo

PlüS

This is the main application component of the ProB based timetable validation tool PlÜS built using the Prob2 Java API. Java 11 or newer is required for using PlÜS.

Current Version: 2.9.0

Build Status codebeat badge Code Climate

Configuration

The application can be configured using environment variables or a properties file. These options can (or have to) be used during development to use local copies of the data and B models.

Properties

The properties are defined in two files main.properties and local.properties. main.properties is always loaded before local.properties.

local.properties can be used to set and override configuration options for development. See src/main/resources/local.properties.example for a sample configuration file.

modelpath defines the path to the B models, the default is src/main/resourcesmodels.

dbpath defines the path to the database used to generate the data machines.

solver defines which solver to use, options are prob or mock. Setting solver to prob starts the default ProB 2.0 based solver and mock creates a dummy solver, only useful for development and testing purposes.

NOTE: local.properties should never be under version control.

Environment Variables

The path to the models and to the database can also be configured using environment variables:

MODELPATH defines the path to the B models.

DBPATH defines the path to the database used to generate the data machines.

Development Setup

Make sure to initialize the git submodules used in this project.

To run the application you will need a copy of the data and models repositories.

Make sure you are in the correct branch of each repository.

  • Run make dist in each repository to generate the files needed for the server.
  • Set dbpath/DBPATH to the path of the dist directory in the checkout of the data repository.
DBPATH=../data/philfak-data.sqlite3
  • Set modelpath/MODELPATH to the path of the dist directory in the checkout of the models repository.
MODELPATH=../models

The application can be started either by running ./gradlew run or using your IDE.

License

This project is distributed under the terms of the ISC License.

PlüS's Projects

data icon data

This repository contains timetabling data provided by the participating faculties at HHU and tools to transform the raw data.

docs icon docs

PlUES Project documentation

handbook icon handbook

Planungswerkzeug für überschneidungsfreies Studieren – German User Handbook

meta icon meta

Meta-repository for the timetable validation tool PlüS with instructions on how to clone, checkout and build all the sub-projects associated to the this project.

mincer icon mincer

Tool to create a SQLite database from PlüS module tree and data XML files.

model-generator icon model-generator

This tool is used to generate text representations of timetable data to be used by different tools.

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.