{"id":28716980,"url":"https://github.com/kenfdev/study-claude-code","last_synced_at":"2025-06-15T03:12:47.052Z","repository":{"id":297856823,"uuid":"997757824","full_name":"kenfdev/study-claude-code","owner":"kenfdev","description":null,"archived":false,"fork":false,"pushed_at":"2025-06-07T22:34:40.000Z","size":54,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-06-07T23:26:44.057Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/kenfdev.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}},"created_at":"2025-06-07T05:44:32.000Z","updated_at":"2025-06-07T22:34:44.000Z","dependencies_parsed_at":"2025-06-07T23:39:34.214Z","dependency_job_id":null,"html_url":"https://github.com/kenfdev/study-claude-code","commit_stats":null,"previous_names":["kenfdev/study-claude-code"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kenfdev/study-claude-code","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kenfdev%2Fstudy-claude-code","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kenfdev%2Fstudy-claude-code/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kenfdev%2Fstudy-claude-code/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kenfdev%2Fstudy-claude-code/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kenfdev","download_url":"https://codeload.github.com/kenfdev/study-claude-code/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kenfdev%2Fstudy-claude-code/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259914955,"owners_count":22931332,"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-06-15T03:12:39.057Z","updated_at":"2025-06-15T03:12:47.037Z","avatar_url":"https://github.com/kenfdev.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Todo App - Cloudflare Deployment\n\nA full-stack Todo application built with React Router v7, Express, and SQLite, ready for deployment on Cloudflare Pages and Workers.\n\n## 🚀 Features\n\n- ✅ User authentication (JWT)\n- ✅ Create, read, update, delete todos\n- ✅ Responsive UI with Tailwind CSS\n- ✅ TypeScript throughout\n- ✅ Cloudflare Workers for API\n- ✅ Cloudflare Pages for frontend\n- ✅ D1 Database for data persistence\n\n## 📋 User Stories Implemented\n\n1. **User Registration/Login** - Create account and authenticate\n2. **Todo Creation** - Add new tasks to your list\n3. **Todo List Display** - View all your todos\n4. **Todo Completion** - Mark tasks as done\n5. **Todo Deletion** - Remove unwanted tasks\n\n## 🛠️ Tech Stack\n\n- **Frontend**: React Router v7, TypeScript, Tailwind CSS\n- **Backend**: Hono (Workers), JWT authentication\n- **Database**: Cloudflare D1 (SQLite)\n- **Deployment**: Cloudflare Pages \u0026 Workers\n\n## 🚀 Quick Start\n\n### Prerequisites\n```bash\nnpm install\nnpm install -g wrangler\nwrangler login\n```\n\n### 1. Create D1 Database\n```bash\nwrangler d1 create todo-app-db\n# Copy the database_id and update wrangler.toml\n```\n\n### 2. Initialize Database\n```bash\nwrangler d1 execute todo-app-db --file=./schema.sql\n```\n\n### 3. Deploy\n```bash\n# Deploy API to Workers\nwrangler deploy\n\n# Build and deploy frontend\nnpm run build\nwrangler pages deploy build/client --project-name todo-app\n```\n\n### 4. Set Environment Variables\n\n#### Workers Dashboard:\n- `JWT_SECRET`: Your secure secret key\n\n#### Update `.env.production`:\n- `VITE_API_URL`: Your Workers API URL\n\n## 📁 Project Structure\n\n```\n├── app/                    # React Router frontend\n│   ├── components/        # React components\n│   ├── routes/           # Page routes\n│   └── lib/              # Utilities\n├── workers/              # Cloudflare Workers API\n│   └── index.ts         # API endpoints\n├── functions/            # Local development API\n├── scripts/              # Deployment scripts\n└── schema.sql           # Database schema\n```\n\n## 🔧 Development\n\n```bash\n# Terminal 1: API server\nnpm run server\n\n# Terminal 2: Frontend\nnpm run dev\n```\n\n## 🚢 Production Deployment\n\n### Automatic (GitHub Actions)\nPush to main branch triggers deployment.\n\n### Manual\n```bash\n./scripts/deploy.sh\n```\n\n## 📝 Environment Variables\n\n### Development\nCreate `.env` file:\n```\nPORT=3001\nNODE_ENV=development\n```\n\n### Production\n- `JWT_SECRET` - Set in Workers dashboard\n- `VITE_API_URL` - Set in `.env.production`\n\n## 🔍 Testing\n\n```bash\nnpm test\n```\n\n## 📚 Documentation\n\n- [Deployment Guide](./DEPLOYMENT.md)\n- [Quick Start](./QUICKSTART.md)\n- [GitHub Secrets Setup](./GITHUB_SECRETS.md)\n\n## 🤝 Contributing\n\n1. Fork the repository\n2. Create your feature branch\n3. Commit your changes\n4. Push to the branch\n5. Open a Pull Request\n\n## 📄 License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkenfdev%2Fstudy-claude-code","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkenfdev%2Fstudy-claude-code","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkenfdev%2Fstudy-claude-code/lists"}