$29.99
GamS (Gamification as a Service)
ReDat (Reddit Data Monitor)
SuH (SuperHeroes Web Game)
Proiecte B
PuAC (Purchase Advising Council)
WhaF (What the Food)
BetR! (Bet on Rats!)
PerMa (Smart Perfume Web Manager)
Proiecte M
GamS (Gamification as a Service)
Sa se creeze o aplicatie Web care va permite integratorilor includerea unui sistem de gamification propriei aplicatii. Sistemul va permite doua variante: a) oferirea de insigne (badge-uri) de genul One Day Streak, First Post, First Comment etc. si b) niveluri pentru utilizatori (newbie, lurker, squire, grand master etc.). In procesul de configurare, integratorul va putea defini o serie de evenimente (creare mesaj, creare comentariu, creare cont, a trecut un an de la crearea contului, autentificare etc.). Integratorul va putea defini conditiile necesare pentru atribuirea unui badge sau trecerea de la un nivel la altul. Acestea pot fi evenimente, badge-uri sau nivelul curent al utilizatorului. Se va implementa un API REST/GraphQL (ce va folosi o metoda de autentificare) pentru a oferi functionalitatea asociata evenimentelor si a situatiei curente a unuia sau mai multor utilizatori. De asemenea, se va returna si clasamentul curent. Evenimentele pot fi declansate in urma unei cereri sau in functie de timp (de pilda, a trecut o saptamana de la crearea contului). Ele au asociate si un punctaj. Se va implementa si o aplicatie care integreaza sistemul.
Bonus: recurgerea la o maniera vizuala atractiva pentru a putea identifica relatiile intre evenimente, badge-uri, niveluri etc.
ReDat (Reddit Data Monitor)
Folosind API-ul public oferit de Reddit, sa se realizeze o aplicatie Web menita a explora si monitoriza cele mai populare comunitati (subreddit-uri) asociate unuia sau mai multor subiecte de interes pentru un utilizator autentificat. Pe baza unui API REST/GraphQL propriu, se vor pune la dispozitie statistici si vizualizari multiple – minim 3 tipuri – referitoare la activitatea persoanelor pentru fiecare subreddit in parte in corelatie cu numarul de fire de discutie initiate, perioada de timp, categorii de utilizatori (e.g., moderatori) si altele. Aceste statistici vor fi disponibile in formate deschise precum CSV si SVG. Noile mesaje plasate pe subreddit-urile monitorizate vor fi semnalate si prin notificari direct in cadrul browser-ului Web. Resurse suplimentare referitoare la vizualizarea datelor: https://profs.info.uaic.ro/~busaco/teach/courses/cliw/web-film.html#week4.
SuH (SuperHeroes Web Game)
Pe baza datelor despre super-eroi, sa se creeze un joc Web educativ – cu scenariu, miza si conditii de victorie/infrangere stabilite de echipa – destinat adolescentilor. Jocul in sine, plus nivelurile de dificultate si stabilirea scorului, se vor implementa via un API REST/GraphQL.
Clasamentul celor mai buni jucatori va fi disponibil si ca flux RSS. Se vor avea in vedere aspecte precum internationalizarea si accesibilitatea.
Proiecte B
PuAC (Purchase Advising Council)
In contextul achizitionarii unui produs (casa, autoturism, laptop), se doreste crearea unui instrument Web care sa ajute un utilizator (cumparatorul) in luarea unei decizii prin consultarea unui grup de apropriati (familie/prieteni) - sfatuitorii. Cumparatorul va putea crea o "achizitie" in care va descrie ceea ce doreste sa cumpere (de pilda, un apartament cu 2 camere pentru inchiriere). Pe masura ce gaseste produse (apartamente) interesante, le va adauga in aplicatie. Sfatuitorii vor putea oferi feedback (minimal, comentarii si o nota). Pe masura ce sunt adaugate mai multe variante, sfatuitorii le vor putea ordona, in functie de preferinte. Cumparatorul va putea consulta situatia curenta (clasametul general, si cel al fiecarui sfatuitor) si va putea comenta. Un cumparator poate avea mai multe achizitii active. Cumparatorul va putea adauga sfatuitori. Aplicatia va genera un URL unic (greu de ghicit) care ii va putea permite sfatuitorului sa acceseze actiunile sale fara a avea un cont de utilizator. Se vor oferi informatii privind jurnalul tuturor activitatilor desfasurate de fiecare categorie de utilizatori (cumparatori, sfatuitori), exportate si in formatele CSV si PDF.
WhaF (What the Food)
Se doreste creare unei aplicatii de retete culinare care permite sugerarea de retete pe baza unor ingrediente minimizand numarul de ingrediente suplimentare necesare. Un utilizator va putea adauga retete (ingrediente, pasi de preparare, dificultate, durata preparare, durata finalizare). Vizitatorii pot cauta retete introducand ingredientele pe care le au la dispozitie si o serie de alte criterii suplimentare, cum ar fi: ingrediente suplimentare indezirabile, dificultate, durata preparare, durata finalizare etc.). Lista rezultatelor va putea fi ordonata dupa diverse criterii: popularitate, durata preparare, durata finalizare, dificultate. Utilizatorul poate alege sa marcheze ca a preparat o retata adaugand minim o fotografie cu rezultatul final (in acest fel este determinata popularitate unei retete). Daca utilizatorul care cauta o reteta nu este autentificat, atunci preferintele ultimei cautari vor fi salvate la nivel de browser, altfel in contul utilizatorului respectiv. Se vor oferi clasamente in formatele HTML, CSV si JSON cu cele mai populare retete, cele mai populare ingrediente, ingredientele cele mai evitate.
BetR! (Bet on Rats!)
Sa se implementeze o aplicatie Web oferind utilizatorilor autentificati posibilitatea realizarii de pariuri referitoare la cursele de sobolani. Sistemul va permite vizualizarea unui istoric al pariurilor si al rezultatelor aferente pentru fiecare concurent (rozator). Se va genera, de asemenea, atat un raport -- minimal, in formatele CSV, HTML si JSON -- oferind starea actuala a pariurilor, cat si calendarul (disponibil in formatul iCalendar) despre desfasurarea curselor din viitorul apropiat. Pentru fiecare cursa, va exista un termen-limita de realizare a pariurilor. Bonus: simularea serviciului de plata electronica vizand pariurile efectuate.
PerMa (Smart Perfume Web Manager)
Sa se conceapa o aplicatie Web de management al resurselor dintr-o parfumerie care ofera utilizatorilor diverse (tipuri de) parfumuri, in functie de profilul unei persoane si vizand o anumita ocazie, un anotimp etc. Fiecarui produs i se vor atasa proprietati specifice, inclusiv ingrediente, pret, comentarii, tag-uri, relatii cu alte parfumuri inrudite. De asemenea, se va simula expedierea parfumurilor achizitionate la o adresa stabilita, eventual in regim de cadou. Administratorul sistemului va avea posibilitatea sa consulte rapoarte -- generate in formatele HTML, CSV si PDF -- privind stocurile existente si situatia vanzarilor in functie de categoria de parfumuri, profilul utilizatorilor, o anumita perioada de timp, ocazie etc.