Skip to content

Myyanzhaochen/nc-news

Repository files navigation

📰 Northcoders News

🌍 Live Application

Frontend: https://nc-news-five.vercel.app

Backend API: https://nc-news-be-6q9q.onrender.com/api


📖 Overview

Northcoders News is a full-stack social news web application built with React and Node.js.

Users can browse articles, filter by topic, sort content, vote on articles, post comments, and delete their own comments.

This project demonstrates RESTful API design, React state management, routing, optimistic updates, and full deployment to production.


🚀 Features

🏠 Articles

  • View all articles

  • View individual articles

  • Filter articles by topic

  • Sort by:

    • Date
    • Votes
    • Comment count
  • Toggle ascending / descending order

👍 Voting

  • Upvote and downvote articles
  • Optimistic UI updates
  • Error handling for failed requests

💬 Comments

  • View comments for each article
  • Post new comments
  • Delete your own comments
  • Client-side validation
  • Error handling

⚠ Error Handling

  • 404 route handling
  • Invalid article handling
  • Invalid topic handling
  • User-friendly error messages

🛠 Tech Stack

Frontend

  • React
  • Vite
  • React Router
  • Fetch API
  • Hosted on Vercel

Frontend Repository: https://github.com/Myyanzhaochen/nc-news

Backend

  • Node.js
  • Express
  • PostgreSQL
  • Hosted on Render

Backend Repository: https://github.com/Myyanzhaochen/nc-news-BE


📦 Running the Frontend Locally

1️⃣ Clone the repository

git clone https://github.com/Myyanzhaochen/nc-news
cd nc-news

2️⃣ Install dependencies

npm install

3️⃣ Run development server

npm run dev

The app will run on:

http://localhost:5173

4️⃣ Build production version

npm run build

🔧 Minimum Requirements

  • Node.js v18+
  • npm v9+

📌 Project Context

This portfolio project was created as part of a Digital Skills Bootcamp in Software Engineering provided by Northcoders.


🧠 Learning Outcomes

This project demonstrates:

  • Full CRUD REST API integration
  • URL-driven state management
  • Optimistic rendering patterns
  • React component architecture
  • Error boundary design
  • Production deployment workflow
  • Frontend–Backend integration

👤 Author

Yanzhao Chen GitHub: https://github.com/Myyanzhaochen

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors