Skip to content

robertschaedler3/Fe2O3

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

55 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🦀 Learn Rust (Fe2O3)

Learn Rust and become fully oxidized!

This is the starting point for the Learn Innovate Tinker (LIT) project to learn Rust and create your very own cipher decoder. This repository contains a collection of Rust code samples and exercises to help you learn the language and get started.

  1. Getting started
  2. Learn
  3. Innovate
  4. Tinker
  5. Resources

Getting started

Create a fork of this repository and clone it locally:

git clone https://github.com/<your-username>/Fe2O3.git

The easiest way to get started is by using the Visual Studio Code Remote - Containers / Codespaces development container included in this repository. This container comes with Rust, Cargo, and several VSCode extensions pre-installed.

  • For Remote - Containers, use the Remote-Containers: Open Repository in Container... command which creates a Docker volume for better disk I/O on macOS and Windows.
  • For Codespaces, install the GitHub Codespaces extension in VSCode, and use the Codespaces: Create New Codespace command.

Once your workspace is setup, open a terminal to check everything is working:

cargo --version
rustc --version

📖 Learn

Each exercise is a Rust project in the learn folder. Each project contains a README.md file with information, instructions, and additional resources.

  1. What is Rust?
  2. Hello World!
  3. Ownership & Borrowing
  4. The Type System
  5. Macros

💡 Innovate

Now that you know the basics, it's time to innovate! The innovate folder contains a series of lessons to help you build the skeleton for your decoder. The project is setup with the following crates:

  • clap for command line argument parsing
  • thiserror for error handling
  • serde for serialization and deserialization
  • miette for pretty error reporting

Feel free to add any other crates you need to customize your project!

🔧 Tinker

Run wild and implement your decoders!

For convenience, a complete skeleton is provided for you directly implement your algorithms.

Resources

Releases

No releases published

Packages

No packages published

Languages