• Stars
    star
    103
  • Rank 324,551 (Top 7 %)
  • Language
    Java
  • License
    Other
  • Created about 8 years ago
  • Updated 6 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

ProjectForge - project management solution

ProjectForge is a web-based solution for project management including time tracking, team calendar, gantt-charting, financial administration, issue management, controlling and managing work-break-down-structures (e. g. together with JIRA as issue management system).

Express installation

For a fast installation via docker or executable jar, please refer Installation.

Documentation

projectforge.org

Version 7.0 is out now…​

The fastest way of installation of the newest version (7.0). you will find here: Installation

This version contains a lot of cool stuff:

  • DataTransfer tool for exchanging large files between users and external people (customers etc.)

  • A new React frontend.

  • Full support of Docker technology: installation in minutes.

  • Installation wizard

  • …​

Quickstart from command line

Note

You only need the following steps for developing ProjectForge. If you just want to run it, please download it from https://sourceforge.net/projects/pforge/ and simply start it java -jar projectforge-application-X.X.X.jar.

Or simply use the fastest way: Installation as docker image

  1. Checkout: git clone [email protected]:micromata/projectforge.git

  2. For developing try OpenJDK 11 (tested): java -version.

  3. Build ProjectForge: mvn -DskipTests clean install

  4. Run ProjectForge: java -jar projectforge-application/target/projectforge-application-X.X.X.jar

  5. Open your browser: http://localhost:8080

Remark: If you have any trouble regarding projectforge-webapp, try to delete the sub directory node_modules and repeat mvn clean install.

Configuration of ProjectForge

No configuration needed. After starting ProjectForge a first time, a console or desktop based wizard is provided for doing a quick setup (choose directory and configure optionally some parameters).

To configure a different directory you have several options (choose Your favorite):

  1. Create ProjectForge as top level directory of your home directory: $HOME/ProjectForge, or

  2. Create a directory named ProjectForge and put the jar file somewhere in it or in the same directory. ProjectForge detects the folder ProjectForge relative to the executed jar, or

  3. Create a directory and define it as command line parameter: java -Dhome.dir=yourdirectory -jar projectforge-application-X.X.X.jar, or

  4. Create a directory and define it as system environment variable PROJECTFORGE_HOME.

Quickstart with Eclipse and maven

  1. Launch eclipse

  2. Import Maven project → pom.xml in projectforge git root dir

  3. Import Maven project → pom.xml in projectforge-application dir

  4. Run maven clean install for pom.xml in projectforge-webapp (to build React stuff)

  5. Start by simply running main (in projectforge-application/src/main/java):
    org.projectforge.start.ProjectForgeApplication.java

Please note the detailed documentations for administrators, developers as well as for users.

Java version >8 is required since ProjectForge 6.0. Please note, that OpenJdk 11 is currently used in production for developing and running ProjectForge.

Quickstart with IntelliJ

  1. Launch IntelliJ IDEA

  2. Import new project via pom.xml in git root dir

  3. Run maven clean install for pom.xml in projectforge-webapp (to build React stuff)

  4. Start by simply running main (in projectforge-application/src/main/java):
    org.projectforge.start.ProjectForgeApplication.java

Quickstart with PostgreSQL (optional)

You may use PostgreSQL instead of the built-in data base.

Using PostgresSQL (Docker)

  • Choose and set a database password:
    export PGPASSWORD=mypassword

  • Run PostgreSQL:
    docker run --name projectforge-postgres -p 127.0.0.1:5432:5432 -e POSTGRES_PASSWORD=$PGPASSWORD -e POSTGRES_USER=projectforge -d postgres:13.9

  • Configure ProjectForge

$HOME/ProjectForge/projectforge.properties
projectforge.base.dir=${user.home}/ProjectForge
spring.datasource.url=jdbc:postgresql://localhost:5432/projectforge
spring.datasource.username=projectforge
spring.datasource.password=${PGPASSWORD}
spring.datasource.driver-class-name=org.postgresql.Driver
  • Run ProjectForge and enjoy it.

