/xjudge-web

This is X-Judge client side

Primary LanguageTypeScriptMIT LicenseMIT

XJudge

home_page

XJudge is an online platform designed for competitive programming enthusiasts and professionals. It provides a unified interface to participate in programming contests, practice problems, and track performance across various online judges. XJudge aggregates problems from multiple sources and allows users to submit solutions and receive real-time feedback.

Table of Contents

Installation

This project was generated with Angular CLI version 16.0.0.

To install the project, follow these steps:

  1. Clone the repository: git clone https://github.com/yousofkortam/xjudge-web.git
  2. Navigate to the project directory: cd xjudge-web
  3. Install dependencies: npm install
  4. Run the development server: ng serve

Navigate to http://localhost:4200/. The application will automatically reload if you change any of the source files.

Usage

To use XJudge, you can register an account and start creating groups and contests. You can also join existing groups and participate in their contests.

Features

  • User authentication
  • Group creation and management
  • Contest creation and management
  • Problem creation and submission
  • Accessing problems from various popular online judges
  • Invite users to groups
  • Join and leave groups
  • Update group details
  • Create and manage contests within groups
  • Cheating detection

Screenshots

  • Database Diagram

xJudge_DBD

Frontend

  • Login Page

login_page

  • Register Page

register_page

  • Group List

group_list_page

  • Group Details

group_details

  • Problem List

problem_list_page

  • Problem Details

problem_details

  • Contest upcoming

contest_details_upcoming

  • Contest running

contest_details_running

  • Contest ended

contest_ended

  • Contest Status

contest_status

  • Contest Rank

contest_rank

  • Problem in contest

problem_conetst1 problem_contest2

  • Submission Status

submission_status

  • Submission details

submissoin_details

  • Profile

profile

Tests

Run ng test to execute the unit tests via Karma.

Run ng e2e to execute the end-to-end tests via a platform of your choice. To use this command, you need to first add a package that implements end-to-end testing capabilities.

License

This project is licensed under the terms of the MIT license.

Contact

If you have any questions, feel free to reach out to us at xjudgehelp@gmail.com.