All Projects → okpy → ok-client

okpy / ok-client

Licence: Apache-2.0 license
A Python client for the OK autograding system

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to ok-client

jump-start-live
In person program for Ada Developers Academy students who are not yet confident using loops, arrays, and hashes.
Stars: ✭ 60 (+17.65%)
Mutual labels:  cs-education
jgrade
A library for grading Java assignments
Stars: ✭ 21 (-58.82%)
Mutual labels:  autograder
otter-grader
A Python and R autograding solution
Stars: ✭ 92 (+80.39%)
Mutual labels:  autograder
pedal
A collection of tools to analyze student's Python source code
Stars: ✭ 22 (-56.86%)
Mutual labels:  autograder
quickfeed
QuickFeed server and web frontend for instant feedback on programming assignments
Stars: ✭ 14 (-72.55%)
Mutual labels:  autograder
autograder samples
Examples of autograders for running on Gradescope
Stars: ✭ 54 (+5.88%)
Mutual labels:  autograder
judge
A blazingly fast online judge/ autograder ⚖️ built with Python and the Django framework to test cases against your solution. Check out the sponsor links and help fund DomeCode.
Stars: ✭ 30 (-41.18%)
Mutual labels:  autograder
gradescope-utils
Python package for building Gradescope autograders
Stars: ✭ 19 (-62.75%)
Mutual labels:  autograder
CollegeCompendium
📓 A curated collection of free public Computer Science classes from colleges across America
Stars: ✭ 791 (+1450.98%)
Mutual labels:  cs-education
teknowledge
A basic CS curriculum for coding in Python.
Stars: ✭ 26 (-49.02%)
Mutual labels:  cs-education
code-examples
Code examples from the https://sttp.site book
Stars: ✭ 19 (-62.75%)
Mutual labels:  cs-education

ok client

The ok client script (written in Python) supports programming projects by running tests, tracking progress, and assisting in debugging.

Visit http://okpy.org to use our hosted service for your course.

The ok client software was developed for CS 61A at UC Berkeley.

Build Status PyPI Version

Developer Instructions

Installation

  1. Clone this repo

  2. Install virtualenv

  3. Create a virtual environment:

     virtualenv -p python3 env
    
  4. Activate the virtual environment:

     source env/bin/activate
    
  5. Install requirements and set up development environment:

     pip install -r requirements.txt
     python3 setup.py develop
    

Contributing

Every time you begin, you should activate the virtual environment:

source env/bin/activate

All code for the client is found in the client/ directory.

There is an executable called ok in the virtualenv path that will run your code locally. You can use the example assignments in the demo/ directory to play around:

cd demo/ok_test
ok -q q2

The tests/ directory mirrors the directory structure of the client/ directory. Every component of the client should have plenty of tests. To run all tests, use the following command:

nosetests tests

Releasing an ok-client version

First make sure that

  • Your virtualenv is activated and you are on the master branch.
  • Your ~/.pypirc contains okpy's PyPI credentials.
  • A file .github-token contains a GitHub access token with the "repo" scope.

To deploy a new version of ok-client, change to the master branch and run

./release.py vX.X.X

where vX.X.X is the new version. This will:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].