Table 1. Some helpful docker commands

Stop

docker stop projectforge-postgres

Start

docker start projectforge-postgres

Import dump (optional)

docker run -v ~/ProjectForgeBackup/pf.sql:/mnt/pf.sql -e PGPASSWORD=$PGPASSWORD -it --rm --link projectforge-postgres:postgres postgres:13.9 psql -h postgres -U projectforge -q -f /mnt/pf.sql 2>&1 > log.txt

PSQL

docker run -e PGPASSWORD=$PGPASSWORD -it --rm --link projectforge-postgres:postgres postgres:13.9 psql -h postgres -U projectforge

Reset passwords (optional)

update t_pf_user_password SET password_hash='SHA{BC871652288E56E306CFA093BEFC3FFCD0ED8872}', password_salt=null; update t_pf_user SET password='SHA{BC871652288E56E306CFA093BEFC3FFCD0ED8872}', password_salt=null, email='m.developer@localhost';
password is now test123.

Clear calendar subscriptions (optional)

update t_calendar set ext_subscription=false where owner_fk != #;
This is useful for avoiding a lot of external calendar calls of foreign users if your productive data contains a lot of users with calendar subscriptions.

Uninstall

docker rm projectforge-postgres

Further configurations

Please have a lock at all available config parameters: application.properties

Documentation

Adding your own plugins

ProjectForge support plugins. The existing menu can be modified and own entities and functionalities can be added.

Please note: We’re working highly on a new release (will be published soon). Wicket will be replaced by ReactJS and Rest technology. The implementation of plugins will be changed as well.

The menu is customizable (you can add or remove menu entries in the config.xml file). Deploy your plugins by adding your jar(s) to the plugin directory next to the jar file. In eclipse you have to add the plugin project to the run configuration classpath. The jars contains both, the Java classes and the web pages (Wicket-pages). Nothing more is needed. Register your plugins in the administration menu at the web gui. You need to restart the server. One advantage is that your own plugins are independent from new releases of the ProjectForge core system. In one of the next releases an example plugin will show you how easy it is to extend ProjectForge!

More Repositories

1

awesome-javascript-learning

A tiny list limited to the best JavaScript Learning Resources
5,197
star
2

awesome-css-learning

A tiny list limited to the best CSS Learning Resources
3,240
star
3

dave

A totally simple and very easy to configure stand alone webdav server
Go
335
star
4

http-fake-backend

Build a fake backend by providing the content of JSON files or JavaScript objects through configurable routes.
JavaScript
308
star
5

Baumeister

Unmaintained – 👷 The aim of this project is to help you to build your things. From Bootstrap themes over static websites to single page applications.
SCSS
171
star
6

awesome-open-source-supporting

An awesome list about possibilities to support Open Source
114
star
7

cli-error-notifier

Sends native desktop notifications if CLI apps fail
JavaScript
70
star
8

projectforge-webapp

ProjectForge is a web-based solution for project management including time tracking, team-calendar, financial administration, issue management, controlling and managing work-break-down-structures (e. g. together with JIRA as issue management system).
Java
61
star
9

generator-http-fake-backend

Yeoman generator for building a fake backend by providing the content of JSON files or JavaScript objects through configurable routes.
JavaScript
57
star
10

JiraRestClient

A simple Java Client for the JIRA Rest-API.
Java
55
star
11

generator-baumeister

Unmaintained – Yeoman Generator for »Baumeister«. The aim of this project is to help you to build your things. From Bootstrap themes over static websites to single page applications.
JavaScript
54
star
12

webengineering-2017

Source code, slides and miscellaneous stuff for the lecture Webengineering 2017 at the University of Kassel
Java
18
star
13

Merlin

Magic and customer-friendly Excel, Word and configuration acrobatics, including upload/download and templating.
Java
17
star
14

