Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/prooph/proophessor-do

prooph components in action
https://github.com/prooph/proophessor-do

cqrs ddd event-sourcing php prooph

Last synced: 2 months ago
JSON representation

prooph components in action

Awesome Lists containing this project

README

        

# Proophessor Do
**prooph components in action**

[![Build Status](https://travis-ci.org/prooph/proophessor-do.svg)](https://travis-ci.org/prooph/proophessor-do)
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/prooph/improoph)

Proophessor Do (short *Do*) demonstrates the power of prooph components in conjunction with zend expressive.
And you're ask to try it yourself. **Do** includes exercises! So read on and **pick up a task!**

## 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

[Installation Documentation](docs/installation/index.md)

## Management UI (new)

[Management UI Documentation](docs/mgmt-ui/index.md)

![Model Exploration](https://github.com/prooph/proophessor/blob/master/assets/prooph_do_exploration.gif)

## 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](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/prooph/improoph)
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

- [x] Project set up, register user, post todo - done by [people at prooph](https://github.com/orgs/prooph/people)
- [x] [Mark a todo as done](https://github.com/prooph/proophessor-do/issues/1) - done by [Danny van der Sluijs](https://github.com/DannyvdSluijs)
- [x] [Reopen a todo](https://github.com/prooph/proophessor-do/issues/2) - done by [Bas Kamer](https://github.com/basz)
- [x] [Add deadline to todo](https://github.com/prooph/proophessor-do/issues/35) - done by [Wojtek Gancarczyk](https://github.com/theDisco)
- [x] [Add reminder for assignee](https://github.com/prooph/proophessor-do/issues/60) - done by [Roman Sachse](https://github.com/rommsen)
- [x] [Mark a todo as expired](https://github.com/prooph/proophessor-do/issues/75) - done by [Dranzd Viper](https://github.com/dranzd)
- [x] [Notify assignee when todo deadline is expired](https://github.com/prooph/proophessor-do/issues/82) - done by [Michał Żukowski](https://github.com/mikemix)
- [x] [Check that email address is unique](https://github.com/prooph/proophessor-do/issues/92) - done by [Lucas Courot](https://github.com/lucascourot)
- [ ] [Allow user registration and sign in with Github](https://github.com/prooph/proophessor-do/issues/129) - done by [your name here]
- more features will follow ...

## Tutorials

- [Replay History](docs/tutorials/replay_history.md)
- [Take Snapshots](docs/tutorials/take_snapshots.md)

## Technology Stack

[List of used technologies](docs/technology_stack.md) - We <3 Open Source

## Support

- Ask questions on Stack Overflow tagged with [#prooph](https://stackoverflow.com/questions/tagged/prooph).
- File issues at [https://github.com/prooph/proophessor-do/issues](https://github.com/prooph/proophessor-do/issues).
- Say hello in the [prooph gitter](https://gitter.im/prooph/improoph) chat.

Happy messaging!