Skip to content
View AntonioVisan's full-sized avatar
⚙️
Building systems & solving problems
⚙️
Building systems & solving problems
  • Râmnicu Vâlcea / Brașov, Romania
  • 05:41 (UTC +03:00)
  • LinkedIn in/antonio-visan

Highlights

  • Pro

Block or report AntonioVisan

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
AntonioVisan/README.md

Antonio Visan - Computer Science Student

Hi there! 👋

I'm a Computer Science student interested in software development, algorithms, systems programming, networking, and machine learning. I enjoy building practical software and exploring how algorithms, data structures, and system design can be applied to real-world problems.

🎯 Areas of Interest

  • 💻 Software Development & System Design
  • 🧠 Algorithms & Data Structures
  • 🌐 Networking & Distributed Systems
  • 🔐 Cryptography & Secure Communication
  • 🤖 Machine Learning & Deep Learning
  • ⚙️ Optimization & Heuristic Search
  • 🧩 Compilers & Formal Languages

🚀 Featured Projects

Here are some of the projects I've worked on, focusing on algorithms, software architecture, systems programming, networking, and practical problem solving.

🎮 The Game

Multiplayer Card Game · C++20 · SFML · TGUI · Crow · SQLite

A multiplayer card game developed as a team project, featuring a graphical client, REST backend, authentication, multiplayer lobbies, persistent storage, and real-time player synchronization.

My contributions included:

  • 🔐 Authentication and session management
  • 🎮 Multiplayer lobby and player activity synchronization
  • 👤 Player profiles, statistics, account management and avatars
  • 🗄️ Database management and client-server data integration
  • 🧩 Core game architecture and static library organization
  • 🧪 Unit testing for game and session-management components

View Project →


🕸️ Graph Framework

Graph Algorithms Framework · C++14 · Qt · Graph Algorithms

A modular graph algorithms framework developed independently for a university Graph Algorithms course and progressively extended across seven assignments. The project evolved from an interactive graph editor into a complete framework covering graph traversal, connectivity, shortest paths, minimum spanning trees, TSP approximation, and network flow.

Key implementations:

  • 🕸️ Interactive directed and undirected graph framework
  • 🔍 BFS, non-recursive DFS, connected components and strongly connected components
  • 🔄 Topological sorting, cycle detection and shortest paths
  • 🧱 Labyrinth-to-graph conversion and BFS-based exit path finding
  • 🗺️ Geographic maps with KD-Tree nearest-node search and Dijkstra
  • 🌳 Kruskal and Union-Find for Minimum Spanning Trees
  • 🧭 Floyd–Warshall and MST-based TSP approximation
  • 🌊 Ford–Fulkerson maximum flow and minimum cut
  • 🎨 Interactive Qt visualization with step-by-step algorithm execution

View Project →


🌳 Huffman Coding

Lossless Data Compression · C++20 · Data Structures · Binary Trees

A C++20 implementation of the Huffman coding algorithm for lossless text compression, originally developed for a university Data Structures assignment and later refactored into a standalone project.

Key implementations:

  • 🌳 Huffman binary tree construction
  • 📊 Character frequency analysis using std::unordered_map
  • ⬇️ Min-priority queue using std::priority_queue with a custom comparator
  • 🔢 Prefix-free Huffman code generation through recursive tree traversal
  • 📋 Character-to-code lookup table
  • 🔐 Lossless text encoding
  • 📝 Support for multi-line text, spaces, tabs, newlines and punctuation
  • 🛡️ Input validation and edge-case handling
  • 🧹 Dynamic memory management for the Huffman tree
  • 🧪 Testing with multiple input scenarios and edge cases

View Project →


🎫 Reservation System

Client-Server Reservation System · Java 21 · Quarkus · PostgreSQL · TCP Sockets

A multi-module client-server reservation system developed in Java using Quarkus, PostgreSQL, JPA/Hibernate and TCP sockets, supporting concurrent clients, persistent reservations, user authentication and session management.

