Website - WHY ? - Git repository of PLX website
PLX is a project developed to enhance the learning of programming languages, with a focus on a smooth and optimized learning experience. The goal of this project is to reduce the usual friction involved in completing coding exercises (such as manual compilation, running, testing, and result verification) by automating these steps.
PLX offers a terminal user interface (TUI) developed in Rust and supports multiple languages (currently C and C++). It enables automatic compilation as soon as a file is saved, automated checks to compare program outputs, and instant display of errors and output differences. The solution code can also be displayed. The project draws inspiration from Rustlings and aims to create a more efficient learning experience, particularly for programming courses at HEIG-VD.
We deploy documentations on our website.## Docs
Once you have cargo installed, simply run
cargo install plx
Once you have plx installed, you can try it on this repo's example folder
Important
Set the $EDITOR environment variable if you wish for your editor to be opened when starting an exo
Warning
The open editor feature is currently unstable, using a terminal based editor causes problems
The following editors were tested and work fine: code
, clion
and codium
Important
Only C and C++ exercises are valid for now, java and other languages support is comming soon™
git clone git@github.com:plx-pdg/plx.git
cd plx/examples/full
plx
On Linux and MacOS, you can easily change EDITOR
just for PLX, here is an example for VSCode
.
EDITOR=code plx
The useful shortcuts are defined under shortcut ?
, j
or k
to move up and down, you can mostly type l
, until you reach the exo, then the editor should open and then you can do the exo (or just fill the solution next to it see .sol.c
file), save and see changes...
- Clone this repo
git clone git@github.com:plx-pdg/plx.git
- Build using
cargo
cargo build --release
This will install all necessary dependencies and build the program in release mode.
To run it
cargo run
Install from source
cargo install --path .
cargo test
You can easily see all our code comments in a nice web page.
cargo doc --open
Please take a look at some of the issues here.
- Fork this project
- Create a branch
- Develop your solution
- Create a Pull Request
We are currently waiting for our school's approval before applying an open source license.