{"id":23047003,"url":"https://github.com/arjuncodess/tbh","last_synced_at":"2026-01-21T07:05:31.496Z","repository":{"id":243647531,"uuid":"812998826","full_name":"ArjunCodess/tbh","owner":"ArjunCodess","description":null,"archived":false,"fork":false,"pushed_at":"2024-08-14T13:46:29.000Z","size":2614,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-24T01:45:48.246Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://tbh-tobehonest.vercel.app/","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/ArjunCodess.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-06-10T10:06:56.000Z","updated_at":"2024-11-24T18:36:01.000Z","dependencies_parsed_at":"2024-08-14T14:21:32.129Z","dependency_job_id":null,"html_url":"https://github.com/ArjunCodess/tbh","commit_stats":null,"previous_names":["arjuncodess/tbh"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArjunCodess%2Ftbh","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArjunCodess%2Ftbh/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArjunCodess%2Ftbh/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ArjunCodess%2Ftbh/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ArjunCodess","download_url":"https://codeload.github.com/ArjunCodess/tbh/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250546047,"owners_count":21448255,"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":"2024-12-15T22:30:49.829Z","updated_at":"2026-01-21T07:05:31.491Z","avatar_url":"https://github.com/ArjunCodess.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://mytbh.vercel.app\" rel=\"noopener\"\u003e\n \u003cimg width=750px height=394px src=\"https://mytbh.vercel.app/dashboard.png\" alt=\"TBH - Anonymous Q\u0026A App\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003eTBH - Anonymous Q\u0026A App\u003c/h3\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n[![Status](https://img.shields.io/badge/status-active-success.svg)]()\n[![GitHub Issues](https://img.shields.io/github/issues/ArjunCodess/tbh.svg)](https://github.com/ArjunCodess/tbh/issues)\n[![GitHub Pull Requests](https://img.shields.io/github/issues-pr/ArjunCodess/tbh.svg)](https://github.com/ArjunCodess/tbh/pulls)\n[![License](https://img.shields.io/badge/license-MIT-blue.svg)]()\n\n\u003c/div\u003e\n\n---\n\n\u003cp align=\"center\"\u003e\n  TBH is an anonymous Q\u0026A app where friends can send you questions, you can reply in public, make threads, and keep the fun going.\n\u003c/p\u003e\n\n## 📝 Table of Contents\n\n- [About](#about)\n- [Getting Started](#getting_started)\n- [Usage](#usage)\n- [Built Using](#built_using)\n- [Deployment](#deployment)\n- [Authors](#authors)\n- [Acknowledgments](#acknowledgement)\n\n## 🧐 About \u003ca name = \"about\"\u003e\u003c/a\u003e\n\nTBH is an anonymous Q\u0026A app that lets friends ask questions without revealing their identity. Users can reply publicly, organize conversations into threads, and keep the interaction going. The app features AI-powered daily prompts, customizable profiles, and a clean, modern interface.\n\nThe main goal is to create a fun, safe space for honest conversations between friends and followers. Users get a personalized profile page where others can send anonymous questions, and they can choose to reply publicly or keep things private.\n\n**I built it** to be fast, secure, and engaging. It uses modern web technologies with a focus on user experience and privacy. The AI integration provides contextual question suggestions, while the threading system allows for deeper conversations.\n\n## 🏁 Let's Get You Set Up\n\nWant to run TBH locally? Here's what you need.\n\n### What You Need First\n\n- Node.js version 18 or newer\n- pnpm (it's like npm but faster)\n- MongoDB database (local or cloud)\n- Google AI API key for AI features\n\n### Getting It Running\n\n1. **Grab the code**\n\n   ```bash\n   git clone https://github.com/ArjunCodess/tbh.git\n   cd tbh\n   ```\n\n2. **Install everything**\n\n   ```bash\n   pnpm install\n   ```\n\n3. **Set up your environment**\n   Copy `.env.example` to `.env.local` and add your configuration:\n   ```env\n   MONGODB_URI=your_mongodb_connection_string\n   NEXTAUTH_SECRET=your_nextauth_secret\n   NEXTAUTH_URL=http://localhost:3000\n   GOOGLE_AI_API_KEY=your_google_ai_api_key\n   ```\n\n4. **Start the development server**\n\n   ```bash\n   pnpm dev\n   ```\n\nThe app should be running at `http://localhost:3000`.\n\n## 🎈 How to Use It\n\n### What It Does\n\n1. **Landing Page**\n   Introduces TBH and showcases the main features with an interactive demo.\n\n2. **User Profiles**\n   Each user gets a personalized page at `/u/[username]` where visitors can send anonymous questions.\n\n3. **Dashboard**\n   Signed-in users can manage their questions, reply to messages, organize threads, and customize their profile.\n\n4. **Anonymous Q\u0026A**\n   Friends can ask questions without logging in, and users can reply publicly or keep responses private.\n\n5. **AI Features**\n   Daily AI-generated prompts and contextual question suggestions to spark conversations.\n\n6. **Threading**\n   Group related questions and answers into conversation threads for better organization.\n\n### The Q\u0026A Flow\n\n1. Someone visits your TBH profile page\n2. They send you an anonymous question\n3. You receive it in your dashboard and can choose to reply\n4. Your public replies appear on your profile, creating a thread of conversation\n5. Others can see the conversation and join in with follow-up questions\n\nIt's all designed to be fun, honest, and engaging while keeping anonymity when requested.\n\n## 🔧 Built Using\n\n### Core Stuff\n\n- **Next.js** with the App Router for the main framework\n- **React** for the user interface (version 19)\n- **TypeScript** to catch errors before they happen\n- **MongoDB** with Mongoose for data storage\n- **NextAuth** for authentication\n\n### AI \u0026 Features\n\n- **Google AI (Gemini)** for generating daily prompts and question suggestions\n- **AI SDK** for reliable AI integration with retry logic\n\n### UI and Design\n\n- **Tailwind CSS** for styling\n- **Radix UI** for accessible components\n- **Framer Motion** for smooth animations\n- **Lucide React** for icons\n- **Next Themes** for dark/light mode\n\n### Making It Work\n\n- **Axios** for API communication\n- **Vercel Analytics** for tracking usage\n- **bcryptjs** for password hashing\n- **Zod** for data validation\n\n### Development Tools\n\n- **Vercel** for hosting and deployment\n- **pnpm** for managing packages\n- **ESLint** to check code quality\n\n## 🚀 Putting It Live\n\nTBH is set up to deploy on Vercel with MongoDB Atlas for the database.\n\n### Getting It Live\n\n1. **Vercel Setup**\n   Connect your GitHub repo to Vercel and set up the environment variables in their dashboard.\n\n2. **Environment Variables You Need**\n   ```env\n   MONGODB_URI=your_mongodb_atlas_connection_string\n   NEXTAUTH_SECRET=your_secure_random_secret\n   NEXTAUTH_URL=https://your-domain.vercel.app\n   GOOGLE_AI_API_KEY=your_google_ai_api_key\n   ```\n\n3. **Database**\n   Set up a MongoDB Atlas cluster and connect it to your app.\n\nThe app will be live and ready to collect anonymous questions!\n\n## ✍️ Who Built This\n\n- **ArjunCodess** - I built TBH and continue to work on it\n\nI believe in open source because it keeps things honest and helps everyone get better together. If you want to collaborate or have questions, feel free to reach out.\n\n## 🎉 Thanks to\n\n- **Vercel** for making deployment so smooth\n- **Google AI** for the Gemini API that powers the AI features\n- **shadcn/ui** for great components I could build on\n- **The open source community** who shares their work and makes this possible\n\n---\n\n\u003cdiv align=\"center\"\u003e\n\n**TBH** - Real questions. Honest answers.\n\n_Built with ❤️ for authentic conversations_\n\n\u003c/div\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farjuncodess%2Ftbh","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Farjuncodess%2Ftbh","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Farjuncodess%2Ftbh/lists"}