Key implementations:

  • 🌐 Multi-module client-server architecture using TCP sockets
  • 🔐 User registration, login, logout and session management
  • 🔒 BCrypt password hashing and authorization checks
  • 🎫 Reservation creation, cancellation and personal reservation management
  • ⚡ Concurrent client handling using ExecutorService
  • 🗄️ PostgreSQL persistence with JPA/Hibernate
  • 🔐 Pessimistic locking to prevent concurrent duplicate reservations
  • 📡 Command-based client-server communication protocol
  • 🧩 Modular separation between client, protocol and server components

View Project →


🧩 A* Grid Pathfinding

Grid Pathfinding · C++20 · A* Search · Data Structures

A C++20 grid pathfinding application developed for a university Data Structures assignment and later refactored into a standalone project. It models a terrain map as a weighted search space and uses the A* algorithm to find an optimal route while respecting terrain accessibility and elevation constraints.

Key implementations:

  • ⭐ A* search with f(n) = g(n) + h(n)
  • 📐 Manhattan-distance heuristic for four-directional grid movement
  • 🥾 Elevation-aware movement costs and terrain accessibility constraints
  • 📊 std::priority_queue with a custom comparator for efficient frontier management
  • 🔗 Path reconstruction using predecessor tracking
  • 🗺️ Grid map loading, validation and optimal-path visualization
  • 🛡️ Robust handling of invalid input, malformed maps and unreachable destinations
  • 🧪 Validation through multiple pathfinding and edge-case test scenarios

View Project →


🔐 Secure TCP Chat

Secure Client-Server Chat · C# · .NET 8 · TCP · ECDH · AES-256

A secure client-server chat application developed in C# using TCP sockets, Elliptic Curve Diffie-Hellman (ECDH) for per-client key exchange, and AES-256 for encrypted communication. The project demonstrates secure session establishment, encrypted messaging, packet integrity verification, and asynchronous multi-client communication.

Key implementations:

  • 🤝 ECDH key exchange using the NIST P-256 curve
  • 🔑 Unique AES-256 session key derived for each client
  • 🔒 AES encryption with a random IV for every message
  • 🛡️ SHA-256 packet integrity verification
  • 📡 Asynchronous TCP client-server communication with multiple clients
  • 📦 JSON-based secure packet serialization through a shared library
  • 🔄 Server-side decryption and per-client message re-encryption
  • 🔁 Automatic client reconnection after connection loss

View Project →


🛠️ Tech Stack

💻 Languages

C++ C# Java Python SQL

⚙️ Frameworks & Libraries

Qt .NET WPF Quarkus SFML TGUI PyTorch NumPy ANTLR4 Entity Framework Core

🤖 AI, Algorithms & Data Structures

Machine Learning Deep Learning A* Graph Algorithms Optimization SAT

🌐 Networking & Security

TCP UDP ECDH AES SHA-256

🗄️ Databases & Tools

PostgreSQL SQL Server SQLite Git GitHub Visual Studio Maven CUDA

📫 Connect with Me

⚡ Fun Fact

I enjoy gaming in my free time, especially simulation and strategy games. Lately, I've been exploring different countries in Euro Truck Simulator 2.

📊 GitHub Stats

Pinned Loading

  1. Andreiser12/The-Game-MC- Andreiser12/The-Game-MC- Public

    Proiect Modern C++.

    C++

  2. reservation-system reservation-system Public

    Multi-module Java client-server reservation system using Quarkus, PostgreSQL, JPA/Hibernate, TCP sockets, authentication, and concurrent request handling.

    Java

  3. graph-framework graph-framework Public

    Reusable C++ and Qt framework for creating, visualizing, and managing directed and undirected graphs, with implementations of fundamental graph algorithms.

    C++

  4. A-Star-Grid-Pathfinding A-Star-Grid-Pathfinding Public

    A C++20 implementation of A* Grid Pathfinding with Manhattan heuristic, terrain-based movement costs, movement constraints, path reconstruction, input validation, and map visualization.

    C++

  5. Huffman-Coding Huffman-Coding Public

    C++ implementation of Huffman Coding using binary trees, a min-priority queue, frequency analysis, prefix codes, and lossless text encoding.

    C++

  6. SecureTcpChat SecureTcpChat Public

    Secure TCP chat implementation in C# using Elliptic Curve Diffie-Hellman (ECDH) key exchange, AES-256 encryption, SHA-256 integrity verification, and per-client session keys.

    C#