{"id":27954323,"url":"https://github.com/ashish0kumar/updoot","last_synced_at":"2025-05-07T17:25:05.522Z","repository":{"id":288473270,"uuid":"961551665","full_name":"ashish0kumar/updoot","owner":"ashish0kumar","description":"🌆 A modern Reddit-inspired community platform","archived":false,"fork":false,"pushed_at":"2025-04-17T19:13:50.000Z","size":557,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-18T08:39:41.918Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://updoot-jet.vercel.app","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/ashish0kumar.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,"zenodo":null}},"created_at":"2025-04-06T18:40:43.000Z","updated_at":"2025-04-17T19:13:54.000Z","dependencies_parsed_at":"2025-04-18T08:39:53.880Z","dependency_job_id":"60ad8a00-85b2-4ffb-8c66-21d2f9f6c905","html_url":"https://github.com/ashish0kumar/updoot","commit_stats":null,"previous_names":["ashish0kumar/updoot"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashish0kumar%2Fupdoot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashish0kumar%2Fupdoot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashish0kumar%2Fupdoot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ashish0kumar%2Fupdoot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ashish0kumar","download_url":"https://codeload.github.com/ashish0kumar/updoot/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252923660,"owners_count":21825905,"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":[],"created_at":"2025-05-07T17:25:04.721Z","updated_at":"2025-05-07T17:25:05.514Z","avatar_url":"https://github.com/ashish0kumar.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ![Updoot Logo](public/favicon.svg) [updoot](https://updoot-jet.vercel.app)\n\n**updoot** is a modern, **Reddit-inspired** community platform where users can **create communities**, publish **rich media posts**, engage in **meaningful discussions**, and participate in a **dynamic voting system** that promotes the most valuable content.\n\n![screenshot](/assets/ss.png)\n\n## Features\n\n- **User Authentication**: Secure login with Kinde Auth\n- **Community Creation**: Create and manage your own communities\n- **Rich Post Creation**:\n  - Tiptap WYSIWYG editor\n  - Image uploads via UploadThing\n- **Voting System**: Upvote/downvote posts\n- **Comments**: Individual comments on posts\n- **Theme Toggle**: Light/Dark mode with `next-themes`\n- **Pagination**: Fast content loading\n- **Toast Notifications**: Smooth user feedback\n\n## Tech Stack\n\n- **Frontend**:\n  - Next.js 14 (App Router)\n  - TypeScript\n  - Tailwind CSS\n  - Shadcn UI Components\n- **Backend**:\n  - Next.js API Routes\n  - Prisma ORM\n  - PostgreSQL (via Supabase)\n- **Authentication**: Kinde\n- **File Uploads**: UploadThing\n- **Rich Text Editor**: Tiptap\n- **Deployment**: Vercel\n\n## Getting Started\n\n### Prerequisites\n\n- Node.js 18+\n- pnpm\n- PostgreSQL\n- Kinde account\n- UploadThing account\n\n### Installation\n\n```bash\n# Clone the repo and navigate into the project directory\ngit clone https://github.com/ashish0kumar/updoot.git\ncd updoot\n\n# Install dependencies\npnpm install\n# or\nnpm install\n\n# Copy and fill in the environment variables\ncp .env.example .env\n\n# Run database migrations to set up the schema\nnpx prisma migrate dev --name init\n\n# Generate the Prisma Client\nnpx prisma generate\n\n# Start the dev server\npnpm run dev\n```\n\n### Environment Variables\n\n```env\nKINDE_CLIENT_ID=\"your_kinde_client_id\"\nKINDE_CLIENT_SECRET=\"your_kinde_client_secret\"\nKINDE_ISSUER_URL=\"https://your-subdomain.kinde.com\"\nKINDE_SITE_URL=\"http://localhost:3000\"\nKINDE_POST_LOGOUT_REDIRECT_URL=\"http://localhost:3000\"\nKINDE_POST_LOGIN_REDIRECT_URL=\"http://localhost:3000/api/auth/creation\"\n\nDATABASE_URL=\"postgresql://...\"\nDIRECT_URL=\"postgresql://...\"\n\nUPLOADTHING_TOKEN=\"your_uploadthing_token\"\nUPLOADTHING_SECRET=\"your_uploadthing_secret\"\nUPLOADTHING_APP_ID=\"your_uploadthing_app_id\"\n```\n\n### Project Structure\n\n```txt\napp/\n  api/            - API routes\n  components/     - Reusable UI\n  lib/            - Utility functions\n  post/           - Post pages\n  r/              - Community pages\n  settings/       - User settings\n  actions.tsx     - Server actions\n  globals.css     - Global styles\n  layout.tsx      - Root layout\n  page.tsx        - Home page\nprisma/           - Prisma schema\npublic/           - Static assets\n```\n\n## Contributing\n\nPRs welcome! Feel free to open issues and suggest features.\n\n## License\n\n[MIT License](LICENSE)\n\n## Acknowledgements\n\n- [Kinde](https://kinde.com)\n- [Supabase](https://supabase.com/)\n- [UploadThing](https://uploadthing.com)\n- [Shadcn UI](https://ui.shadcn.com)\n- [Tiptap](https://tiptap.dev)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashish0kumar%2Fupdoot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fashish0kumar%2Fupdoot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fashish0kumar%2Fupdoot/lists"}