Illuztrado / TownBoard

TownBoard: A social platform enabling users to share announcements and mini-blogs about initiatives, projects, and accomplishments within their organizations.

Home Page:https://townboard.onrender.com/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TownBoard

TownBoard: A social platform enabling users to share announcements and mini-blogs about initiatives, projects, and accomplishments within an organization.

Technologies utilized

Built with: JavaScript, Node.js, Express.js, MongoDB, Google OAuth 2.0, Handlebars, CSS + MaterializeCSS

Server

The server logic is written in JavaScript and runs on NodeJS. The MVC architectural pattern was utilized in the designing the back-end structure. Authentication is handled by GoogleAuth, removing the need to create a new account within the app. A private posting functionality was impletemented to allow users to submit posts that can only be viewed by the user who submitted the post (abstraction of selected user posts). Data generated by users are stored in a MongoDB database.

Client

TownBoard's user interface is writtern in HTML, CSS, and JavaScript with Handlebars as the templating languange and Materialize as the styling framework. The UI functionalities that interact with the APIs in the server is written in JavaScript.

Future Optimizations

  1. Add an upload photo functionality
  2. Add alternative authentication service
  3. Migrate to a modern front-end framework e.g. React, Angular, etc.

About

TownBoard: A social platform enabling users to share announcements and mini-blogs about initiatives, projects, and accomplishments within their organizations.

https://townboard.onrender.com/


Languages

Language:JavaScript 55.8%Language:Handlebars 42.1%Language:CSS 2.1%