An open API service indexing awesome lists of open source software.

https://github.com/joao-neves95/exercises_challenges_courses

Courses, tutorials, exercises, challenges, notes and random experiments
https://github.com/joao-neves95/exercises_challenges_courses

algorithms blockchain courses csharp dotnet exercises javascript node-js nodejs rust solidity unity web-app webapp

Last synced: 6 months ago
JSON representation

Courses, tutorials, exercises, challenges, notes and random experiments

Awesome Lists containing this project

README

          

# Exercises_Challenges_Courses

Courses, tutorials, exercises, challenges and experiments from various sources.

---

## Rust

### Projects

- [Redis Clone](https://github.com/jo-neves/redis-clone-rs)

A Redis clone.\
Mostly done in pure vanilla Rust. It uses Tokio for multithreading.

- [irspt-rs](https://github.com/jo-neves/irspt-rs)

A CLI app that interfaces with Portugal's Tax Authority website, in order to streamline the process of issuing invoices.\
It was made with Rust, [thirtyfour](https://github.com/stevepryde/thirtyfour) (WebDriver client),
[sled](https://github.com/spacejam/sled) (embedded database) and [rkyv](https://github.com/rkyv/rkyv) (zero-copy raw byte deserialization).

- [l](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Rust/l)

An incomplete `ls` clone.

### Courses/Tutorials

- [The Super Tiny Lisp-Rust Compiler](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Rust/tut_the-super-tiny-compiler)

A Lisp to Rust compiler done by following and further building upon the JS compiler tutorial "[the-super-tiny-compiler](https://github.com/jamiebuilds/the-super-tiny-compiler)".

- [Rust + Actix + CosmosDB (MongoDB) tutorial api](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Rust/tut_api-actix-cosmosdb)

- [Microsoft Learn - Take your first steps with Rust](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Rust/rust-ms-learning-path)
- [CLI app project - "Rusty Journal"](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Rust/rust-ms-learning-path/rusty-journal)

---

## C# / .NET

### Personal Projects

- [Qapo.DeFi.Bot](https://github.com/jo-neves/Qapo.DeFi.Bot)

A bot that interfaces with any EVM compatible blockchain (A.K.A. Web3) to farm and dump hyperinflationary tokens. Theres also the Solidity code: [Qapo.Defi.Contracts](https://github.com/jo-neves/Qapo.DeFi.Contracts).

- [ClassStudio](https://github.com/jo-neves/ClassStudio):

A code generation tool with a desktop GUI in Electron.NET and a backend in .NET 5.\
It is capable of generating multiple code conversions.

- [RegexQuery](https://github.com/jo-neves/RegexQuery)

Regular expressions in english. Create regular expression in an idiomatic way.\
Made with C#, with object oriented APIs for .NET, JavaScript and Typescript.

- [CSharpToTypescript](https://github.com/jo-neves/CSharpToTypescript)

Fork maintenance of a C# to TypeScript converter, modified and adapted to migrate to .NET Standard 2.0 and compile with Visual Studio 2019.

- [Amplifir](https://github.com/jo-neves/Amplifir):

A Twitter implementation in .NET Core 3+ and Angular 8+, using DRY, Onion Architecture/Clean Architecture and some Domain Driven Design principles.

- [Coinelity](https://github.com/jo-neves/Coinelity)

A binary options trading platform in C# ASP.NET, SignalR, Node.js, SQL Server and a frontend vanilla JavaScript with the MVC pattern, CCXT, eCharts.js.\
This was supposed to be my final year school project, however, as per advice of my school mentor, this project was dropped for not having enough graphic design.

- [Braces](https://github.com/jo-neves/Braces):

(This project was abandoned and it's not finished)\
More than a code editor. It is a specification for code editors.\
Composed of multiple processes, each one with its functions, where the IPC is done through SignalR (WebSockets).\
The idea was to create a bridge between code editors/IDEs and plugins/extensions, in order for developers be able to use any plugin/extension from/in any code editor/IDE.\
It is made in C# .NET Core and the plugins/extension run in the PluginHost inside a Docker container for added security.

### Courses

- [Microservices Architecture in C# .NET with applying CQRS, Clean Architecture and Event-Driven Communication](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/CSharp/eShop/)
- A course about microservices, gRPC, multiple database systems (MySQL, PostgreSQL, SQL Server, MongoDB), Clean and DDD architectural patterns, event driven distributed communication through RabbitMQ, as well as Docker, Docker Compose, Kubernetes (K8s), Azure Pipelines, Terraform.

- [Build Web APIs using ASP.NET (edX/Microsoft - DEV247x)](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/CSharp/Build-Web-APIs-using-ASP.NET_edX-Microsoft)
- [Extension of the final project's WebAPI with custom authentication](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/CSharp/Personal-Projects/Tutorials/ASPNETCore2.WebServer)

- [Basics of Object Oriented Programming with C# (Udemy)](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/CSharp/Basics-of-Object-Oriented-Programming-with-C%23_Udemy)

- [Alison/Microsoft: Diploma in C# Programming (Introduction to C#)](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/CSharp/Diploma-in-CSharp-Programming_Alison-Microsoft)

### Tutorials

- https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/CSharp/Tutorials

### WPF

- [Braces](https://github.com/jo-neves/Braces)

---

## Python

### Personal Projects

- [FastAPI TodoList](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Python/fastapi_todolist)

A Todo List RESTful API, using Python, FastAPI, Tortoise, SQLite.

---

## Node.js

### Personal Projects

- [MergerJS](https://github.com/jo-neves/merger-js)

Yet another simple cross-platform CLI build tool to bundle JavaScript files, with a custom file import syntax, ES8+ minification, auto build capabilities, and native OS notifications.

- [PortfolioOS](https://github.com/jo-neves/portfolio-os)

A social network for programmers, that simulates an operative system with a fully interactive and dynamic desktop.\
Users can make their own apps and integrate them on the OS. It has a forum similar to 4chan, profiles/portfolios, a terminal with a working file system, and more.\
The frontend was made with pure vanilla JavaScript ES8+ following an MVC pattern.\
The server was made on Node.js and Express.js.\
The databese is PostgreSQL and it is normalized.

- [TODO List Web App (Just Another TODO List App)](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Node.js/Personal-Projects/TODO-list_web-app/app_mssqlVersion)

- [TutorMatch](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Node.js/Personal-Projects/TutorMatch)

A random and useless landing page.

### Courses

- [freeCodeCamp Projects](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/freeCodeCampProjects)

- [EDX/MICROSOFT COURSE: "Introduction to Node.js" (Node.js, Express and MongoDB)](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Node.js/Introduction-to-NodeJS-edX_Microsoft)

---

## JavaScript & TypeScript

- [js.system.collections](https://github.com/jo-neves/js.system.collections):

JavaScript collections inspired by .NET, that implements a list and multiple implementations of a dictionary with different complexities to choose from.

- [js.web.components](https://github.com/jo-neves/js.web.components):

A vanilla JavaScript framework inspired by Angular, React and ASP.NET, with a custom templating engine compiler, component, and template view utils like for loops and if statements.

- [Algorithms](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/JavaScript)
This was my first attempt at doing algorithms, so they're pretty bad.

- [Snake Game](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/JavaScript/Snake-Game)

### Courses/Tutorials

- [freeCodeCamp Projects](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/freeCodeCampProjects)

- [Udemy's "Code Your First Game: Arcade Classic in JavaScript on Canvas"](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/JavaScript/Code-Your-First-Game_Udemy)

- [Angular 7 TourOfHeroes Tutorial](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/TypeScript/angular-07_tour-of-heroes)

---

### Unity (C#)

1 - [Project 1](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Unity/Project1)

A simple Unity3D 2D platformer game, from internet tutorials, I did for a university class preparation.

2 - [TheLostChests](https://github.com/jo-neves/academic-work/tree/master/Unity/TheLostChests)

A simple Unity3D 2D platformer game made for an university class project.

---

## C++

- [Blockchain](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/C%2B%2B/Blockchain):

A basic blockchain with block mining. It uses an hybrid Proof of Work algorithm that includes Argon2d hashing - RAM instensive; maximizes resistance to GPU and ASIC's cracking attacks - and a SHA256 PoW - GPU:

`SHA256( Argon2d( blockData ) + blockData.nounce )`

To find the block's nounce**s**, the miner must do the two hashes until he reaches the desired target bits. The difficulty increments the Argon2d memory requirements.

The persistence of blocks is made through LevelDB.
Currently there is no server implementation nor transactions, the idea was to understand what Proof of Work is.

- [Algorithms](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/C%2B%2B/Algorithms)

- [Data Structures](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/C%2B%2B/Data-Structures)

---

## C

- [Algorithms](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/C)

---

## Solidity

- [Qapo.Defi.Contracts](https://github.com/jo-neves/Qapo.DeFi.Contracts)

A set of contracts that [Qapo.DeFi.Bot](https://github.com/jo-neves/Qapo.DeFi.Bot) uses to farm and dump hyperinflationary tokens.

- [AutoCompounder](https://github.com/jo-neves/Exercises_Challenges_Courses/blob/master/Solidity/AutoCompounder)

This is the Solidity part of my personal auto-compounder, able to farm multiple types of strategies,
as well as simple ones like farm and dump hyper-inflationary token farms.\
Done with a class structure to simplify strategy development, as well as to provide methods to work with DEX's compatible with Uniswap v2 and MasterShef, with room and flexibility to extend.\
This is just a copy from master of a private repository, so do not consider it as up to date.\
It is used in production.

- [LockedVault](https://github.com/jo-neves/Exercises_Challenges_Courses/blob/master/Solidity/LockedVault/LockedStratBase.sol)

Some abstract base classes/contracts and libraries, all fattened on a single file, to serve as base for private DeFi strategies.

- [Vault](https://github.com/jo-neves/Exercises_Challenges_Courses/blob/master/Solidity/Vault/Vault.sol)

A vault that represents multi-user share of the total value locked. All fattened.\
(WIP, not ready for production)

- [CryptoZombies](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/Solidity/CryptoZombies)

The CryptoZombies Solidity tutorial made locally.

---

## Academic Work (SQL, JavaScript, Unity)

- [Complete Repository](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/academic-work)

- [Assembly](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/academic-work/Assembly)

- [C](https://github.com/jo-neves/Exercises_Challenges_Courses/tree/master/academic-work/C)

---