/TechEd_SD-W07

Repo for TechEd Software Development Bootcamp - Week 07.

Primary LanguageJavaScriptMIT LicenseMIT

🎓 Tech Educators' SWD Bootcamp 🎓
🎓 Week 07 Assessment 🎓

🌴Linktree🌴

Repository for coursework for TechEd Software Development Bootcamp - Week 07

Client Server

📋 Project Outline

Putting together the React client code, Node.js server code and Postgres database to build a full stack React application.

Did not achieve all requirements and/or stretch goals. Difficulties around understanding React.js. I was unable to fully implement routing. I did not implement dynamic routing. The framework for PUT/DEL is available on server and DB queries are present for UPDATE/DELETE.

🙍 User Stories

As a User, I would like to...

  • ...create new posts and add them to the page.
  • ...assign a category to each post.
  • ...view all posts added on the page and the category they're in.
  • ...view all posts in a specific category by visiting a dedicated page for that category (Stretch goal).
  • ...add new categories (Stretch goal).

👷 Requirements

  • Design a database schema with relationships between tables - COMPLETE
  • Create a new application with a React client and an Express server - COMPLETE
  • Seed the database with data. Either run your SQL queries in Supabase SQL Editor OR use a seed.js file - COMPLETE
  • Create Express endpoints to handle requests so you can POST and GET the data appropriately for your application. - COMPLETE
  • Create multiple pages using react-router-dom: - NOT DONE
    • Create a home page. - NOT DONE
    • Create a page to show all the posts and use fetch to call your server to get your data. - NOT DONE
    • Create a page where users can create new posts using a form. - NOT DONE

🥅 Stretch Goals

  • Allow users to "Like" posts and increase the likes. - NOT DONE
  • Allow users to DELETE posts. - NOT DONE
  • Allow users to filter posts in a specific category. Use either a query string like /posts?category=education or a dedicated route for the categories at /posts/:categoryName. - NOT DONE

📁 Project Structure

Client / Server are split into their own folders.

✔️ Implementation (of Requirements)

Client is separated into React Components, with some helper JS. CSS is in separate folder. Server is in its own folder.