How to be a full stack Rust Developer

Read Rust the Rust blog posts at Steadylearner

How to be a full stack Rust Developer

Read Rust API guideline. Test code here and refer to the Rust blog posts at Steadylearner.

If you need or know someone to hire a full stack developer, please contact me. I also do freelance.

If you want the similar one for Ethereum, visit eth-diary repository.

The reason to use this repository

Everything is simple with examples but it is not easy to make them with Rust.

Use code here and spare your time.

Crates by Steadylearner

  • born is to help you reduce code duplication in struct and enum. Refer to the Python FAST API documentation that inspired it.

React and Rust web project demo that you can login

You can read server side code made with Rust Warp framework.

Smart compose demo with React

Node project examples

Contact

Use them if you need a personal help or need a new developer in your company.

  1. LinkedIn or Twitter
  2. Telegram

The current state of this repository

I will update www.steadylearner.com Rust Rocket website. I knew that there was a problem with a view count update but was ignoring that. I will start after my current freelance work.

I am working while learning blockchain technologies. There will be less updates than before.

Interesting projects and blog posts from others

  • Rust-Performance
  • envconfig-rs
  • Redelete
  • Blog with Rust Yew Frontend
  • fstring-rs
  • Loadtest with Rust
  • Telegram bot framework
  • Rust GUI
  • Learn about the disk usage of directories
  • Rest API with Actix
  • Ploty in Rust
  • Rust Warp Realworld App
  • Rust Tide Realworld App
  • Rust Yew Realworld App
  • async executors
  • Global data in Rust
  • Host Rust+Wasm projects on github pages or other
  • Text editor written in Rust
  • async http
  • a half hour to learn Rust
  • Loadtest example
  • Web crawler in Rust
  • Rust bin template
  • SQL async sqlx, mobc
  • inline-python
  • duplicate
  • async diesel or tokio-diesel
  • thiserror, anyhow and try blocks to handle errors in Rust
  • surf and wiremock to test http
  • lazy_static and once_cell
  • juniper, and graphql-client
  • rayon, crossbeam, easy-parallel, fearles concurrency etc for multithreading
  • Rust + Tokio.rs + ElectronJs + React
  • RustPython
  • Yew + Rocket - I need to refer to it before I refactor or rewrite the Steadylearner.

CLI

If you want to make some apps, refer to the official documenation and the code snippet used there.

  • bat
  • Rust on the command line, clap and the blog post for it
  • Communicating with humans
  • Communicating with machines
  • Real projects

Cargo packages

Use $du -h ./foldername first before you use plugins that delete codes to compare.

  • Use cargo wipe when you are full of unused Rust projects. See results here. You can use $cargo clean for a folder. You can also use cargo-sweep.
  • Use cargo ws to manage large projects and refer to Lerna. Read official documentation for this also.

Error handling

Read how std error works with official documenation. Learn how to use cusotm error types.

Then, use thiserror to build a web server, library etc. Use anyhow with it when necessary.

  • Learn how to use thiserror and anyhow with this blog post
  • Test them building a web server
  • Rust error handling

Future

  1. epoll, select, poll, epoll difference
  2. async explanation in low level
  3. Epoll, Kqueue and IOCP explained in Rust
  4. Green thread in Rust, Futures explained
  5. Rust async book, tokio, async-std, async executors
  6. futures crate documentation and future by example
  7. embed-async-await
  8. a primer to Rust async, A practical guide to async in Rust

Macro

  • Read these first. Procedural macro in Rust, proc macro workshop etc.
  • Refer to duplicate source code to use derive.
  • cargo-expand, trybuild and macrotest to test macros.
  • Use them when you want more. proc macro hack, proc macro2, quote, syn, proc macro roids, procedural macros, tt-call for eager expansion etc.

How to publish a cargo package

Read rustdoc and cargo documentation for it.

Then, refer to cargo-publish-example and its dev.py to help the development process.

When you are ready to publish, read publishing to crate io and the similar one from cargo.

Optionally, you can include doc-comment to test code exampels in README.md. You can also dynamically create Rust documentation with it.

Refer to them also.

  • Cargo.toml and Cargo.lock comparision
  • Project structure and How to manage it
  • Test, benchmark with std or criterion, documentation test
  • Continuous Integration
  • cargo profile, cargo doc, API guideline, publishing to crate.io, build.rs, cargo cache
  • cargo manifest
  • Include Travis CI. Use cargo fmt and cargo clippy with it if necessary.

Start

First, clone this repository.

Prepare Rust development environment with How to install Rust. Then, use one of these commands.

  1. $./install.sh in web folder and $./run-local.sh for a full stack Rust chat app.
  2. $cd static_files && $cargo run --release for JavaScript frontend and Rust server side web app.
  3. $cd JSON_Webservice && $./run-local.sh for YouTube vlog example with JSON Webservice.
  4. $cd yew/rust_blog && $./install.sh && yarn watch:rs for a Rust blog example.
  5. $cd React_Rust to test a React app with Warp, Rocket, Actix, Express, Restify, Django, Golang, Vibora etc.
  6. $cd sitemap if you want to build sitemap automatically with a database.

star and share it with others if you want more.

Install and Deploy Rust

  1. How to install Rust
  2. How to deploy Rust Web App

Docker and AWS

If you have a potent machine and ready to wait all again, refer to this.

  1. How to use Docker commands
  2. How to use Docker with Rust

