Giter Site home page Giter Site logo

tiennma2k23 / hustoj-neo Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hustoj/hustoj-neo

0.0 1.0 0.0 2.73 MB

HUST Online Judge System neo Version

Home Page: http://www.hustoj.org

License: GNU General Public License v3.0

PHP 61.36% Vue 19.78% Shell 0.20% Blade 18.66%

hustoj-neo's Introduction

HUST Online Judge Neo Version

HUST Online Judge is a web application.

This application still under construction, if you like improve it, please contact freefcw at qq.com.

StyleCI Scrutinizer Code Quality Build Status Code Coverage Code Intelligence Status

ALERT

This version is not compatible with old version! The Judged is not upgrade!

Install Tutorial

  1. Clone this repository

  2. Install vendor package via composer

    cd hustoj-neo
    composer install --no-dev

    if you want have some develop, you can run composer install to install dev packages

  3. config you application.

    php artisan key:generate # generate private key
    copy .env.example .env
  4. database

    1. config you database in .env

      # new database
      DB_CONNECTION=mysql
      DB_PORT=3306
      DB_HOST=127.0.0.1
      DB_DATABASE=neo
      DB_USERNAME=root
      DB_PASSWORD=root
      
    2. create new database structure

      php artisan migrate
      
    3. if you fresh to hustoj, can skip this step.

      migrate from old version hustoj, you can add old database configure:

      # old database
      OLD_DB_PORT=3306
      OLD_DB_HOST=127.0.0.1
      OLD_DB_DATABASE=judge
      OLD_DB_USERNAME=root
      OLD_DB_PASSWORD=root

      If you migrate from the initial version hustoj, you need migrate exist database structure follow this wiki, migrate database data via command:

      php artisan database:migrate
  5. Git code come with packed frontweb, if you don't need develop, can skip this step. build front web

     ```bash
     npm install
     npm run prod # build front web
     npm run admin-prod # build admin front web
     ```
    
  6. setup other configure

     1. APP_NAME is your project name, will show on browser title and head brand.
     2. APP_DEBUG is debug switch
     3. APP_URL is your website url
     4. RABBITMQ_* is rabbitmq host, used to maintain solution queue to judger server. detail can see config/rabbitmq.php
     5. MAIL_* is config to setup email notify, detail can visit config/mail.php
     6. other relate config can visit config/hustoj.php
     7. Relate Project:
     	1. [judger](https://github.com/hustoj/judger) is judger for handle solution compile and runner.
     	2. [runner](https://github.com/hustoj/runner) is executor for compile solution source and execute program.
    
  7. register a user from web, make you account has administrator privilege.

     ```bash
     php artisan assign:admin
     ```
    
  8. use you administrator account login front web, you will see admin link in your top right.

Contributing

Thank you for considering contributing to the HUST Online Judge! You can add issue or make pull request!

Security Vulnerabilities

If you discover a security vulnerability within HUST Online Judge, please send an e-mail to freefcw at qq.com. All security vulnerabilities will be promptly addressed.

License

The HUST Online Judge Neo Version Under MIT license.

Thanks

hustoj-neo's People

Contributors

freefcw avatar dependabot[bot] avatar sempr avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.