w3resource

Daily Coding Challenges & Projects


Thursday


Frontend Mini Project Challenge

Focus : React Hooks & State Management

Small Challenge ( React ) :

Create a Counter App using:

  • useState
  • useEffect

Requirements :

  • Display current count
  • Buttons : Increment, Decrement, Reset
  • Save count in localStorage
  • Auto-restore count on page reload

Concepts Covered :

  • useState
  • useEffect
  • Side effects
  • State persistence
  • Controlled components

Backend Challenge

Language Focus : Node.js + Go

Node.js Challenge :

Build an API that:

  • Accepts an array of numbers via POST
  • Returns:
    • Sum
    • Average
    • Max
    • Min
  • Input length can be up to 1 million numbers

Constraints: :

  • Must use Streams
  • Must be non-blocking

Go Challenge :

Write a Go program that:

  • Accepts multiple URLs
  • Fetches all in parallel using goroutines
  • Returns:
    • Status code
    • Response time
  • Sort output by fastest response

Database Query Challenge

Problems on SQL - HR Database :

  1. Find all employees who:
    • Have the same salary as their manager
    • But are working in a different department
  2. Find the top 3 highest-paying departments
    • Based on average salary
    • Only include departments having more than 5 employees

HR database



Data Structures & Algorithms Challenge

  • Easy :
    • Problem : Reverse a queue using a stack.
    • Hint : Use LIFO nature to invert order.
  • Medium :
    • Problem : Detect a cycle in a directed graph.
    • Hint : Use DFS + recursion stack.
  • Hard :
    • Problem : Design an LRU Cache.
    • Hint : HashMap + Doubly Linked List.

Bug of the Day

Language Focus : Node.js & Go

    Buggy Code ( Node.js ) :

    
    const fs = require("fs");
    const data = fs.readFile("file.txt");
    console.log(data.toString());
    

Bug : This causes asynchronous misuse

Challenge : Fix using proper async handling.


    Buggy Code ( GO ) :

    
    arr := []int{1, 2, 3}
    for i := 0; i <= len(arr); i++ {
        fmt.Println(arr[i])
    }
    

Bug : Index out of range

Challenge : Fix loop condition.

📋 Daily Micro-Project

Focus : FRONTEND

Project : React Theme Switcher ( Light/Dark Mode )

Build a React app that:

  • Switches between Light & Dark mode
  • Uses:
    • useContext
    • useReducer
  • Theme persists using localStorage
  • Smooth CSS transitions required

Skills :

  • Global state
  • Context API
  • Reducers
  • UI performance

Trivia: 5 Fun Facts

  1. JavaScript was created in just 10 days.
  2. Go was developed at Google.
  3. The first version of React was released in 2013.
  4. The most used programming language today is JavaScript.
  5. "Hello World" dates back to 1978 (C language book).

Tool & Resource of the Day

Tool : PostgreSQL EXPLAIN Analyzer

  • Query performance visualization
  • Execution plan breakdown

Resource Roundup :

  • React Hooks Official Guide
  • Node.js Performance Best Practices
  • Go Concurrency Patterns
  • Free SQL Query Optimization Handbook

Interview Question of the Day

Daily Interview Questions

    Frontend ( React ) :
    1. Difference between useState and useReducer?
    2. How does useEffect dependency array work?
    3. What is React reconciliation?
    4. Difference between controlled and uncontrolled components?
    Backend ( Node.js & Go ) :
    1. What is the event loop in Node.js?
    2. Difference between process.nextTick() and setImmediate()?
    3. What are goroutines?
    4. Difference between concurrency and parallelism in Go?
    Database :
    1. What is a composite index?
    2. Difference between WHERE and HAVING?
    3. What is query cardinality?
    Others :
    1. What is a semaphore?
    2. Difference between load balancing and clustering?

Daily Quiz Challenge

    Frontend ( React & JS ) :

    1. Which hook is used for side effects?
    2. What does key prop help React with?
    3. Which hook is used for memoization?

    Backend ( Node.js & Go ):

    1. Which Node.js module is used for streams?
    2. Which Go keyword is used to launch concurrency?
    3. Which method converts JSON to JS object?

    Database :

    1. Which SQL command is used to create an index?

    OS :

    1. What is starvation in OS scheduling?

    Mixed Quiz :

    1. Frontend : What is the purpose of React.memo()?
    2. Backend : What is middleware in Express.js?
    3. Database : What does LIMIT do in SQL?

Weekly Cross-Domain Activities ( December 06 to December 12, 2025 )

API of the Day:

Integrate OpenWeatherMap API

  • Build /weather?city=
  • Show temperature, humidity, conditions.

Linux / DevOps Tip :

10 commands to monitor server health :

top, htop, df -h, du -sh, ps aux, systemctl status, journalctl, iostat, free -m, uptime. 

Real-World Project of the Week ( December 06 to December 12, 2025 )

Project of the Week:

Build a Full Authentication System (frontend + backend + JWT).

Collaborative Project :

Contribute to an open-source:

Awesome-Dev-Templates GitHub repo.

Case Study :

Study how Twitter handles real-time updates (WebSockets, queues, caching).


Previous Daily Coding Challenges & Projects : 04-04-2025   07-04-2025  08-04-2025  09-04-2025  10-04-2025  11-04-2025  14-04-2025  15-04-2025  16-04-2025  17-04-2025  18-04-2025  21-04-2025  22-04-2025  23-04-2025  24-04-2025  25-04-2025  28-04-2025  29-04-2025  30-04-2025  01-05-2025  02-05-2025  05-05-2025  06-05-2025  07-05-2025  08-05-2025  09-05-2025  12-05-2025  13-05-2025  14-05-2025  15-05-2025  16-05-2025  19-05-2025  20-05-2025  21-05-2025  22-05-2025  23-05-2025  26-05-2025  27-05-2025  29-05-2025  30-05-2025  02-06-2025  03-06-2025  04-06-2025  05-06-2025  06-06-2025  09-06-2025  10-06-2025  11-06-2025  12-06-2025  13-06-2025  16-06-2025  17-06-2025  18-06-2025  19-06-2025  20-06-2025  23-06-2025  24-06-2025  25-06-2025  26-06-2025  27-06-2025  30-06-2025  01-07-2025  02-07-2025  03-07-2025  04-07-2025  07-07-2025  08-07-2025  09-07-2025  10-07-2025  11-07-2025  14-07-2025  15-07-2025  16-07-2025  17-07-2025  18-07-2025  21-07-2025  22-07-2025  23-07-2025  24-07-2025  25-07-2025  28-07-2025  29-07-2025  05-08-2025  06-08-2025  07-08-2025  11-08-2025  12-08-2025  13-08-2025  14-08-2025  15-08-2025  18-08-2025  19-08-2025  20-08-2025  21-08-2025  22-08-2025  25-08-2025  26-08-2025  27-08-2025  28-08-2025  29-08-2025  15-09-2025  16-09-2025  17-09-2025  19-09-2025  11-10-2025  22-11-2025  24-11-2025  25-11-2025  26-11-2025  28-11-2025  01-12-2025  02-12-2025  03-12-2025  04-12-2025  05-12-2025  10-12-2025



Follow us on Facebook and Twitter for latest update.