listaamisen arvoisia projekteja
Koulussa Web-teknologiat kurssin lopputyöksi tehty Super Inventory on Inventaario verkkosovellus, jolla voi hallinoida useita lokaatioita ja niiden tuotteita. Projektin selainpuoli on toteutettu Reactilla ja palvelinpuolella on käytetty NodeJS, ExpressJS sekä SQLite tietokantaa
Buglister on omaan käyttöön Electron ohjelmistokehyksellä ja Javascriptillä toteutettu työpöytäsovellus, jossa käyttäjä voi listata bugeja. Ohjelmassa voi lisätä listaan bugeja ja ne voi siirtää korjattujen bugien listaan tai poistaa kokonaan. Näkymän voi tallentaa JSON tiedostoksi ja siihen voi palata.
Sääsovellusprojekti, jossa käytin Visual Crossing -nimistä julkista ohjelmointirajapintaa säätietojen hankkimiseen. Toteutin tämän ympärille verkkosovelluksen, joka toimii sekä tietokoneilla että puhelimilla. Sovelluksella voi tarkastella eri paikkojen säätietoja, mukaan lukien nykyiset olosuhteet, seuraavan 24 tunnin ennusteet sekä seitsemän tulvean päivän ennusteet. Sovelluksen selainpuoli on toteutettu Reactilla ja Tailwind CSS avulla. Palvelinpuoli on perus Express-serveri.
Korkeakoulun harjoitteluni aikana toteutin mm. Github-readme-footer-generator projektin. Projekti oli pääasiassa yrityksen sisäiseen käyttöön suunnattu työkalu. Projekti on terminaali työkalu, jolla pystyy hakemaan kaikki organisaation Github repositoriot ja joko yksitellen tai massamuokata niiden README tiedostoja lisäämällä tiedostojen pohjalle mukautetun HTML-pohjaisen footer osion, jossa on yrityksen logo, linkit heidän nettisivuille ja someihin. Työkalulla pystyy myös arkistoimaan vanhoja repoja sekä tunnistamaan onko README tiedostossa jo aikaisemmin lisätty footer, jolloin sen voi ylikirjoittaa tai repon ohittaa. Projektin ainoana varsinaisena kehittäjänä toimin minä senior-kehittäjän alaisena, joka oli vastuussa projektin vaatimuksista ja tuotetun koodin katselmoinnista.
kaikki listatut pelit on toteutettu Unityllä sekä C# kieltä käyttäen
Booster on ensimmäinen peleistäni. Se on vaikea ja anteeksiantamaton ja sama teema toistuu muissakin peleissäni. Pelissä lennetään avaruusalusta, jonka pelaaja yrittää laskeutua laskeutumisalustalle. Tasoja pelissä on seitsemän, joista jokainen on edellistä vaikeampi. Aluksen tuhouduttua peli alkaa aina alusta.
Raivostuttavaksi tehty peli, jossa pelaaja löytää itsensä tyhjästä huoneesta ja huoneen ainoasta valon lähteestä loppuu paristo. Pelaaja saa tehtäväkseen löytää lattialle sattumanvaraiseen paikkaan generoituvan pariston. Pariston löydyttyä pelaajan tulee löytää lamppu uudelleen, jonka jälkeen peli päättyy.
Dash on 2D Roguelike peli, jossa pelaaja löytää itsensä sattumanvaraisesti generoituvasta kentästä, jonka lopussa on yksi kolmesta mahdollisesta bossista. Pelihahmolla on kolme elämää ja dash kyky, jotka auttavat tässä vihamielisessä maailmassa. Pelaaja saa pelin päävalikkoon näkyviin jokaisen kukistetun bossin. Aloitin projektin koska halusin haastaa itseäni ja toteuttaa pelin ilman sokeaa tutoriaalien seurantaa. Annoin myös itselleni viikon aikarajan, jossa toteutin pelin. Näin jälkikäteen olenkin lopputuloksesta oikein ylpeä.
Peli, jossa kasvatat avaruusasemiesi verkostoa ja keräät galaksin resurssit omiin taskuihisi, samalla puolustautuen aalloittain hyökkääviä vihollisia vastaan.
Ammo camp on kymmenen tunnin tutoriaalisarjan tulos. Tutoriaalisarjassa tehtiin Over cooked-klooni eli peli, jossa pelaajan tulee valmistaa aikamääreessä reseptien mukaisia ruokia. Omassa versiossani hampurilaisten sijasta pelaaja valmistaa reseptien mukaisia tykin ammuksia. Pelin 3D-mallit ovat myös itse tehtyjä. Tämän projektin parissa opin valtavasti varsinkin event-pohjaisesta arkkitehtuurista, tutoriaalisarjassa panostettiinkin koodin laatuun.
Picture Perfect Pairs on simppeli muistipeli. Se on suunniteltu verkon yli pelattavaksi, mutta siitä löytyy myös yksinpeli. PPP on toteutettu Unityn Netcode for Gameobjects kirjastolla. Peli itsessään on hyvin simppeli. Siinä kaksi pelaajaa liittyvät peliin ja kortteja käännellään vuorotellen kunnes kaikki kortit on käännetty ja eniten pareja saanut pelaaja voittaa. Pelin jälkeen molempien pelaajien halutessa voidaan järjestää uusintaottelu. Projektin avulla halusin nimenomaan opetella verkkokoodin toteuttamista.