Warp

  1. How to use Rust Warp, Hello, World with include!
  2. Use it with React single page app.
  3. CRUD REST API example with a database integration.
  4. Use it with Tera template engine.
  5. Rough login and private routes implemenation - Refer to Yew + Rocket full stack example. and warp-api-starter-template

Frontend

  1. How to use Rust Yew
  2. How to use a modal in Rust
  3. How to use routers in Rust Frontend
  4. How to modulize your Rust Frontend
  5. How to use NPM packages with Rust Frontend
  6. How to use markdown with Rust Frontend

Server

  1. How to use Rust Tera for undefined paths
  2. How to make Rust JSON Webservice with YouTube API
  3. How to use CORS and OPTIONS HTTP request with Rust Rocket
  4. How to serve static files with Rust
  5. How to use a single page app with Rust
  6. How to use gRPC with Rust Tonic and Postgresql database
  7. How to use React with Rust Actix

Full Stack

  1. Rust Chat App
  2. Fullstack Rust with Yew
  3. How to write Full Stack Rust code
  4. How to render a YouTube vlog with Rust Yew fetch API
  5. How to render blog posts with Rust Yew mounted API

Sitemap

  1. How to build a static sitemap.xml with Rust
  2. How to build a sitemap.xml with dynamic contents in Rust
  3. How to build a sitemap for images with Rust
  4. How to automate building sitemaps with Rust

Web Scrapers

  1. How to use Python Scrapy to crawl This Week in Rust
  2. Working code of Webscraping with Rust

Selenium

  1. How to use Rust thirtyfour to scrap React app

Blog

  1. Python Blog with posts saved at GitHub
  2. Visit Steadylearner or read blog posts at GitHub

No need for a database because the posts are saved at GitHub. Others can also easily contribute to blog posts with its features.

Email

  1. Rust lettre CLI example with email templates and an attachment
  2. Email REST API JSON webserivce server with Express and Mongoose

Microservices

You can find microservices examples built with Warp, Tonic, Postgresql, Redis.

  1. gRPC Warp client and Tonic server with Postgresql and Redis Wrapper

Bots

  1. Rust
  2. Golang

With other languages

  1. JavaScript at a web browser
  2. Python

Golang

Refactor a private project and include tests there. Make an open source porject refering to that.

  • How to structure Golang projects. Watch a video and read a blog and another blog for that also.
  • Include some IPFS, Docker etc relevant projects here and production projects in private repositories.

Blockchain

  • Code a complete real project.

React

  • Start with this.
  • Make umd proudction files and call it inside <script> with rollup
  • React with Ethereum

Browser extensions

Chrome

Payload is chrome api and mainfest.json file.

  • Start
  • React
  • Examples and Developer Guide

Resume

You can find easily testable projects at Resume repository. If you are an employer, contact me and I can show the result with a single command with AWS.

What you will learn with it

The most of the projects here are relevant to Rust. But, you can find the examples of JavaScript, Python, Golang, Docker etc. Just use what solves your problem.

  1. How to use HTML, CSS and Markdown in Rust Frontend
  2. How to include NPM packages and JavaScript modules in it
  3. How to use Rust Yew
  4. How to write components and organize the Rust project
  5. How to build complete Full Stack Rust Web Application
  6. How to modulize your Rust project
  7. How to deploy it
  8. How to write sitemaps and metatags for it

How to contribute

Make an issue. Update deprecated code. Include your project etc.

Warning

I do what I want here. It is a personal repository to learn and prototype new projects.

Commitments

  • Teloxide subreddit and with_webserver bot.

READ MORE

They help you to learn and use Rust better.

  • Haskell
  • C
  • C++
  • Rust

Information - Updated Mar 17, 2022

Stars: 1.0K
Forks: 90
Issues: 68
Actix

7.2K

Actix Rust Framework for web and wasm based applications

Rust's premier framework for handling large scale web applications across a wide varaitey of operating systems

Actix Rust Framework for web and wasm based applications

Rust/Actix Example

REST server using the Rust language to give you an idea of how it all works

Rust/Actix Example

Example using Rust Actix-web (web framework) with juniper (Graphql) with diesel (ORM)

Diesel's Getting Started guide using SQLite for Actix web

Example using Rust Actix-web (web framework) with juniper (Graphql) with diesel (ORM)

Example microservice in Rust and Actix

Beginners guide to using rust with a simple example

Example microservice in Rust and Actix

OpenGliderNetwork client for Rust based on actix

MIT license (LICENSE-MIT or

OpenGliderNetwork client for Rust based on actix

A Rust webservice using Actix

Crate tables against your database

A Rust webservice using Actix

rust_actixweb_boilerplate

The Rust Actix_Web Boilerplate is a boilerplate for developers who want to get started with Actix_web's web applications faster

rust_actixweb_boilerplate

REST API with Rust using Actix-Web 2

GET /users ➡ returns all users

REST API with Rust using Actix-Web 2

REST API with Rust using Actix-Web 2

GET /users ➡ returns all users

REST API with Rust using Actix-Web 2

rust-actix-rest-api-boilerplate

A Rust RESTful API server with actix web and docker

rust-actix-rest-api-boilerplate

Rust actix json request example

Send a json request to actix, and parse it

Rust actix json request example
Facebook Instagram Twitter GitHub Dribbble
Privacy