Skip to content

renereed1/proophessor-do

 
 

Repository files navigation

Proophessor Do

zend expressive meets prooph

You're viewing an example application showing you how well PSR-7 middleware can play together with CQRS and EventSourcing.

And you're ask to try it yourself. Proophessor Do includes exercises! So read on and pick up a task!

Gitter

What's going on here?

prooph is an organisation developing and supporting CQRS and Event-Sourcing infrastructure for PHP environments. You can learn more about it by reading the official prooph guide.

This repository contains an example implementation of a small domain model served by a PHP web application flavoured with client side JavaScript to keep the UI and the Backend focused on what they can best.

Technology Stack

Server Side

Client Side

Business Domain

The business logic implemented in this educational project is very simple and should be known by everybody in one way or the other. It is about managing todo lists for users whereby a todo can have a deadline and the assigned user can add a reminder to get notified when time has passed.

Installation

Please refer to the installation instructions.

Learning by doing!

When you play around with the application you will notice missing functionality. This has a simple reason. You explore a learning application and what is the best way to learn? Right! Learning by doing! So if you want to learn something about CQRS and Event Sourcing:

  1. Pick up an open task listed below
  2. Get us a note in the corresponding issue that you accept the challenge
  3. Ask if you need help -> Gitter
  4. Have fun and learn!

Note: Some tasks depend on others and some can be split into sub tasks. Let's discuss this in the issues. And of course you can also work together. Sharing work doubles knowledge!

HALL OF FAME

A successfully merged pull request will add you to the HALL OF FAME!

Features

  • Project set up, register user, post todo - done by people at prooph
  • Mark a todo as done - done by [your name here]
  • Reopen a todo - done by [your name here]
  • Add deadline to todo - done by [your name here]
  • Add reminder for assignee - done by [your name here]
  • Mark a todo as expired - done by [your name here]
  • Notify assignee when todo deadline is expired - done by [your name here]
  • Notify assignee when reminder time is reached - done by [your name here]
  • more features will follow ...

Support

Happy messaging!

About

zend expressive meets prooph

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 81.4%
  • PHP 15.1%
  • HTML 2.3%
  • CSS 1.1%
  • ApacheConf 0.1%