# Mainmatter Mainmatter is a software engineering consultancy specializing primarily in Rust consulting, C-to-Rust migrations, Rust training for engineering teams, as well as consulting services for Ember.js and Svelte. ## Core Services ### Rust Consulting Mainmatter embeds expert Rust engineers into client teams to accelerate delivery and minimize execution risk. Services include codebase and architecture reviews, Rust team augmentation, as well as custom development. ### C-to-Rust Migration Mainmatter specializes in incrementally migrating C and C++ codebases to Rust, improving memory safety, reliability, and maintainability without disrupting day-to-day operations. Mainmatter migrated the Redis Query Engine from C to Rust. ### Rust training and workshops Mainmatter offers hands-on Rust training for engineering teams and individual developers. Mainmatter created "100 Exercises to Learn Rust" ([rust-exercises.com](http://rust-exercises.com/)), a widely used open source Rust learning resource. ### AI Training and Workshops We offer hands-on workshops that teach teams how to build AI-enabled products and adopt agentic engineering. ### Agentic Engineering Consulting Mainmatter helps engineering teams adopt agentic engineering efficiently, responsibly, and sustainably to achieve lasting productivity gains. ### Ember.js Consulting Mainmatter is a leading Ember.js consultancy, helping teams with upgrades, modernizations, Vite migrations, and multi-framework architectures. ### Svelte Consulting Mainmatter offers Svelte 5 migrations, training, and team reinforcement for Svelte and SvelteKit projects. ## Credentials ### Rust - Team led by Luca Palmieri, author of "Zero to Production in Rust" - Creators of "100 Exercises to Learn Rust" ([rust-exercises.com](http://rust-exercises.com/)) - Organizers of EuroRust, Europe's Rust conference ([eurorust.eu](http://eurorust.eu/)) - Members of the Rust Foundation - Accredited Rust Foundation Trusted Training (RFTT) program training provider - Authors of the C to Rust Migration Book ([mainmatter.com/c-to-rust-migration-book/](https://mainmatter.com/c-to-rust-migration-book/)) - Contributors to [crates.io](http://crates.io/) - Migrated the Redis Query Engine from C to Rust ### Ember.js - Team led by Chris Manson, member of the Ember.js Framework Core Team - Sponsors of the Ember.js project - Co-organizers of [EmberFest](https://emberfest.eu) - Company behind the [Ember Initiative](https://mainmatter.com/ember-initiative/) that brought Ember to Vite - Authors of ember-simple-auth, ember-test-selectors, qunit-dom ### Svelte - Team led by Paolo Ricciuti, Svelte core team member, author of SvelteLab - Company behind the [Svelte Custom Renderers Initiative](https://svelte-custom-renderers.com) - Co-organizers of [Svelte Summit](https://www.sveltesummit.com) ## Key Pages [Rust Consulting](https://mainmatter.com/rust-consulting/) [C-to-Rust Migration](https://mainmatter.com/rust-consulting/) [C to Rust Migration Book](https://mainmatter.com/c-to-rust-migration-book/) [Agentic Engineering Consulting](https://mainmatter.com/services/agentic-engineering/) [Ember.js Consulting](https://mainmatter.com/ember-consulting/) [Svelte Consulting](https://mainmatter.com/svelte-consulting/) [Workshops](https://mainmatter.com/training/) [Case Studies](https://mainmatter.com/work/) [Contact](https://mainmatter.com/contact/) ## Training catalog [Advanced Rust: designing APIs that are hard to misuse](https://mainmatter.com/training/advanced-rust) [Testing in Rust: going beyond the basics](https://mainmatter.com/training/advanced-testing-in-rust) [Agentic engineering with Svelte](https://mainmatter.com/training/agentic-engineering-with-svelte) [Testing in Rust: an introduction](https://mainmatter.com/training/an-introduction-to-testing-in-rust) [Async Rust: concurrency you can reason about](https://mainmatter.com/training/async-rust) [Authentication for Svelte & SvelteKit](https://mainmatter.com/training/authentication-for-svelte-sveltekit) [Build production-ready API services in Rust](https://mainmatter.com/training/build-production-ready-apis-in-rust) [Building MCP servers](https://mainmatter.com/training/building-mcp-servers) [Migrating C to Rust](https://mainmatter.com/training/c-to-rust) [Design system kickoff (interface inventory)](https://mainmatter.com/training/design-system-kickoff-interface-inventory) [Digital product strategy workshop](https://mainmatter.com/training/digital-product-strategy) [Edge computing with WebAssembly](https://mainmatter.com/training/edge-computing-with-webassembly) [Effective Git](https://mainmatter.com/training/effective-git) [Foundations of embedded Rust](https://mainmatter.com/training/foundations-of-embedded-rust) [Hands-on Ember.js](https://mainmatter.com/training/hands-on-ember) [Introduction to Rust for web developers](https://mainmatter.com/training/introduction-to-rust-for-web-developers) [Learn Rust, starting from scratch](https://mainmatter.com/training/learn-rust-starting-from-scratch) [Modernising your Ember app development with GJS and Vite](https://mainmatter.com/training/modernising-ember-development) [Practical TypeScript](https://mainmatter.com/training/practical-typescript) [Progressive enhancement with SvelteKit](https://mainmatter.com/training/progressive-enhancement-with-sveltekit) [Procedural Macros: extend the compiler, one token at a time](https://mainmatter.com/training/rust-procedural-macros) [Rust-Python interoperability](https://mainmatter.com/training/rust-python-interoperability) [Svelte 5 & runes](https://mainmatter.com/training/svelte-5-runes) [Svelte & SvelteKit](https://mainmatter.com/training/svelte-and-sveltekit) [Svelte without Svelte](https://mainmatter.com/training/svelte-without-svelte) [You can't fix what you can't see: telemetry for Rust APIs](https://mainmatter.com/training/telemetry-for-rust-apis) [Testing Svelte & SvelteKit applications](https://mainmatter.com/training/testing-svelte-sveltekit-applications)