Access Control
Security
Shared access control built around roles, permissions, and resources, with authentication and authorization capabilities in development.
A shared engineering foundation for identity, files, access control, and real-time communication. Build on reusable capabilities and bring your next application to life.
Java / Spring Boot · React / Next.js
PRODUCTS / THE BUILDING BLOCKS
Choose the capabilities your application needs. Explore available services and see what's in development.
Sparrow Scaffold
A clear approach to build standards: Parent for the baseline, BOM for component versions, and Starter for integration. Give component evolution and application adoption a shared direction.
Read the engineering guideUnified Identity
A shared entry point for sign-in, registration, and password recovery, with options for separate frontends and monolithic applications.
File Storage
Upload and store files through a shared interface, with drag and drop, progress tracking, previews, and storage paths for different use cases.
Access Control
Shared access control built around roles, permissions, and resources, with authentication and authorization capabilities in development.
Sparrow IM
A messaging service for direct chats, group conversations, and notifications, informed by connection and message handling practices.
Sparrow Coder
Turn entity models into CRUD code for Clean Architecture backends and React frontends, reducing repetitive implementation work.
UI Components
React and Next.js component examples — forms, tables, uploads and drag-and-drop — ready to reuse in your projects.
DOCUMENTATION / ENGINEERING NOTES
Explore architecture decisions, integration guides, and debugging notes drawn from the project's engineering work.
Guide content is currently available in Chinese.
14 guidesExplain how Cookie tokens or server sessions remove same-site SSO's dependence on shared iframe storage. Compare shared Domain cookies with API host-only HttpOnly cookies, including authentication changes, credentialed requests, and cross-site limits.
Frontend / ReactUnify public domains on 443 SSL with 80→301 redirects, keep internal domains on 80, and use certbot certonly to issue certificates before rolling out config.
Backend / NginxMount a customer-service widget into non-React sites using createRoot and useEffect, and understand how HTML fragments are generated and injected.
Frontend / ReactBuild one archive locally, switch releases on the server with a single command, plus verification and pitfalls.
Backend / NginxCheck administrator and member permissions, create client passwords, connect mail clients and Java applications, and diagnose 535 authentication errors.
Backend / MailSeparate build baselines, component versions, and application adoption, with complete POM examples.
Backend / JavaUnderstand Servlet MVC and WebFlux stacks and select the matching API documentation dependency.
Backend / JavaResolve configuration conflicts across starters and create separate API groups for File and Passport.
Backend / JavaTrace misplaced breakpoints to source packages and bytecode line tables, from publishing to local debugging.
Backend / JavaFollow a handler case study to find unreleased references, memory leaks, and heartbeat failures.
Backend / JavaExplore reference counting, zero-copy sharing, and deep copies to clarify memory ownership in message forwarding.
Backend / JavaDiagnose missing templates caused by double slashes when a prefix meets a view name.
Backend / JavaWalk through session setup, image loading, and refresh behavior, including cleanup and retry boundaries.
Frontend / ReactConnect locale routing, middleware, and message context, with guidance on grouped translations and troubleshooting.
Frontend / ReactWHY SPARROW / SHARED CAPABILITIES
Turn recurring engineering problems into reusable foundations, from backend components to shared frontend libraries.
Connect application entry points through Passport authentication and shared sign-in state across domains.
Give build standards, version management, and framework integration clear roles through Parent, BOM, and Starter.
Build on practical work with WebSocket heartbeats, reconnection, and Netty message handling.
Combine shared protocols, independent components, and frontend capabilities with room to extend each application.
START BUILDING / YOUR NEXT STEP
Understand the Sparrow approach and find the services and practices that fit your application.