Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/diversen/ppm-project-manager
A single user project, task, and time management system.
https://github.com/diversen/ppm-project-manager
project-management project-manager task-list task-manager time-management time-tracker time-tracking
Last synced: about 1 month ago
JSON representation
A single user project, task, and time management system.
- Host: GitHub
- URL: https://github.com/diversen/ppm-project-manager
- Owner: diversen
- Created: 2021-06-30T14:38:04.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-07-23T14:02:04.000Z (6 months ago)
- Last Synced: 2024-07-23T16:15:26.629Z (6 months ago)
- Topics: project-management, project-manager, task-list, task-manager, time-management, time-tracker, time-tracking
- Language: PHP
- Homepage:
- Size: 1.2 MB
- Stars: 7
- Watchers: 2
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# README
![www/favicon_io/android-chrome-192x192.png](www/favicon_io/android-chrome-192x192.png)
PPM (PPM project mangement) is a single user project, task, and time management system.
It has the following features:
- Create projects
- Create tasks connected to projects
- Add time entries on tasks
- Overview of time used per week / task / project
- Mobile and desktop friendly# Usage
You can try it or use it on https://ppm.10kilobyte.com/
It only works with `await / async` and some other 'modern' features enabled in the browser.
There is no transpiling of the javascript.
If you have updated you browser the last couple of years you will be good to go.
# Install
Works on: `PHP >= 8.1`
Clone the source code:
git clone https://github.com/diversen/ppm-project-manager
cd ppm-project-managerInstall composer packages:
composer install
The `config-locale` dir will override settings in `config`.
## Load MySQL DB
Create a database and change the settings in `config-locale/DB.php`
cp config/DB.php config-locale/DB.php
Check if you can connect to the server and create the database:
./cli.sh db --server-connect
create database ppm;
exitYou can look at the other `config/` files, but you don't need to change these in order to run the system local now:
Load the sql files found in `migration` into a database.
./cli.sh migrate --up
## Run
Run the built-in PHP server:
./serv.sh
On an apache2 server you will need something like the following added to your configuration, e.g. in a `.htaccess` file placed in `www`
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]## Login
Point a browser to http://localhost:8000, create an account and log in. There is no verification of email address.
Using SMTP for email confirmation:
cp config/SMTP.php config-locale/SMTP.php
cp config/Account.php config-locale/Acoount.php* Remove `no_email_verify` in `Config-locale/Account.php` or set it to false.
* Edit the `SMTP` configuration in `config-locale/SMTP.php`.Google login using OAuth:
cp config/Google.php config-locale/Google.php
* Set `google` in `config-locale/Account.php` to `true`.
* Setup google OAuth in `config-locale/Google.php`.# Docker commands
If you want the system to run on docker you may look at the [the docker instructions](docs/docker.md).
# CSS
[water.css](https://watercss.kognise.dev/) (A drop-in collection of CSS styles)
# Build svg logo
Favicon:
[Favicon generator](https://favicon.io/favicon-generator/)
Convert favicon_io/android-chrome-192x192.png to 70x70 logo:
cd www && convert favicon_io/android-chrome-192x192.png -scale "70x70" assets/logo.png
# License
MIT © [Dennis Iversen](https://github.com/diversen)