{"id":16111526,"url":"https://github.com/piotrd22/portaly","last_synced_at":"2026-04-14T14:31:38.590Z","repository":{"id":221241657,"uuid":"731085344","full_name":"piotrd22/portalY","owner":"piotrd22","description":"MEVN Twitter clone with Socket.io for real-time features","archived":false,"fork":false,"pushed_at":"2024-03-12T10:27:37.000Z","size":898,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-19T13:26:18.261Z","etag":null,"topics":["docker","express","mongodb","node","socket-io","vue"],"latest_commit_sha":null,"homepage":"","language":"Vue","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/piotrd22.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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}},"created_at":"2023-12-13T10:23:25.000Z","updated_at":"2024-06-12T09:15:51.000Z","dependencies_parsed_at":"2024-10-31T22:41:15.207Z","dependency_job_id":"25d53075-7049-4fcd-8442-412ac3eeab36","html_url":"https://github.com/piotrd22/portalY","commit_stats":null,"previous_names":["piotrd22/portaly"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/piotrd22/portalY","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piotrd22%2FportalY","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piotrd22%2FportalY/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piotrd22%2FportalY/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piotrd22%2FportalY/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/piotrd22","download_url":"https://codeload.github.com/piotrd22/portalY/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/piotrd22%2FportalY/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31801231,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-14T11:13:53.975Z","status":"ssl_error","status_checked_at":"2026-04-14T11:13:53.299Z","response_time":153,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5: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":["docker","express","mongodb","node","socket-io","vue"],"created_at":"2024-10-09T19:43:32.634Z","updated_at":"2026-04-14T14:31:38.573Z","avatar_url":"https://github.com/piotrd22.png","language":"Vue","funding_links":[],"categories":[],"sub_categories":[],"readme":"# MEVN twitter clone\n\nA project made for web technology classes, where we were to implement a clone of X - the old Twitter.\n\nThe application is secured by an SSL certificate, which I am not including here.\n\nThe hardest part was implementing \"graph\" dependencies in the MongoDB database so that it made sense. In addition, the project consists of a server part written in Node.js using Express.js and Socket.io and a client part using Vue 3 with Vite, Vueitfy and basic state management with Pinia. Additionally, I use imagekit.io to store photos in the cloud.\n\nThe authorization part uses the Passport.js library and maintains the session in MongoDB.\n\nOf course, ultimately the server statically hosts the static frontend.\n\nThe website allows classic Twitter functions, i.e. registration, logging in, following, blocking, writing posts and participating in their threads, quoting posts, creating an avatar profile, etc.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpiotrd22%2Fportaly","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpiotrd22%2Fportaly","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpiotrd22%2Fportaly/lists"}