{"id":20269439,"url":"https://github.com/iker-gonzalez/ft-transcendence","last_synced_at":"2026-04-09T16:02:26.524Z","repository":{"id":212335684,"uuid":"657972742","full_name":"iker-gonzalez/ft-transcendence","owner":"iker-gonzalez","description":"Unleash the ultimate Pong experience with our web app! Secure logins via 42 school OAuth, two-factor authentication, stats tracking, messaging, and live game sessions. Built with TypeScript, ReactJS, NestJS, and PostgreSQL, all neatly containerized with Docker for a seamless experience.","archived":false,"fork":false,"pushed_at":"2023-12-19T07:15:20.000Z","size":85915,"stargazers_count":1,"open_issues_count":24,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-14T05:33:14.355Z","etag":null,"topics":["42school","chat-application","docker","game-development","nestjs","oauth","pong-game","postgresql","reactjs","two-factor-authentication","typescript","web-app"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/iker-gonzalez.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-06-24T11:21:15.000Z","updated_at":"2024-10-19T12:33:09.000Z","dependencies_parsed_at":"2023-12-13T19:09:06.173Z","dependency_job_id":"a1329fcd-f276-4310-b0bb-937d64c973da","html_url":"https://github.com/iker-gonzalez/ft-transcendence","commit_stats":null,"previous_names":["iker-gonzalez/ft_transcendence","iker-gonzalez/ft-transcendence"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iker-gonzalez%2Fft-transcendence","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iker-gonzalez%2Fft-transcendence/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iker-gonzalez%2Fft-transcendence/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iker-gonzalez%2Fft-transcendence/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iker-gonzalez","download_url":"https://codeload.github.com/iker-gonzalez/ft-transcendence/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241753144,"owners_count":20014252,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["42school","chat-application","docker","game-development","nestjs","oauth","pong-game","postgresql","reactjs","two-factor-authentication","typescript","web-app"],"created_at":"2024-11-14T12:25:15.438Z","updated_at":"2026-04-09T16:02:26.461Z","avatar_url":"https://github.com/iker-gonzalez.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Transcendence\nFor the official subject of the project:\n\n\u003e This project is about creating a website for the mighty Pong contest!\n\u003e\n\u003e Thanks to your website, users will play Pong with others. You will provide a nice user interface, a chat, and real-time multiplayer online games!\n\u003cimg src=\"https://github.com/iker-gonzalez/ft_transcendence/assets/73175085/99bc32d4-35d5-4854-a593-a66f06c682df\" width=\"100%\" /\u003e\n\n\n## Features\n- Backend in NestJS\n  - PostgreSQL with Prisma\n  - E2E testing with Pactum\n- Frontend in TypeScript React  \n- Dockerized\n- Features:\n  - User\n    - 2FA authentication with authenticator app\n    - Login through 42 Intra OAuth system\n    - List of friends with live status\n    - Stats, e.g. wins and losses, match history, etc.\n  - Game\n    - Online multiplayer Pong-like\n    - Matchmaking system\n    - Canvas game in JavaScript\n    - Game customization, e.g. themes and power-ups\n  - Chat\n    - Private conversation with Blocking feature\n    - Channels (public, private, password-protected)\n    - Ownr and Admin rights (e.g. muting, kicking, banning members)\n    - Game invitation through chat\n\n# Application Environment Configuration\nThis application relies on environment variables to customize its behavior. To set up your development environment, follow these steps:\n\nCreate a .env file at the root of the project.\nOpen the .env file in a text editor of your choice.\nYou'll need to provide values for various environment variables based on your specific configuration. Refer to the .env_template file for a list of required environment variables.\n\nNote: Sensitive information such as database credentials should be handled securely. Ensure that you do not expose these values in public repositories or environments.\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiker-gonzalez%2Fft-transcendence","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiker-gonzalez%2Fft-transcendence","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiker-gonzalez%2Fft-transcendence/lists"}