sawdust

Java module system and JUnit 5 tests
Java
16
star
15

borgbackup-butler

A client for a convenient handling of backups created by borg, such as restoring, listing etc.
JavaScript
15
star
16

check-packages

CLI tool to check your npm dependencies against a list of allowed/forbidden packages.
JavaScript
14
star
17

ConfluenceRestClient

A simple Java Client for the Confluence Rest-API.
Java
12
star
18

iFORP

Next Level HTML Prototyping -- https://prototyping4innovation.de/iforp
JavaScript
7
star
19

documentsearch

We build a document search engine with play!, elasticsearch and git. - conference repository
Scala
7
star
20

pdf-renderer

Node.js based renderer using Handlebars und JSON data to generate PDFs from HTML-Pages using wkhtmltopdf
JavaScript
6
star
21

hungry-fetch

Nomnomnom... lets you test your fetch calls.
TypeScript
6
star
22

WebSecurity

WebSecurity Projekt.
JavaScript
4
star
23

baumeister.io

The website of Baumeister
CSS
4
star
24

labs-spring-security

Example code for blog articles about spring-security under https://labs.micromata.de/blog/tutorial-spring-security-uebersicht.html
Java
4
star
25

JUGH-2012-Adam-Bien

Java
4
star
26

webengineering-2019

Slides and code for the lecture Webengineering 2019 at the University of Kassel
Java
4
star
27

paypal

Integration of PayPal in your Java application
Java
4
star
28

cloud-elastic-workloads

t+x^2 project demonstrating multiple approaches to automatically scale performance-critical application parts using cloud technologies
Java
4
star
29

mgc

Micromata Genome Commons
Java
4
star
30

tec-talk-spa-coding-samples

This repository contains the coding samples for the tec talk »Single Page Apps - A Framework Agnostic Approach« by René Viering
CSS
4
star
31

projectforge-excel

Excel export package (convenient usage of POI) for exporting MS-Excel sheet with a few lines of code or modifiing existing MS-Excel sheets.
Java
4
star
32

open-data-codefest

Ergebnisse des Open Data Codefest
Jupyter Notebook
3
star
33

ProFi-Pattern-Library

CSS
3
star
34

webengineering-2015-ss

Lecture material for Webengineering at the University of Kassel
3
star
35

generator-bootstrap-kickstart

[deprecated] Check the successor Baumeister instead.
JavaScript
3
star
36

projectforge-continuous-db

Supports programmatically creation and updates of data-bases for continuous delivery independent of the data-base vendor. SQL-Scripts may be created manually or automatically by parsing JPA annotations with a few lines of code.
Java
3
star
37

xjcpluginjavaapiforkml

XJC Plugin to generate the Java API for KML.
HTML
3
star
38

es-log4j2

Log4j2-NoSQL-Appender for elasticsearch
Java
3
star
39

projectforge-sync-adapter

Java
2
star
40

projectforge-common

Common used classes (by web app, standalone etc.).
Java
2
star
41

projectforge-webserver

Start helper for jetty.
Java
2
star
42

webengineering-2015-ss-demo

Source code of the live-coding demo for the lecture Webengineering.
Java
2
star
43

projectforge-jax-rs

Java API for RESTful Web Services
Java
2
star
44

spring-slim-docker-images

Example repository for slim spring docker images
Dockerfile
2
star
45

baumeister-media

Baumeister logo and artwork
PostScript
2
star
46

tpsb

TestBuilder Framework
Java
1
star
47

bootstrap-kickstart

[deprecated] Check the successor Baumeister instead.
CSS
1
star
48

raktajino

Raktajino - JUnit Extensions, served steamed or iced
Java
1
star
49

labs-website

Home of Micromata Open Source Content.
SCSS
1
star
50

eslint-config-baumeister

This package provides Baumeisters ESLint settings as an extensible shared config.
JavaScript
1
star