{"id":26914918,"url":"https://github.com/andreicud/chimeshare","last_synced_at":"2026-05-07T13:44:58.715Z","repository":{"id":247941773,"uuid":"796222220","full_name":"AndreicuD/ChimeShare","owner":"AndreicuD","description":"ChimeShare is an online web project dedicated to making music accesible to everyone, with a social twist.","archived":false,"fork":false,"pushed_at":"2025-03-24T21:00:00.000Z","size":2429,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-03T09:46:49.685Z","etag":null,"topics":["mariadb","music","mvc","online","php","social","social-network","social-platform","web","website","yii2"],"latest_commit_sha":null,"homepage":"https://chime-share.com/","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/AndreicuD.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-05-05T10:05:51.000Z","updated_at":"2025-04-15T09:54:22.000Z","dependencies_parsed_at":"2025-04-01T17:50:46.624Z","dependency_job_id":"f7bf9f55-e72f-4583-96e0-cf7a67c11726","html_url":"https://github.com/AndreicuD/ChimeShare","commit_stats":null,"previous_names":["andreicud/chimeshare"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/AndreicuD/ChimeShare","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndreicuD%2FChimeShare","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndreicuD%2FChimeShare/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndreicuD%2FChimeShare/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndreicuD%2FChimeShare/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AndreicuD","download_url":"https://codeload.github.com/AndreicuD/ChimeShare/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AndreicuD%2FChimeShare/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32740908,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-07T02:14:30.463Z","status":"ssl_error","status_checked_at":"2026-05-07T02:14:29.405Z","response_time":62,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["mariadb","music","mvc","online","php","social","social-network","social-platform","web","website","yii2"],"created_at":"2025-04-01T17:50:37.159Z","updated_at":"2026-05-07T13:44:58.708Z","avatar_url":"https://github.com/AndreicuD.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003eWARNING, old project not mantained anymore! \u003c/h1\u003e\n\n\u003cimg width=\"2560\" height=\"1327\" alt=\"image\" src=\"https://github.com/user-attachments/assets/5c9ec4f7-6138-4e66-9f8a-4c84f8a3b5f9\" /\u003e\n\u003cimg width=\"2560\" height=\"1327\" alt=\"image\" src=\"https://github.com/user-attachments/assets/f1e9043c-8fa2-4507-9838-119b4f84a65e\" /\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://chime-share.com\" target=\"_blank\"\u003e\n        \u003cimg src=\"https://chime-share.flexi-design.ro/frontend/web/img/logo-orig.png\" height=\"100px\"\u003e\n    \u003c/a\u003e\n    \u003ch1 align=\"center\"\u003eChime Share\u003c/h1\u003e\n    \u003cbr\u003e\n\u003c/p\u003e\n\nProiect realizat sub îndrumarea:\n* Prof. Carmen Nicoleta Mincă\n* Prof. Simona Ionescu\n* Prof. Magdalena Rădulescu\n\n\u003ch2 align=\"center\"\u003eRO 🇷🇴\u003c/h2\u003e\n\u003ch3 align=\"center\"\u003eChimeShare este un proiect web online care încearcă să facă muzica accesibilă pentru toată lumea, cu un twist social.\u003c/h3\u003e\n\u003cbr\u003e\n\n\u003cp\u003eCu toții cunoaștem acele idei care apar aleatoriu în timpul zilei și care par incredibile, dar pe care nu reușim să le salvăm la timp. Cu acest site,\nîmpărtășirea și scrierea propriilor tale melodii scurte devine mai ușoară ca niciodată. Toate necesitățile de bază pentru crearea de melodii simple sunt\naduse aici, pe aceeași platformă, pentru a elimina stresul de a nu putea găsi un workflow confortabil pentru crearea muzicii tale.\u003c/p\u003e\n    \n\u003cp\u003eAceastă platformă permite crearea de melodii scurte, de 32 de note lungime, acoperind 2 octave.\u003c/p\u003e\n    \n\u003ch2\u003eAspectul social\u003c/h2\u003e\n    \n\u003cp\u003eAcest proiect este realizat luând în considerare și aspectul social al acestuia. Pagina principală este concepută special pentru a permite descoperirea celor mai noi și populare \nmelodii create de alți utilizatori. Având acest lucru în vedere, am creat o modalitate prin care oamenii să se conecteze între ei, permițând crearea de conturi pe site.\n\u003c!--Acest lucru ne oferă, de asemenea, posibilitatea de a urmări creatorii preferați pe platformă.--\u003e\u003c/p\u003e\n\n\u003cp\u003eFiecare melodie creată are opțiunea de a fi afișată publicului, unde poate aduna aprecieri de la alți utilizatori, oferind posibilitatea de a deveni următorul\n„Chime-Maker”!\u003c/p\u003e\n\n\u003ch2\u003eO scurtă istorie\u003c/h2\u003e\n\n\u003cp id=\"aici\"\u003eÎn prezent, proiectul este bazat pe framework-ul PHP \u003ca href=\"https://www.yiiframework.com/\" target=\"_blank\"\u003eYii\u003c/a\u003e și\nbiblioteca \u003ca href=\"https://tonejs.github.io/\" target=\"_blank\"\u003eTone.js\u003c/a\u003e pentru sunete.\u003c/p\u003e    \n\n\u003cp\u003eAcest site a fost scris inițial doar în HTML, CSS, JavaScript și puțin PHP, dar pe măsură ce timpul a trecut și au fost\nadăugate funcții noi, am realizat că acestea nu vor fi suficiente.\u003c/p\u003e\n\n\u003cp\u003ePasul logic următor a fost portarea proiectului pe un micro-framework PHP, \u003ca href=\"http://limonade-php.github.io/\" target=\"_blank\"\u003eLimonade\u003c/a\u003e, care\nse ocupa de rutare și view-urile site-ului. Odată cu această schimbare, am profitat de ocazie pentru a îmbunătăți partea de sunet a proiectului. Înainte,\nfiecare sunet era un fișier mp3 care era redat, ceea ce însemna că trebuia să creez un fișier mp3 pentru fiecare dintre cele 24 de note, pentru fiecare\ninstrument pe care intenționam să îl adaug. Vă puteți imagina că acest lucru era foarte plictisitor și nici nu avea o performanță grozavă.\u003c/p\u003e\n\n\u003cp\u003eNoua implementare se baza pe \u003ca href=\"https://github.com/keithwhor/audiosynth\" target=\"_blank\"\u003eaudiosynth\u003c/a\u003e, de Keithwhor, dar am descoperit curând\ncă nici aceasta nu putea reda multiple note simultan. Faptul că JavaScript este un limbaj single-threaded a făcut ca implementarea\npolifoniei să fie foarte dificil de realizat de unul singur, așa că am știut că găsirea unei noi biblioteci era necesară.\u003c/p\u003e\n\n\u003cp\u003eAici intervine \u003ca href=\"https://tonejs.github.io/\" target=\"_blank\"\u003eTone.js\u003c/a\u003e. Această bibliotecă rezolvă problema polifoniei notelor\nși poate, de asemenea, să genereze sunete de instrumente pe loc. Acest lucru înseamnă că sunetele sunt create pe baza diferitelor variabile pe care le pot schimba ușor,\nfără a fi nevoie să refac vreun fișier eu însumi. Astfel, în viitor pot fii adăugate funcții care permit utilizatorilor să-și creeze propriile\ninstrumente sau să facă sample-uri la diferite sunete de-ale lor.\u003c/p\u003e\n\n\u003cp\u003ePentru ca această schimbare să fie posibilă, am rescris, pentru a treia oară, întregul backend pentru pagina \u003cb\u003eChime Maker\u003c/b\u003e, schimbând modul în care notele sunt\nstocate în fundal pe mașina utilizatorului și ulterior în baza de date. Cu acest nou design de structură pot astfel stoca note de diferite lungimi,\npermițând posibilități nelimitate! (teoretic 2 la puterea 3072, dar cine stă să numere? 😎 )\u003c/p\u003e\n\n\u003cp\u003eOdată cu trecerea la Tone.js, am decis să portez proiectul și pe un framework mai puternic, \u003ca href=\"https://www.yiiframework.com/\" target=\"_blank\"\u003eYii\u003c/a\u003e. Yii aduce foarte multe îmbunătățiri atât la partea de securitate,\ncât și pe alte planuri, lucru care a permis dezvoltarea proiectului în direcția dorită, dar \nimplementarea lui a însemnat o rescriere a întregului site și a modului în care funcționează. Pe parcursul acestui proiect, am învațat foarte multe lucruri noi.\u003c/p\u003e\n\n\u003ch2\u003eDocumentație și tehnologii\u003c/h2\u003e\n\n\u003cp\u003eMai multe informații despre tehnologiile utilizate pot fi găsite în \n\u003ca href=\"https://github.com/AndreicuD/ChimeShare/blob/main/docs/ChimeShare-2.pdf\" target=\"_blank\"\u003edocumentație\u003c/a\u003e.\u003c/p\u003e\n\n------------------------------\n\n\u003ch2 align=\"center\"\u003eEN 🇬🇧\u003c/h2\u003e\n\u003ch3 align=\"center\"\u003eChimeShare is an online web project dedicated to making music accesible to everyone, with a social twist. \u003c/h3\u003e\n\u003cbr\u003e\n\n\u003cp\u003eWe all know those ideas that come randomly during the day that seem glorious, but that we can't seem to be able to save in time. With this website, sharing and writing\nyour own short melodies becomes easier than ever. All the basic needs for making simple melodies are brought here, on the same platform, to eliminate the stress of not \nbeing able to find a comfortable workflow for your music creation. \u003c/p\u003e\n\n\u003cp\u003eThis platform enables the making of short melodies, of 32 notes of length, covering 2 octaves.\u003c/p\u003e\n\n\u003ch2\u003eThe social aspect\u003c/h2\u003e\n\n\u003cp\u003eThis project is also made with the social aspect of it in mind. The front page is designed specifically to allow the discovery of the newest and most popular \nchimes made by other users. With this in mind, we've made a way for people to connect to eachother by allowing the creation of accounts on the website. \n\u003c!--This also enables the possibility of following your favourite creators on the platform.--\u003e\u003c/p\u003e\n\n\u003cp\u003eEach chime you make has the option to be shown to the public, where it can gather likes by other users, bringing the possibility of becoming the next big chime-maker!\u003c/p\u003e\n\n\u003ch2\u003eA short history\u003c/h2\u003e\n\n\u003cp\u003eRight now the project is based on the \u003ca href=\"https://www.yiiframework.com/\" target=\"_blank\"\u003eYii\u003c/a\u003e PHP framework and\nthe \u003ca href=\"https://tonejs.github.io/\" target=\"_blank\"\u003eTone.js\u003c/a\u003e library for sounds.\u003c/p\u003e    \n\n\u003cp\u003eThis website was originally written only in HTML, CSS, JavaScript and a bit of PHP, since that was what I knew, but as time went on and new features were added,\nI realized this was not going to be enough.\u003c/p\u003e\n\n\u003cp\u003eThe next logical step was to port the project to a PHP micro-framework, \u003ca href=\"http://limonade-php.github.io/\" target=\"_blank\"\u003eLimonade\u003c/a\u003e, that took care\nof the routing and views of the site. With this change made, I also took the time to upgrade the sound-part of the project. Before, each sound was an mp3 file\nbeing played, which meant I needed to make an mp3 file for every one of the 24 notes, for every instrument that I planned to add. You can imagine that this\nwas very tedious, and it wasn't even perfoming great.\u003c/p\u003e\n\n\u003cp\u003eThe new implementation was based around \u003ca href=\"https://github.com/keithwhor/audiosynth\" target=\"_blank\"\u003eaudiosynth\u003c/a\u003e, by Keithwhor, but I soon found out\nthat this also wasn't able to play multiple notes simultaneously. The fact that JavaScript is a single-threaded language made the implementation\nof polyphony very hard to achieve by myself, so I knew that finding a new library was a must. \u003c/p\u003e\n\n\u003cp\u003eHere's when \u003ca href=\"https://tonejs.github.io/\" target=\"_blank\"\u003eTone.js\u003c/a\u003e comes into play. This library takes care of the note polyphony situation,\nand is also able to generate instrument sounds on the go. This means that the sounds are made based on different variables that I can change easily,\nwithout needing to redo any files myself. This also means that, in the future, I can add features that let users make their own instruments, or sample\ndifferent sound of their own.\u003c/p\u003e\n\n\u003cp\u003eFor this change to be possible, I rewrote, for the third time, the entire backend for the \u003cb\u003eChime Maker\u003c/b\u003e website, changing the way the notes are\nstored in the background on the user machine, and later on the data-base. With this new structure design, I am also able to store different lenghts for\nnotes, enabling endless posibilities! (theoretically 2 to the power of 3072, but who's counting? 😎 )\u003c/p\u003e\n\n\u003cp\u003eWhile changing my sound-engine to Tone.js, I also opted to port my project to a bigger framework, Yii, that took care of security for me. This meant that the entire\nproject needed to be rewriten to fit this new model I went with. I learned a lot while doing this project, and I realized there are still a\nlot of things I need to learn. \u003c/p\u003e\n\n\u003ch2\u003eDocumentation and technologies\u003c/h2\u003e\n\n\u003cp\u003eMore information about the technologies used can be found on \nthe \u003ca href=\"https://github.com/AndreicuD/ChimeShare/blob/main/docs/ChimeShare-2.pdf\" target=\"_blank\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandreicud%2Fchimeshare","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandreicud%2Fchimeshare","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandreicud%2Fchimeshare/lists"}