https://github.com/oslabs-beta/solid-auth
solid-auth is a flexible authentication library for SolidStart applications, providing both server-side authentication logic and ready-to-use UI components. It combines secure session management and user authentication with customizable, themed login/signup forms to help developers quickly implement authentication in their SolidStart apps.
https://github.com/oslabs-beta/solid-auth
solidjs solidstart
Last synced: 10 months ago
JSON representation
solid-auth is a flexible authentication library for SolidStart applications, providing both server-side authentication logic and ready-to-use UI components. It combines secure session management and user authentication with customizable, themed login/signup forms to help developers quickly implement authentication in their SolidStart apps.
- Host: GitHub
- URL: https://github.com/oslabs-beta/solid-auth
- Owner: oslabs-beta
- License: mit
- Created: 2024-08-24T16:30:48.000Z (over 1 year ago)
- Default Branch: dev
- Last Pushed: 2024-11-16T23:08:01.000Z (over 1 year ago)
- Last Synced: 2025-04-30T19:08:19.296Z (10 months ago)
- Topics: solidjs, solidstart
- Language: CSS
- Homepage:
- Size: 668 KB
- Stars: 7
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# solidauth
A comprehensive authentication solution for SolidStart applications, providing both server-side authentication logic and pre-built UI components.
## Packages
### @solidauth/server
Server-side authentication package with session management, user authentication, and security features.
Key features:
- Secure session handling with Vinxi integration
- Customizable login/register flows
- Password hashing support
- TypeScript-first design
[Server Documentation](./packages/server/README.md)
### @solidauth/ui
Ready-to-use authentication UI components with light and dark themes.
Key features:
- Light/Dark theme variations
- Responsive design
- Google OAuth integration ready
- Customizable styling
[UI Documentation](./packages/ui/README.md)
## Quick Start
```bash
# Install both packages
npm install @solidauth/server @solidauth/ui
# Additional peer dependencies
npm install @solidjs/router solid-js vinxi
```
Basic setup:
```tsx
// Server setup
import { createAuthCallbacks } from '@solidauth/server';
import { useSession } from 'vinxi/http';
const auth = createAuthCallbacks(useSession);
// UI implementation
import { LoginFormLight } from '@solidauth/ui';
export default function AuthPage() {
return ;
}
```
## Development
### Project Structure
```
solidauth/
├── packages/
│ ├── server/ # Server-side authentication logic
│ └── ui/ # Authentication UI components
└── tsconfig.base.json # Shared TypeScript configuration
```
### Local Development Setup
1. Clone the repository
2. Install dependencies:
```bash
npm install
```
3. Build packages:
```bash
cd packages/server && npm run build
cd ../ui && npm run build
```
### Using npm link
To test changes locally with an external app:
1. Link packages:
```bash
cd packages/server && npm link
cd ../ui && npm link
```
2. In your app:
```bash
npm link @solidauth/server @solidauth/ui
```
## Contributing
Contributions welcome! Please feel free to submit a Pull Request.
## License
MIT