{"id":35324507,"url":"https://github.com/ansango/ansango.template","last_synced_at":"2026-04-05T22:32:52.990Z","repository":{"id":325042335,"uuid":"1088270710","full_name":"ansango/ansango.template","owner":"ansango","description":"A modern, content-first personal website built with Astro, designed for technology articles, wikis, projects, and indie web principles. Write in Obsidian, publish with ease.","archived":false,"fork":false,"pushed_at":"2025-11-19T07:43:10.000Z","size":1701,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-05T22:32:29.477Z","etag":null,"topics":["astro","blog","goatcounter","indieweb","lastfm","portfolio","raindrop","svelte","tailwindcss","tanstack-query","typescript"],"latest_commit_sha":null,"homepage":"https://ansango.com","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/ansango.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":"roadmap.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-11-02T16:43:23.000Z","updated_at":"2025-11-19T07:43:13.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/ansango/ansango.template","commit_stats":null,"previous_names":["ansango/ansango.template"],"tags_count":0,"template":true,"template_full_name":null,"purl":"pkg:github/ansango/ansango.template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansango%2Fansango.template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansango%2Fansango.template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansango%2Fansango.template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansango%2Fansango.template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ansango","download_url":"https://codeload.github.com/ansango/ansango.template/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansango%2Fansango.template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31452899,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-05T21:22:52.476Z","status":"ssl_error","status_checked_at":"2026-04-05T21:22:51.943Z","response_time":75,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["astro","blog","goatcounter","indieweb","lastfm","portfolio","raindrop","svelte","tailwindcss","tanstack-query","typescript"],"created_at":"2025-12-31T01:06:00.823Z","updated_at":"2026-04-05T22:32:52.753Z","avatar_url":"https://github.com/ansango.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# ansango.template\n\n## 🌐 Personal Blog \u0026 Wiki Template\n\nA modern, content-first personal website built with [Astro](https://astro.build), designed for technology articles, wikis, projects, and indie web principles. Write in [Obsidian](https://obsidian.md), publish with ease.\n\nSee [live demo →](https://ansango.com) | [GitHub Based Repository →](https://github.com/ansango/ansango.dev)\n\n## ✨ Features\n\nModern template for bloggers, developers, and indie web enthusiasts with:\n\n- 📝 **Content Collections**: Blog, Wiki, Projects, and standalone pages\n- 🔍 **Full-text Search**: Powered by Pagefind with keyboard shortcuts\n- 🎵 **Live Integrations**: Last.fm music and Raindrop.io bookmarks\n- 🌓 **Dark Mode**: Theme switching with persistent preference\n- 📄 **SEO Optimized**: Complete meta tags, structured data, and sitemap\n- ✍️ **Obsidian Integration**: Write in Obsidian, deploy automatically\n- ⚡ **Fast Performance**: Static generation with Lighthouse 95+ scores\n\nSee [full feature list →](./docs/01-features.md)\n\n## 🛠️ Tech Stack\n\nBuilt with modern, production-ready technologies:\n\n### Core\n\n- **[Astro](https://astro.build)** - Static site generator\n- **[Svelte 5](https://svelte.dev)** - Interactive components\n- **[Tailwind CSS v4](https://tailwindcss.com)** - Styling system\n- **[TypeScript](https://www.typescriptlang.org)** - Type safety\n\n### Integrations\n\n- **[Pagefind](https://pagefind.app)** - Full-text search\n- **[Last.fm API](https://www.last.fm/api)** - Music integration\n- **[Raindrop.io API](https://raindrop.io)** - Bookmarks \u0026 reading list\n- **[TanStack Query](https://tanstack.com/query)** - Data fetching\n\n### Deployment\n\n- **[Obsidian](https://obsidian.md)** - Content writing\n- **[GitHub Actions](https://github.com/features/actions)** - CI/CD pipeline\n- **[Cloudflare Pages](https://pages.cloudflare.com)** - Hosting\n\nSee [architecture details →](./docs/02-architecture.md)\n\n## 🚀 Quick Start\n\n### Prerequisites\n\n- Node.js 18+\n- npm, pnpm, or bun\n\n### Installation\n\n```bash\n# Clone repository\ngit clone https://github.com/ansango/ansango.dev.git\ncd ansango.dev\n\n# Install dependencies\nnpm install\n\n# Configure environment (optional), \n# Edit .env with your API keys for integrations\ncp .env.sample .env\n\n# Start development server and http://localhost:4321 🎉\nnpm run dev\n```\n\nSee [installation guide →](./docs/03-installation.md)\n\n## ✍️ Writing Content with Obsidian\n\nThis template is designed to work seamlessly with Obsidian:\n\n1. **Open as Vault**: Open this repository in Obsidian\n2. **Install Plugins**: Enable recommended community plugins:\n   - \\`obsidian-git\\` - Auto-commit and sync\n   - \\`obsidian-linter\\` - Auto-format frontmatter\n   - \\`obsidian-local-images-plus\\` - Optimize images to WebP\n3. **Write Content**: Create markdown files in \\`src/content/\\`\n4. **Auto-Deploy**: Push to GitHub → Automatic conversion and deployment\n\n### Content Structure\n\n```\nsrc/content/\n├── blog/ # Blog posts\n├── wiki/ # Hierarchical knowledge base\n├── projects/ # Portfolio items\n├── about.md # About page\n├── uses.md # Tools \u0026 setup\n└── now.md # Current activities\n```\n\nSee [Obsidian integration →](12-obsidian-deployment.md) | [Content management →](./docs/04-content-management.md)\n\n## 📦 Available Commands\n\nAll commands run from the project root:\n\n| Command | Action |\n|---------|--------|\n| \\`npm install\\` | Install dependencies |\n| \\`npm run dev\\` | Start dev server at \\`localhost:4321\\` |\n| \\`npm run build\\` | Build production site to \\`./dist/\\` |\n| \\`npm run preview\\` | Preview production build locally |\n| \\`npm run format\\` | Format code with Prettier |\n| \\`npm run astro\\` | Run Astro CLI commands |\n\n## 📚 Documentation\n\nComplete documentation available in the \\`/docs\\` directory:\n\n### Getting Started\n\n- [Features](./docs/01-features.md) - Full feature overview\n- [Architecture](./docs/02-architecture.md) - System design and structure\n- [Installation](./docs/03-installation.md) - Setup and requirements\n\n### Development\n\n- [Content Management](./docs/04-content-management.md) - Writing and organizing content\n- [Styling](./docs/05-styling.md) - Theme customization and CSS\n- [Integrations](./docs/06-integrations.md) - Third-party services (Last.fm, Raindrop, etc.)\n- [Project Structure](./docs/07-project-structure.md) - File organization\n- [Configuration](./docs/08-configuration.md) - Site configuration options\n\n### Optimization \u0026 SEO\n\n- [SEO](./docs/09-seo.md) - Search engine optimization\n- [Search](./docs/10-search.md) - Full-text search implementation\n- [RSS Feed](./docs/11-rss.md) - RSS configuration and usage\n### Deployment\n\n- [Obsidian \u0026 Deployment](12-obsidian-deployment.md) - Obsidian workflow and GitHub Actions\n- [Deployment](13-deployment.md) - Hosting on Cloudflare Pages, Vercel, Netlify\n### Contributing\n\n- [Contributing](14-contributing.md) - How to contribute to this project\n\n## 🔧 Environment Variables\n\nOptional API integrations require environment variables:\n\n```bash\n## Raindrop.io (for bookmarks and reading)\nRAINDROP_ACCESS_TOKEN=your_token\n\n## Last.fm (for music integration)\nPUBLIC_LASTFM_API_KEY=your_key\nLASTFM_SHARED_SECRET=your_secret\n\n## GoatCounter (optional analytics)\nPUBLIC_GOATCOUNTER_CODE=yoursite\n```\n\nCopy `.env.sample` to `.env` and add your credentials.\n\nSee [configuration guide →](./docs/08-configuration.md)\n\n## Performance\n\n![results](performance.png)\n\n## 📄 License\n\nMIT License - feel free to use this template for your own site!\n\n## 🙏 Acknowledgments\n\nBuilt with:\n\n- [Astro](https://astro.build) - Static site framework\n- [Svelte 5](https://svelte.dev) - Interactive components\n- [Tailwind CSS v4](https://tailwindcss.com) - Styling\n- [TanStack Query](https://tanstack.com/query) - Data fetching\n\nInspired by the [IndieWeb](https://indieweb.org/) movement.\n\n## 🤝 Contributing\n\nContributions welcome! See [Contributing Guide](14-contributing.md) for details.\n\n---\n\nMade with ❤️ using Astro, Svelte 5, and Tailwind CSS v4\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fansango%2Fansango.template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fansango%2Fansango.template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fansango%2Fansango.template/lists"}