{"id":13573613,"url":"https://github.com/wrongbyte/tuwuitter","last_synced_at":"2025-03-17T09:30:43.577Z","repository":{"id":50617604,"uuid":"519618476","full_name":"wrongbyte/tuwuitter","owner":"wrongbyte","description":":sparkles: fullstack twitter clone developed with GraphQL and Relay","archived":false,"fork":false,"pushed_at":"2024-04-25T00:55:12.000Z","size":1225,"stargazers_count":33,"open_issues_count":5,"forks_count":1,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-03-10T16:52:45.471Z","etag":null,"topics":["graphql","graphql-ws","react","react-relay","relay"],"latest_commit_sha":null,"homepage":"https://tuwuitter.herokuapp.com/login","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/wrongbyte.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":"2022-07-30T20:52:39.000Z","updated_at":"2024-06-26T06:59:48.000Z","dependencies_parsed_at":"2024-06-15T00:15:17.142Z","dependency_job_id":null,"html_url":"https://github.com/wrongbyte/tuwuitter","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wrongbyte%2Ftuwuitter","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wrongbyte%2Ftuwuitter/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wrongbyte%2Ftuwuitter/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wrongbyte%2Ftuwuitter/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wrongbyte","download_url":"https://codeload.github.com/wrongbyte/tuwuitter/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243858793,"owners_count":20359256,"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":["graphql","graphql-ws","react","react-relay","relay"],"created_at":"2024-08-01T15:00:38.299Z","updated_at":"2025-03-17T09:30:43.076Z","avatar_url":"https://github.com/wrongbyte.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","Challenges Fullstack"],"sub_categories":[],"readme":"## Tuwuitter - a Twitter clone made with GraphQL + Relay\n\n⚠️ this code needs a lot of refac, and I plan to do so in the future\n\nThis is a study project in continuous development, in which I am implementing features from Twitter - such as a real-time timeline, user profiles and tweets - using the Relay stack. Feel free to open a PR anytime!\n\nThis project has a deployment in heroku, you can see it live [here.](https://tuwuitter.herokuapp.com/login)\n\n## Technologies used:\n- Language: Typescript\n- Server: Koa\n- Database: MongoDB\n- GraphQL middleware: GraphQL-helix\n- Graphql library to implement subscriptions: Graphql-ws\n- React (frontend components)\n- Relay (frontend framework and server specification)\n\n\n![user profile preview](https://user-images.githubusercontent.com/57643375/182004479-b71eb6b3-d21d-44be-a041-c4ad38d8b830.png)\n![timeline preview](https://user-images.githubusercontent.com/57643375/185009264-3311524a-0a5a-4e2b-bcd3-931a921c8da4.png)\n\n\n## WORK IN PROGRESS\n\n### How to run in dev mode\n\nInstall the dependencies\n```\nyarn install\n```\nFill the envs and generate the `graphql.schema` file. Then, run \n```\nyarn dev\n```\n\nIt's also important to note that, if you run this app in dev mode, it will run two instances (backend and frontend), since it uses webpack dev server with hot reload and ts-node-dev. Therefore, you should alter the `fetchGraphQL.ts` file to point to this URL when running locally.\nIn production, the frontend is served from the koa server.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwrongbyte%2Ftuwuitter","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwrongbyte%2Ftuwuitter","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwrongbyte%2Ftuwuitter/lists"}