# lechef - Logic Circuit Exercise Framework

Understanding logic circuits is essential in understanding how computers work deep down. The lechef framework enables creation of exercises for practising and understanding the behavior of the basic logical gates, and circuits made from those gates.

## Your First Logic Circuit Exercise Example

**Your task: ** Toggle the input and output values of each component in the logic circuit below. As you might know, the output of an AND gate is true (1) only if both of its inputs are true. Use the Reset button to reset the values, and the Feedback button to ask for feedback on your solution at the time.

## Features

- Two types of exercises:
- simulation of a given circuit with given values (like the one above)
- design of a circuit based on a truth table (or however you like to formulate the question)

- Visual, interactive feedback for the learner
- Support for the basic gates: AND, OR, NOT, NAND, NOR, XOR, EQV

## Documentation

In the documentation, you can find some more examples. It will also introduce you to the configuration options.

If you're not 100% convinced yet, here's another example of a circuit design exercise.

## Example of circuit design assignment

Construct a circuit using AND, OR, and NOT components that has the following truth-table.

## License

The library is licensed under the MIT license.

## Contributing

I develop the library on GitHub, so the best way to contribute would be to report bugs and to submit feature requests using the issue tracker. I also highly appreciate well-made pull requests :) If you are planning some major refactoring or new features, go ahead and open an issue for it so we can discuss.

## Usage and Research

Development of the library has been done mainly for a single course at the University of Turku. If you're interested in using the framework, get in touch if there's anything I can help you with.

I'm also very interested in doing some collaboration on (evaluative) research on learners using the exercises.