{"id":31186036,"url":"https://github.com/vishwajeetsharma/wicket-backend","last_synced_at":"2026-07-02T10:31:58.012Z","repository":{"id":315181515,"uuid":"1058431129","full_name":"vishwajeetsharma/wicket-backend","owner":"vishwajeetsharma","description":"WICKET is a self-hosted authentication system, currently in early development, designed to provide modern and modular login methods for web applications.","archived":false,"fork":false,"pushed_at":"2025-09-17T05:05:23.000Z","size":14,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-17T07:07:41.985Z","etag":null,"topics":["authentication","fastify","oauth2","passkeys","totp","valkey","wicket"],"latest_commit_sha":null,"homepage":"https://wicket.thevishwa.in","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/vishwajeetsharma.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,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-17T04:50:57.000Z","updated_at":"2025-09-17T04:53:48.000Z","dependencies_parsed_at":"2025-09-17T07:07:47.356Z","dependency_job_id":"3aff819e-fc6d-4377-93e9-5098d65e97aa","html_url":"https://github.com/vishwajeetsharma/wicket-backend","commit_stats":null,"previous_names":["vishwajeetsharma/wicket-backend"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/vishwajeetsharma/wicket-backend","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwajeetsharma%2Fwicket-backend","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwajeetsharma%2Fwicket-backend/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwajeetsharma%2Fwicket-backend/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwajeetsharma%2Fwicket-backend/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vishwajeetsharma","download_url":"https://codeload.github.com/vishwajeetsharma/wicket-backend/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vishwajeetsharma%2Fwicket-backend/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35043933,"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-07-02T02:00:06.368Z","response_time":173,"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":["authentication","fastify","oauth2","passkeys","totp","valkey","wicket"],"created_at":"2025-09-19T19:22:19.889Z","updated_at":"2026-07-02T10:31:57.988Z","avatar_url":"https://github.com/vishwajeetsharma.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WICKET Backend\n\n**An open-source, self-hosted authentication system (Backend API)**\n\n**Note:** WICKET is currently in development. Everything described here is part of the planned design and may change as the project evolves.\n\n---\n\n## What is WICKET?\n\nWICKET is a free, open-source, self-hosted authentication system designed to provide an alternative to closed-source, paid providers such as Clerk or Auth0. It allows developers and businesses to retain full control over authentication without vendor lock-in, hidden costs, or reliance on third-party services.\n\n\u003e ⚠️ **Important:** This repository contains only the **backend service** of WICKET. The frontend is hosted separately at [https://github.com/vishwajeetsharma/wicket-frontend](https://github.com/vishwajeetsharma/wicket-frontend).\n\n---\n\n## Vision\n\n- Make authentication easy, secure, and scalable for everyone—from individual developers to large enterprises.\n- Support a wide range of authentication methods while remaining fully self-hosted.\n- Provide a plug-and-play solution that can be integrated into projects with minimal setup.\n\n---\n\n## Planned Authentication Methods\n\n- Username and password\n- Email OTP and SMS OTP\n- TOTP (Google Authenticator, Authy, etc.)\n- Passkeys (passwordless login)\n- Social logins (Google, GitHub, Microsoft)\n- Two-Factor Authentication (2FA)\n- Single Sign-On (SSO) and SAML 2.0\n- Hardware device authentication and WebAuthn\n\n---\n\n## WICKET Backend (Fastify API)\n\nThis backend service is built with [Fastify](https://fastify.dev/) and [TypeScript](https://www.typescriptlang.org/) to power WICKET’s authentication system. It handles core logic, database interactions, and API endpoints for the frontend or any compatible client.\n\n### Project Status\n\n🚧 **Early Development Stage** 🚧\n\n- Very early in development; features are **planned but not yet implemented**.\n- Containerization and deployment workflows are not yet available.\n- Steps to run a **beta server** will be added once the architecture stabilizes.\n\n### Features (Planned)\n\n- Modular, domain-driven structure (e.g., authentication, user management, sessions)\n- PostgreSQL with Prisma ORM for persistence\n- Valkey (Redis-compatible) for caching and session handling\n- Strict validation using Zod\n- JWT-based stateless authentication with secure HTTP-only cookies\n- Support for TOTP, OTP, Passkeys, OAuth providers, and more\n\n### Architecture\n\n- **Fastify**: Web framework for speed and modularity\n- **Domain separation**: Different features (auth, sessions, profiles) are maintained independently for scalability\n- **TypeScript-first**: Ensures type safety and maintainability\n- **PostgreSQL + Prisma**: Reliable and flexible database layer\n- **Valkey**: Caching and distributed session handling\n\nThis modular structure allows developers to extend, replace, or integrate features without major rewrites.\n\n### Development Notes\n\n- Focus is on **planning and scaffolding** at this stage\n- No production-ready instructions yet\n- Contributions will be easier once the core architecture stabilizes\n\n---\n\n## Documentation\n\nThe documentation will eventually cover:\n\n- Authentication methods\n- Project design\n- API design\n- Setup and configuration\n- Deployment and scaling\n\n---\n\n## Inspiration and Competition\n\nWICKET is inspired by modern authentication providers like Clerk, Auth0, and Firebase Auth. Unlike these closed-source services, WICKET is **fully transparent, secure, and free to self-host**.\n\n---\n\n## Contributing\n\nWICKET is an open-source, community-driven project. Contributions, feedback, and suggestions will be welcome once the project reaches a more stable phase.\n\n---\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvishwajeetsharma%2Fwicket-backend","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvishwajeetsharma%2Fwicket-backend","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvishwajeetsharma%2Fwicket-backend/lists"}