Software Projects
April 07, 2022
Technocentrist’s CMS & Community Management System
by: Underminer

Sometimes you just need to reinvent the wheel


Project Breakdown

What?:

This project shall evolve into a combined content and community management system, with content management taking priority in the early development period.

 

Why?:

With the rise of some of the monolithic tech giants like Facebook, most people’s consumption of content has been extremely centralized, and the quality of that content and interactions surrounding it have trended significantly downward. It’s far past time to start pushing for methods of producing and serving content that might help to encourage more thoughtful consumption of the same, and supplement that with creating communities focused on encouraging and facilitating more civil and less emotionally charged interactions.

 

CMS options like WordPress handle basic blogs and small numbers of contributors well, but don’t have great options for larger community building. I have also never been impressed with the options in WordPress for handling more than a handful of contributors, and managing security and updates tends to be a nightmare in that ecosystem. Forum based options don’t do well with allowing easy display of content formatted and collected in a reasonable fashion. Neither of the above support some of my wish-list items (like networking message areas) without customization.

 

Also, and possibly most importantly, this is primarily a technology related site; interesting DIY projects are kind of the name of the game.

 

Where?:

This project is working and in place running www.technocentrist.com. Repository access to the source code is presently private. When appropriate, it will be made available for general public access at some point in the future. Before that milestone I need to both figure out how I best want to accomplish that, and finish integration of the components I’d most like to see others expand and iterate on. Likewise, rapid iteration to get a MVP in place does tend to spaghettify code more than I’d like and it will need some cleaning and refactoring.

 

How?:

Currently this is a one man project that I'm working on in parallel to several other undertakings, both professional and personal. When I reach a few important milestones development will move to either a more collaborative setup, or fully open source. Either way either most or all of the underlying development will be made accessible.

 

Feature Wish-List (listed in no particular order):

  • Respect Privacy (Collect or divulge the minimum amount of information possible to accomplish a given functionality)
  • Support for multiple authors to submit multiple post types
  • Moderator/Admin approval and publishing system for user submitted posts
  • Author Bios with Mod/Admin approval system
  • Security level and role based controls for submissions and editing
  • Integrated Community Forums
  • Timed Publishing of posts
  • Category collections for each post type
  • Updates for projects/how-tos. Possibly other post types as well.
  • WYSIWYG article writing/editing
  • Message network support for forum areas (FTN or similar)
  • Multiple RSS feed options
  • Personalized subscription feeds
  • Memory Caching of high volume pages and indexes
  • Memory Caching of session information
  • Mobile optimized views for content pages
  • Per post and per author view counts
  • Analytics that do not require storing any identifying or per visitor information discretely

 

Technology Stack:

  • Database: Postgresql
  • Caching: Redis
  • Language: Node.js
  • Routing: Express
  • Proxy/Load-Balace: HaProxy
  • Styling: Bootstrap/Bootswatch

 

Watch this project page, or for site news posts for updates on this project.