Skip to content
/ Checkio Public

Checkio - A tool that not only tests your code but also suggests improvements and error fixes, making lab evaluations smarter and faster.

License

Notifications You must be signed in to change notification settings

fbn776/Checkio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Checkio - cover photo

Checkio - Automated Code Testing Tool

CheckIO is a test case execution tool designed for students and faculty. It allows users to create test cases, run programs against a specified testcase. The tool provides insights and suggestions for failed test cases, helping users to debug their code efficiently.

This project is developed as part of our KTU S6 Mini Project.


🚀 Features

  • CLI Interface – Easily run programs against a specified testcase, compile and run in a single command
  • Web Interface – The admins or faculty can add, view, and evaluate testcases.
  • Error Suggestions – Provides insights and fixes for faulty programs.
  • Find Seg Faults - analyze gives you where seg faults occur in a C code.
  • Test Case Management – Create, edit, and delete test cases with ease.

🛠️ Technology Used

  • Python – Core logic and backend.
  • Flask – Web server for API and web-based testing.
  • React – Frontend for the web interface.
  • SQLite – Lightweight database for storing test cases.

🔗 GitHub Repository

🔗 CheckIO GitHub Repo


Installation

  1. Clone the repository
    git clone <repo-url>
    Or download the zip file and extract it.
  2. Change the directory to the project folder
    cd <project-folder>
  3. Install the dependencies
    uv pip install -e .
  4. Run the project
    uv run python3 src/main.py

For a more detailed installation guide, refer to setup.


🤝 Collaborators


📸 Screenshots

💻 Terminal Interface
  • Checkio commands

    Checkio Commands

  • Creating a test case from terminal

    Create Test Case

  • Running a C file against test cases

    Run C File

🌐 Web Interface
  • Homepage - About Checkio

    Web About

  • Installation Guide Section

    Web Installation

  • User Guide Overview

    Web User Guide

  • Command Reference

    Web Commands

🧪 Web: Creating & Managing Test Cases
  • Create a new test case

    Web Create Testcase

  • View all test cases

    Web View Testcase

  • Testcase details

    Web View Testcase Detail

📊 Web: Evaluation & Submissions
  • Evaluate a submission

    Web Eval

  • Detailed output of evaluation

    Web Eval More

  • View submission details

    Web Submission Details

⚙️ Web: Settings
  • Change app settings from web

    Web Settings


📝 Notes

  • The project is in active development, and contributions are welcome.
  • Future plans include support for multiple programming languages.
  • Bugs or issues? Report them in the GitHub Issues section.

About

Checkio - A tool that not only tests your code but also suggests improvements and error fixes, making lab evaluations smarter and faster.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •