{"id":50990066,"url":"https://github.com/devgauravjatt/comicpur-repo","last_synced_at":"2026-06-20T01:02:55.933Z","repository":{"id":356918026,"uuid":"1230375662","full_name":"devgauravjatt/comicpur-repo","owner":"devgauravjatt","description":null,"archived":false,"fork":false,"pushed_at":"2026-05-10T11:52:25.000Z","size":313,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-10T13:47:07.418Z","etag":null,"topics":[],"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/devgauravjatt.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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-06T00:01:33.000Z","updated_at":"2026-05-10T11:52:30.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/devgauravjatt/comicpur-repo","commit_stats":null,"previous_names":["devgauravjatt/comicpur-repo"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/devgauravjatt/comicpur-repo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devgauravjatt%2Fcomicpur-repo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devgauravjatt%2Fcomicpur-repo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devgauravjatt%2Fcomicpur-repo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devgauravjatt%2Fcomicpur-repo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/devgauravjatt","download_url":"https://codeload.github.com/devgauravjatt/comicpur-repo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/devgauravjatt%2Fcomicpur-repo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34553461,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-19T02:00:06.005Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2026-06-20T01:02:55.274Z","updated_at":"2026-06-20T01:02:55.908Z","avatar_url":"https://github.com/devgauravjatt.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Comicpur Monorepo\n\nA full-stack monorepo for Comicpur, featuring a high-performance backend and a mobile-first frontend.\n\n## 🚀 Project Overview\n\nComicpur is a platform for comics, built with a focus on speed, mobile experience, and modern developer experience. It uses a monorepo structure managed by **pnpm workspaces**.\n\n## 🏗️ Project Structure\n\n- **`apps/web`**: The frontend application built with **Next.js 16 (experimental)**, **Tailwind CSS 4**, and **Shadcn UI**.\n- **`apps/api`**: The backend API built with **Hono**, **Drizzle ORM**, and **Neon (PostgreSQL)**.\n\n## 🛠️ Tech Stack\n\n### Frontend (`apps/web`)\n\n- **Framework**: Next.js 16 (Experimental)\n- **Styling**: Tailwind CSS 4\n- **UI Components**: Shadcn UI (Radix UI)\n- **State Management**: Zustand\n- **Icons**: Lucide React \u0026 React Icons\n- **Formatting/Linting**: Oxc (oxfmt, oxlint)\n\n### Backend (`apps/api`)\n\n- **Framework**: Hono\n- **ORM**: Drizzle ORM\n- **Database**: Neon (PostgreSQL)\n- **Validation**: Zod\n- **Building**: tsdown\n- **Formatting/Linting**: Biome\n\n### Tooling\n\n- **Package Manager**: pnpm\n- **Git Hooks**: Husky \u0026 lint-staged\n- **Types**: TypeScript\n\n## 🏁 Getting Started\n\n### Prerequisites\n\n- [Node.js](https://nodejs.org/) (\u003e= 18)\n- [pnpm](https://pnpm.io/) (\u003e= 10)\n\n### Installation\n\n```bash\npnpm install\n```\n\n### Development\n\nRun both the API and Web apps in development mode:\n\n```bash\npnpm dev\n```\n\n### Build\n\nBuild all applications:\n\n```bash\npnpm build\n```\n\n## 📱 Development Guidelines\n\n### Mobile-First Priority\n\nAs specified in [AGENTS.md](apps/web/AGENTS.md), the primary target for Comicpur is mobile users. Always design and implement UI components with a mobile-first approach.\n\n### Framework Behavior\n\nThe project uses an experimental version of Next.js. Avoid assuming default behaviors and always verify framework implementation against the project's specific setup.\n\n### Linting and Formatting\n\n- **API**: Uses [Biome](https://biomejs.dev/) for linting and formatting.\n- **Web**: Uses [Oxc](https://oxc.rs/) for extremely fast linting and formatting.\n\nTo format the entire project:\n\n```bash\npnpm format\n```\n\n## 🔐 Environment Variables\n\nBoth `apps/api` and `apps/web` require environment variables. Refer to the respective `example.env` files in each directory:\n\n- `apps/api/example.env`\n- `apps/web/example.env`\n\n---\n\nBuilt with ❤️ for Comicpur.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevgauravjatt%2Fcomicpur-repo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdevgauravjatt%2Fcomicpur-repo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdevgauravjatt%2Fcomicpur-repo/lists"}