# Rust 101 final project
It is time to submit a proposal for the final project
- Form groups of 2 or 3 people
- Build a small rust project
- up to 2 groups can work on the same topic
The proposal needs to be submitted by TODO by TODO
Af the end of the project following will be required (deadline is TODO)
- the source of your project (e.g. on github)
- a small report on what you did (3 pages max)
- a live 10 minute presentation (and an additional 2 minutes for questions) during the final lecture
## Project suggestions
You are encouraged to suggest your own project, here are some suggestions
- use a popular crate to build something
- tokio (network applications)
- bitvec (lowlevel binary protocols)
- bevy (games)
- build a GUI application (https://www.areweguiyet.com/)
- implement a more complex data structure
- implement and benchmark a doubly linked list
- benchmark the ntpd-rs ipfilter https://github.com/pendulum-project/ntpd-rs/blob/main/ntp-daemon/src/ipfilter.rs
- add "seamless slices" to the rust implementation of `RocList` (ask Folkert)
- Programming languages
- an interpreter for False (https://strlen.com/false-language/)
- an interpreter for (a subset of) webassembly
- contribute to Roc (Folkert will help you)
- make an open source contribution
NOTE: make sure your contribution has a good chance of being accepted; don't just create extra work for project maintainers
- update inkwell's kaleidoscope example so it also works with llvm 15 https://github.com/TheDan64/inkwell/blob/master/examples/kaleidoscope/main.rs#L199