Portfolio

À propos de moi

Photo Arnaud Miralles

Arnaud Miralles

Étudiant en informatique

Étudiant en licence informatique passionné par les nouvelles technologies, je poste sur ce site web mes compétences, mes projets et mes tutos dans le domaine du développement d'applications desktop, web et mobiles.

Je me penche actuellement vers le framework Flutter pour mes projets de développement mobile, et vers les nouvelles technos web (WebAssembly, WebGL, ...) pour créer des webapp interactives innovantes tels que les jeux web multijoueur ou les expositions artistiques en ligne.

Compétences

Dev & Création

Dev d'apps

Python
Java
Dart
Flutter

Dev web

HTML
CSS
JavaScript
PHP
SQL

Outils

VSCode
JetBrains
Git/GitHub
Figma
Photoshop

Systèmes & Réseaux

Systèmes

Windows
macOS
Android
iOS
Synology DSM
Ubuntu

Divers

MariaDB
Nginx
Orange
Termius

Projets

Screenshot ExpoNSI

ExpoNSI

Site web réalisé en 1ère NSI pour nous initier au développement web statique. Le but était de réaliser une petite biographie sur 2 personnalités importantes du monde informatique en utilisant HTML et CSS.

Screenshot Snake

Snake

Projet personnel ayant pour but de reconstituer le célèbre jeu Snake grâce au module Pygame de Python. C'est l'un de mes premiers grands projets que j'ai développé en debut de seconde.

Celui-ci m'a permis d'utiliser les fonctionnalités avancées de Python (générateurs, décorateurs, ...) mais également de m'initier au design et à la construction d'assets via Photoshop et de divers sites web. Vous pouvez le télécharger en cliquant ici !

Screenshot ExpoUSA

ExpoUSA

À l'occasion d'un échange linguistique avec le Lexington High School, j'ai voulu présenter un exposé assez atypique : un jeu narratif avec un site web comme support. Le jeu consistait à former des groupes qui partaient en road-trip en France. Leurs actions leurs rapportaient plus ou moins de points.

Le jeu a été conçu avec du HTML, CSS et beaucoup de JavaScript. Ce projet m'a permis d'apprendre en profondeur JS et de manipuler le DOM.

Cependant, par faute de temps, le jeu n'a jamais été fini. Les bases pour créer un "escape-game" sur le web sont quand même présentes.

Screenshot serveur Minecraft

Serveur Minecraft

L'une des premières choses que j'ai entrepris quand j'ai transformé mon mini-PC en Home Server était de self-host mon serveur Minecraft.

Cela m'a permis de découvrir plus en détail Bash pour créer un script qui relance le serveur dès qu'il plante, et même certains exécutables tels que crontab et screen, qui me servent maintenant dans tous mes projets.

Screenshot d'IP Tools

Boîte à outils IP

Répertoire contenant plusieurs scripts permettant d'administrer l'OS Ubuntu Server selon les IPs. Cela m'a été utile car j'utilisais une IP dynamique pour me connecter. J'ai tout de même arrêté d'utiliser ces scripts quand j'ai découvert la connexion par clé SSH.

Cependant, ce projet m'a permis d'en apprendre plus sur l'architecture des réseaux publics, privés, des VPN, des firewalls, et surtout sur l'administration d'un système.

Screenshot de RedditVids

RedditVids

Pendant mes moments de scrolling sur TikTok, j'ai pu remarquer que les vidéos de storytelling issues de Reddit avaient le vent en poupe. J'ai donc essayé d'automatiser la recherche de posts, la récupération de texte pour en faire des .mp3, puis le montage vidéo pour en faire des .mp4 grâce à un module Python.

Screenshot de Time's Up!

Time's Up!

Projet de NSI de fin d'année, moi et mon équipe avons eu l'idée de recréer un jeu de société en site web : le Time's Up! C'est notamment ce projet-là qui m'a permis d'approfondir le PHP notamment avec la connexion avec les bases de données, et de découvrir la configuration d'un serveur web sous Nginx.

Screenshot de DSM

NAS Synology & Media Server

Manquant cruellement d'espace sur mon ordinateur portable, je me suis muni d'un NAS Synology DS220+ pour avoir une solution de stockage en ligne privée et extensible. J'ai également installé Plex Media Server pour que ma famille puisse regarder les films et séries de la maison peu importe d'où ils sont.

Cela a été mis en place grâce à de nombreux protocoles réseaux tels que SFTP, SMB, ... et surtout la sécurisation du système pour éviter les intrusions.

Screenshot de la BDD de ProgrammeTV

Programme TV

Script qui met à jour périodiquement une base de données contenant le programme TV de toutes les chaînes françaises

Vu la non-existence d'une API contenant les programmations des chaînes françaises, j'ai dû avoir recours au web scraping grâce au module BeautifulSoup de Python. Les résultats sont donc mis dans une base de données accessible à tous (sur mon GitHub).

Cette BDD pourra servir de fondation à des projets plus concrets comme des visualiseurs de programme TV, la création de .epg ou même l'apprentissage du SQL.

Screenshot 05studio.dev

05studio.dev

Un site web portfolio qui me permettra de montrer en ligne mes projets, articles et bien plus encore !

Ce site est encore au stade de création, n'hésitez pas à me donner vos recommandations par mail !

Screenshot Snake Blockade

Snake Blockade UPEC

Projet de fin de L1, ce snake évolué permet de possède des règles différentes et permet de jouer avec un autre joueur ou contre l'IA.

Cela m'a permis d'apprendre le langage Java et des modules comme libGDX, et d'appréhender un projet de groupe, notamment avec Git et GitHub.

Screenshot Prototype Flutter

Prototype application Flutter : Swoop

Application actuellement en développement

Elle aura pour but d'envoyer des messages personnalisés grâce à la technologie Bluetooth.