December 4, 2012

Symfony Day 6 - Planning a Forum App

I have Symfony configured, my database ready and now I'm ready to develop my first real application.

I've chosen a simple forum application that I believe will use what I've learned and introduce me to a few other things like user authentication and ajax interactions.

Here are the starting requirements I've outlined for my app:

  • Users will exist with three different permission levels: guests, users, and admins
    • Guests can browse forum threads
    • Users can browse and post to forum threads
    • Admins can browse, post, and create forum threads
    • Admins can change user permission levels
  • Threads will be listed ordered with the most recently updated first
  • Posts will be listed ordered with the most recent first
  • Threads should have a name, a creator, and should know when they were created
  • Posts should have an author, content, and should know when they were created
  • Threads and Posts can only be deleted by an administrator
  • When a user logs in, note their last access date

With these requirements in mind, I see the need for the following views:
  • Thread list page - the list of all threads
  • Thread view page - the list of all posts in a thread
  • The post view - for viewing a single post
  • The user page - for viewing users of the forum (and editing if an admin)
Here are my mockups: