{"id":18193319,"url":"https://github.com/dmikaia/ridetogether-server","last_synced_at":"2026-02-11T06:31:29.303Z","repository":{"id":255699711,"uuid":"830360590","full_name":"DMikaia/RideTogether-Server","owner":"DMikaia","description":"The backend side of Ride Together","archived":false,"fork":false,"pushed_at":"2025-02-11T11:44:36.000Z","size":1297,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-16T18:31:44.314Z","etag":null,"topics":["firebase-auth","nestjs","postgresql","prisma","redis","ts-rest","websocket-chat"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DMikaia.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2024-07-18T06:02:27.000Z","updated_at":"2025-02-11T11:44:40.000Z","dependencies_parsed_at":"2024-09-06T19:52:27.462Z","dependency_job_id":null,"html_url":"https://github.com/DMikaia/RideTogether-Server","commit_stats":null,"previous_names":["dmikaia/ridetogether-server"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DMikaia%2FRideTogether-Server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DMikaia%2FRideTogether-Server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DMikaia%2FRideTogether-Server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DMikaia%2FRideTogether-Server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DMikaia","download_url":"https://codeload.github.com/DMikaia/RideTogether-Server/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246789397,"owners_count":20834284,"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":["firebase-auth","nestjs","postgresql","prisma","redis","ts-rest","websocket-chat"],"created_at":"2024-11-03T07:41:55.160Z","updated_at":"2026-02-11T06:31:29.268Z","avatar_url":"https://github.com/DMikaia.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ride Together\n\n![preview](assets/logo.png)\n\nThis is the server part of my team's school project called **Ride Together** (carpooling web application). The purpose of this application is to help people find carpooling offer easily.\n\n## Content\n\n- [Features](#features)\n- [Prerequisites](#prerequisites)\n- [Installation](#installation)\n- [Environment](#environment)\n- [Running the app](#running-the-app)\n- [Testing](#testing)\n\n## Features\n\nHere are the current features right now:\n\n- Basic authentication with Firebase\n- Data caching with [Redis](https://redis.io)\n- User (create, update, getOne)\n- Offer (creation, update, get, getAll)\n- Review (creation, update, delete, getAll)\n- Room (getAll)\n- Live chat using websocket (Not scalable yet)\n\n## Prerequisites\n\n\u003e [!NOTE]\n\u003e Using pgAdmin is optional, you can modify the [docker-compose.yml](docker-compose.yml) file to add the new postgresql service and use prisma to view the database.\n\u003e\n\u003e ```bash\n\u003e # command\n\u003e $ npx prisma studio\n\u003e ```\n\nTo be able to run the app you'll need to install:\n\n- [nodejs](https://nodejs.org/)\n- [npm](https://www.npmjs.com/)\n- [nest-cli](https://docs.nestjs.com/cli/overview#installation)\n- [docker](https://docs.docker.com)\n- [firebase project](https://firebase.google.com)\n- [pgAdmin](https://www.pgadmin.org/download/)\n\n## Installation\n\n```bash\n# command\n$ npm install\n\n# redis stack contrainer\n$ docker-compose up -d\n```\n\n## Environment\n\n```bash\n# PostgreSQL database\nDATABASE_URL=\n\n# Firebase variables\nTYPE=\nPROJECT_ID=\nPRIVATE_KEY_ID=\nPRIVATE_KEY=\nCLIENT_EMAIL=\nCLIENT_ID=\nUTH_URI=\nTOKEN_URI=\nAUTH_CERT_URL=\nCLIENT_CERT_URL=\nUNIVERSAL_DOMAIN=\n\n# Redis\nREDIS_HOST=\nREDIS_PORT=\nREDIS_PASSWORD=\n```\n\n## Running the app\n\n\u003e [!IMPORTANT]\n\u003e You'll also need to configure the firebase project and add authentication (e-mail and password) and storage, otherwise image authentication and storage won't work properly on either the server or client side. If you are not yet familiar with firebase, check out the [documentation](https://firebase.google.com/docs).\n\n```bash\n# development\n$ npm run start\n\n# watch mode\n$ npm run start:dev\n\n# production mode\n$ npm run start:prod\n```\n\n## Testing\n\n\u003e [!WARNING]\n\u003e At the moment, the tests are not available, so I've yet to implement them.\n\n```bash\n# unit tests\n$ npm run test\n\n# e2e tests\n$ npm run test:e2e\n\n# test coverage\n$ npm run test:cov\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmikaia%2Fridetogether-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdmikaia%2Fridetogether-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdmikaia%2Fridetogether-server/lists"}