dreadlabs/vantomas-website

This package is abandoned and no longer maintained. No replacement package was suggested.

van-tomas.de Website core - domain + logic

7.0.0 2016-01-28 23:19 UTC

This package is not auto-updated.

Last update: 2020-01-24 15:38:25 UTC


README

Build Status Coverage Status SensioLabsInsight Code Climate Scrutinizer Code Quality Dependency Status

This repository contains all necessary domain and core logic to build the website www.van-tomas.de

Motivation

Currently, my website is based upon the Open Source Content Management System "TYPO3 CMS".

While the first versions of my website were very tightly coupled to the CMS API, this library should serve as a learning platform for practising Domain Driven Design.

During refactoring, extracting and writing tests more and more domain specific aspects emerge from the "big ball of mud".

The goal is to have as much code on the domain side to achieve the big goal: replace the CMS with another one without pain. The first tests with the CMS "Bolt" were very promising: replace the graphics layer of TYPO3.CMS with WideImage, integrate Swiftmailer without any wrappers etc.

Domain

Currently, the domain contains of the following topics:

Topic Description
Archive Generate a list of month/year date ranges, each linking to a list of pages within the range
CodeSnippet Everything which is needed to render syntax highlighted code snippets
Disqus Provide a service to the Disqus API
Event Collect events which will be published and subscribed to within the application process
EventListener Collect all event listeners which can be used within the application
Form Forms and form objects used on the site
Http Interfaces and adapters for HTTP communication for the API services
Mail Abstraction layer for application dependent mail systems and wrappers
Media Media abstraction
Page The main aspect for CMS: pages group content elements / blocks
RssFeed Rss feed generation specific aspects
SecretSanta A secret santa implementation for my family
Sitemap sitemap.xml generation specific aspects
Taxonomy Tag handling for the blog
TeaserImage Abstraction to how the teaser image can be generated for the blog article detail views
ThreatDefense Simple threat defense mechanisms
Twitter Provide a service to the Twitter API
User Abstraction to the application user / authentication facilities

TODOs

CodeSnippet\AbstractBrush

  • add stacking for aliases
  • add dependency management (if using Prism for example)