codus

所属分类:数值算法/人工智能
开发工具:JavaScript
文件大小:464KB
下载次数:0
上传日期:2023-01-09 15:44:06
上 传 者sh-1993
说明:  一种新颖的计算机科学学生和教室编程平台
(A novel programming platform for computer science students and classrooms)

文件列表:
LICENSE (1073, 2020-02-01)
app (0, 2020-02-01)
app\.env.prod.sample (188, 2020-02-01)
app\.env.sample (194, 2020-02-01)
app\.eslintignore (15, 2020-02-01)
app\.sass-lint.yml (1786, 2020-02-01)
app\.tern-project (304, 2020-02-01)
app\.travis.yml (75, 2020-02-01)
app\jsconfig.json (132, 2020-02-01)
app\package-lock.json (500032, 2020-02-01)
app\package.json (3580, 2020-02-01)
app\postcss.config.js (115, 2020-02-01)
app\src (0, 2020-02-01)
app\src\App.vue (581, 2020-02-01)
app\src\api.js (2282, 2020-02-01)
app\src\components (0, 2020-02-01)
app\src\components\action-input (0, 2020-02-01)
app\src\components\action-input\action-input.vue (407, 2020-02-01)
app\src\components\action-input\script.js (554, 2020-02-01)
app\src\components\action-input\style.sass (744, 2020-02-01)
app\src\components\bold-button (0, 2020-02-01)
app\src\components\bold-button\bold-button.vue (367, 2020-02-01)
app\src\components\bold-button\style.sass (1050, 2020-02-01)
app\src\components\breadcrumbs (0, 2020-02-01)
app\src\components\breadcrumbs\breadcrumbs.vue (450, 2020-02-01)
app\src\components\breadcrumbs\style.sass (381, 2020-02-01)
app\src\components\classroom (0, 2020-02-01)
app\src\components\classroom\assignment-create (0, 2020-02-01)
app\src\components\classroom\assignment-create\assignment-create.vue (1530, 2020-02-01)
app\src\components\classroom\assignment-create\components (0, 2020-02-01)
app\src\components\classroom\assignment-create\components\date-picker (0, 2020-02-01)
app\src\components\classroom\assignment-create\components\date-picker\date-picker.vue (140, 2020-02-01)
app\src\components\classroom\assignment-create\components\date-picker\script.js (19, 2020-02-01)
app\src\components\classroom\assignment-create\components\date-picker\style.sass (0, 2020-02-01)
... ...

# Codus Codus is an open-source online platform for code practice. Right now, Codus supports only the Java programming language. ## Structure The main Codus app has two components: the front-end, located inside the [`app` folder](https://github.com/codus-app/codus/tree/master/app), and `codus-engine`, the back-end, located inside the [`engine` folder](https://github.com/codus-app/codus/tree/master/engine). ## How it works Most of Codus’s data, including problem info and users’ solutions, is stored in MongoDB. MongoDB in Codus is configured with the [KeystoneJS](https://github.com/keystonejs/keystone) framework, which comes with an admin UI for the database out of the box. The data stored in MongoDB is made available to Codus through `codus-engine`, the backend component of Codus. `codus-engine` connects to MongoDB and reads and reformats information from the database in order to respond to user requests. Specific information about `codus-engine`'s endpoints can be found inside its [dedicated README](https://github.com/codus-app/codus/blob/master/engine/README.md). Beyond storing user data, Codus needs to be able to understand and run user code in order to check users’ solutions. A dedicated package created for Codus, [`codus-execute-java`](https://github.com/codus-app/codus-execute-java) is responsible for securely executing user code. Executing arbitrary code is a notoriously dangerous and insecure practice, so `codus-execute-java` creates a new Docker container for each solution execution, in order to completely contain the program and prevent malicious code from having any impact. `codus-engine` exposes the `/user/solution/check/` endpoint which hooks into `codus-execute-java` to verify users’ solutions. The front end of the app is written in the [Vue](https://github.com/vuejs/vue) framework. As the user navigates through and interacts with the app, Vue makes calls to the `codus-engine` in the background to read and update user data. ## Contributing You can run the front end of Codus locally without too much trouble if you use the `codus-engine` instance that’s already configured and running at `app.codus.io`. See the README inside `app` for more information.

近期下载者

相关文件


收藏者