{"id":15091381,"url":"https://github.com/rakesh5777/oxytrack-turbo","last_synced_at":"2026-01-19T12:33:22.002Z","repository":{"id":223543800,"uuid":"760678504","full_name":"Rakesh5777/oxytrack-turbo","owner":"Rakesh5777","description":"A robust full stack application that includes Prisma, Postgres, Express, Node.js, React, and TypeScript across both the frontend and backend, ensuring a strongly typed development environment.","archived":false,"fork":false,"pushed_at":"2024-04-20T13:47:10.000Z","size":848,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-11T16:43:22.022Z","etag":null,"topics":["axios","ex","node","openapi-generator","openapi-specification","openapi-typescript","openapi-typescript-generator","openapi3","postgresql","pris","react","swagger-ui","typescri","zod"],"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/Rakesh5777.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":"2024-02-20T18:26:55.000Z","updated_at":"2024-04-20T13:47:13.000Z","dependencies_parsed_at":"2024-02-21T20:29:19.898Z","dependency_job_id":"b27e0063-0493-4e75-ba26-9919d5b7e4ed","html_url":"https://github.com/Rakesh5777/oxytrack-turbo","commit_stats":null,"previous_names":["rakesh5777/oxytrack-turbo"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rakesh5777%2Foxytrack-turbo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rakesh5777%2Foxytrack-turbo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rakesh5777%2Foxytrack-turbo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Rakesh5777%2Foxytrack-turbo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Rakesh5777","download_url":"https://codeload.github.com/Rakesh5777/oxytrack-turbo/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247386560,"owners_count":20930668,"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":["axios","ex","node","openapi-generator","openapi-specification","openapi-typescript","openapi-typescript-generator","openapi3","postgresql","pris","react","swagger-ui","typescri","zod"],"created_at":"2024-09-25T10:40:44.530Z","updated_at":"2026-01-19T12:33:21.990Z","avatar_url":"https://github.com/Rakesh5777.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# OxyTrack Turbo Project\n\nWelcome to the OxyTrack Turbo project! This monorepo is built with Turbo Repo, utilizing a robust stack that includes Prisma, Postgres, Express, Node.js, React, and TypeScript across both the frontend and backend, ensuring a strongly typed development environment.\n\n## Features\n\n- **Monorepo Structure**: Organized into `apps/` for frontend/backend applications and `packages/` for shared logic or components.\n- **OpenAPI Specification**: Utilizes OpenAPI spec as the source of truth for API design, with auto-generated TypeScript clients using `openapi-typescript` and `openapi-typescript-axios`.\n- **Strong Typing**: Both frontend and backend are fully typed, enhancing development experience and code quality.\n- **Database Flexibility**: Supports local Postgres setups as well as Docker-based environments for ease of development.\n- **Development Workflow**: Integrates tools like Prettier, ESLint, Husky, and lint-staged for code formatting and linting, ensuring code consistency and quality.\n\n## Getting Started\n\n### Prerequisites\n\n- Node.js (v18 or higher)\n- pnpm (v8.9.0)\n- Docker (for running Postgres in a container)\n\n### Setup Instructions\n\n1. **Clone the Repository**\n\n   Start by cloning this repository to your local machine.\n\n2. **Environment Setup**\n\n   Rename `.example.env` to `.env` in both `apps/backend` and `packages/database`. This is crucial for configuring your environment variables correctly.\n\n3. **Database Configuration**\n\n   Ensure you have a running Postgres database. You can use Docker as mentioned in the scripts section or set up a local instance.\n\n4. **Install Dependencies**\n\n   Run `pnpm install` to install all required dependencies across the monorepo.\n\n5. **Start Development Server**\n\n   To start the development server, run `turbo run dev`.\n\n## Useful Scripts\n\nDefined within the `turbo.json` pipeline, these commands are key to the project's development and deployment processes:\n\n- **Prisma Commands**:\n\n  - `turbo run db:generate`: Generates Prisma client artifacts, essential for interacting with your database in a type-safe manner.\n  - `turbo run db:push`: Updates the database schema during development without applying migrations, useful for quick iterations.\n  - `turbo run db:migrate`: Applies database migrations, ensuring your database schema matches your Prisma schema.\n\n- **API Contract and Client Generation**:\n\n  - `turbo run build-api-contract`: Bundles the OpenAPI spec and generates TypeScript Axios clients, ensuring frontend and backend communicate over a strongly typed API.\n\n- **Turbo Commands**:\n  - `turbo run build`: Compiles the project for production, ensuring all dependencies like Prisma client and API contracts are generated and up-to-date.\n  - `turbo run dev`: Starts the development server, watching for changes in your source code and automatically recompiling.\n\n## Project Structure\n\n- `apps/*`: Contains the frontend and backend applications.\n- `packages/*`: Includes shared libraries, configurations, and utility functions.\n\n## Additional Resources\n\n- [Turbo Repo Documentation](https://turborepo.org/docs)\n- [Prisma Documentation](https://www.prisma.io/docs/)\n- [OpenAPI Specification](https://swagger.io/specification/)\n- [TypeScript](https://www.typescriptlang.org/docs/)\n- [Postgres Docker Setup](https://docs.docker.com/samples/postgresql_service/)\n\n## Contributing\n\nContributions are welcome! Please follow the established coding conventions and pull request process.\n\n---\n\nThank you for choosing OxyTrack Turbo Repo for your development needs. Happy coding!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frakesh5777%2Foxytrack-turbo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frakesh5777%2Foxytrack-turbo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frakesh5777%2Foxytrack-turbo/lists"}