Skip to content

A smart, multi-channel notification service that keeps competitive programmers updated about upcoming contests across all major platforms.

Notifications You must be signed in to change notification settings

Celestial-0/CodeNotify

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CodeNotify

Version

Smart Contest Alert System
Never miss a competitive programming contest again. Get personalized notifications from Codeforces, LeetCode, CodeChef, and AtCoder.

CodeNotify Banner

📚 Documentation

Complete documentation is available in the docs directory.

✨ Features

  • Multi-Platform: Support for Codeforces, LeetCode, CodeChef, and AtCoder.
  • Smart Notifications:
    • Personalized alerts based on your preferences.
    • Multi-channel delivery: Email, WhatsApp, and Push.
    • Customizable timing (e.g., "Notify me 2 hours before").
  • Secure Authentication:
    • JWT-based auth with refresh tokens.
    • New: Email OTP verification flow.
  • Robust Architecture:
    • Server: NestJS, MongoDB, BullMQ (Scheduling).
    • Client: Next.js 15, Tailwind CSS, Zustand, React Query.

🚀 Getting Started

Prerequisites

  • Node.js 18+
  • MongoDB
  • npm or yarn

Installation

  1. Clone the repository

    git clone https://github.com/Celestial-0/CodeNotify.git
    cd CodeNotify
  2. Server Setup

    cd server
    npm install
    cp .env.example .env
    # Update .env with your credentials
    npm run start:dev
  3. Client Setup

    cd ../client/web
    npm install
    cp .env.example .env.local
    npm run dev

🤝 Contributing

We welcome contributions! Please see CONTRIBUTING.md for details.

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

About

A smart, multi-channel notification service that keeps competitive programmers updated about upcoming contests across all major platforms.

Topics

Resources

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages