Coder Social home page Coder Social logo

architecture's Introduction

Code FREAK Logo

Code FREAK

CI License: AGPL v3 Join Discord Server

Code FREAK (Code Feedback, Review & Evaluation Kit) is an online programming platform and evaluation/autograding system for coding assignments. It supports every major programming language (language agnostic) and has a modular evaluation system based on Docker.

Code FREAK Screenshot

Main Features

  • Support for every major programming language (language agnostic)
  • Pluggable evaluation system based on Docker (Dynamic Testing, Linting, โ€ฆ)
  • In-browser IDE based on VSCode/Coder
  • Modern UI based on React and Ant Design
  • Integrates with learn management systems (LMS) via LTI 1.3 standard
  • LDAP authentication
  • 100% free and open source

Installation

We currently only support installation via Docker. The image name is ghcr.io/codefreak/codefreak. Check out its tags for the latest version.

Try with Docker ๐Ÿ‹

You can try out Code FREAK locally. The only requirement is a working installation of Docker on your computer. The following command will start the latest development version of Code FREAK based on the master branch.

docker run -it --rm \
    -e SPRING_PROFILES_ACTIVE=dev \
    -v /var/run/docker.sock:/var/run/docker.sock \
    -p 8080:8080 \
    ghcr.io/codefreak/codefreak:canary

The UI is accessible at http://localhost:8080. Log in using teacher and password 123. Additionally, the users admin and student are available with their corresponding roles and the same password 123. Using the "dev" environment will seed the database with some example assignments and tasks.

This will use you local Docker daemon for evaluation and IDE instances.

Image variants

There are two major image versions on Docker Hub: latest and canary. latest always points to the latest stable release and canary is basically a snapshot release based on the master branch from GitHub.

Our image tags follow semantic versioning. For example the tag ghcr.io/codefreak/codefreak:4 will always reference the latest v4 release.

Deployment & Configuration

Our Docker image should run without any further configuration. Out of the box it will use an in-memory database and the Docker daemon available via /var/run/docker.sock or the DOCKER_HOST environment variable. This is of course NOT suitable for production deployments. Please see our installation/deployment guide for detailed instructions and recommendations.

Documentation

The latest documentation is always available on docs.codefreak.org. You can find the "raw" documentation files inside the /docs directory.

State of the Project

The development of Code FREAK started in 2018. It has been used in production from an early stage on at Kiel University of Applied Sciences (Germany). Extensive testing in various computer science courses resulted in valuable feedback. The reception by studends and teachers is very positive.

While this is not a mature product yet, all major features (editing, evaluation, reviewing) do work already. We have many ideas for new features and the existing application still needs some polishing. Development is ongoing in cooperation with current users.

Code FREAK is intended to become a community-driven project. If you are interested in trying it for your educational institution or if you have any questions, feel free to get in touch with us! โœ‰ [email protected]

Roadmap / Planned Features

There are still A LOT of features that have not been integrated into Code FREAK, yet. You will find them in our ROADMAP.md file.

If your desired feature is missing please open an issue on GitHub!

License

Code FREAK | Code Feedback Review & Evaluation Kit
Copyright (C) 2019 Kiel University of Applied Sciences

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

architecture's People

Contributors

erikhofer avatar renovate-bot avatar

Watchers

 avatar  avatar

architecture's Issues

Dependency Dashboard

This issue lists Renovate updates and detected dependencies. Read the Dependency Dashboard docs to learn more.

Open

These updates have all been created already. Click a checkbox below to force a retry/rebase of any.

Detected dependencies

github-actions
.github/workflows/gh-pages.yml
  • actions/checkout v2
  • actions/setup-java v1
  • peaceiris/actions-gh-pages v3
gradle-wrapper
gradle/wrapper/gradle-wrapper.properties
  • gradle 6.0.1

  • Check this box to trigger a request for Renovate to run again on this repository

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.