Coder Social home page Coder Social logo

forum-project's Introduction

Portfolio Project - Forum

Motivation/Reasoning for the Project

This project was something I made as I wanted to learn more about back end development and also to learn more about Go. The idea it started with was I was going to use Go and develop something that could interact with a database, I hadn't properly worked with a more modern language which was my motivation for picking Go and I just wanted to build more confidence with programming in general. Postgres was also used as the database in this case as I have some familiarity with it but wanted to use it with a project to learn more.

I was mostly focusing on the back end of this, front end is done in a basic way with mostly static HTML with some very light javascript.

Demonstrations

User authentication/registration with conditional rendering based on a users role.

Able to create/edit/delete posts and create/edit threads

Ability to upload and display profile pictures

Features Implemented

  • User Authentication/Registration
    • Registration with credentials stored in the database
    • Bcrypt used for password salting/encryption
    • Sessions are tracked in the database with an encrypted string stored in a cookie with validation comparing the cookie to the stored valid sessions to confirm the user is allowed to perform only valid actions
  • Dynamic Page Rendering
    • Boards/Threads/Posts/User Profiles are loaded from the database with the layout not being reliant on fixed links between pages
  • Forum Features
    • Able to create/edit/delete posts
    • Able to create/edit threads
    • Able to create/edit/delete forum categories/subcategories and their properties via the admin panel
  • User Profile Features
    • Able to upload and set a profile picture, image will be validated to be a valid .jpg/.png before being applied
    • Able to update password

forum-project's People

Contributors

sleepy-day avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.