Skip to content

florivdg/toolio

Repository files navigation

Toolio

Toolio is a lightweight web application built with Astro and Bun. It uses Vue for interactive components, Drizzle ORM for database access, and Tailwind CSS for styling. The goal is to provide a small collection of handy tools with a simple yet modern stack.

Setup

  1. Install dependencies:
bun install
  1. Copy .env.example to .env and adjust the values.
  2. Run the database migrations:
bun run db:migrate
  1. Start the development server:
bun dev

The site will be available at http://localhost:4321 by default.

Authentication

Toolio includes basic authentication powered by better-auth with support for:

  • Email/password authentication
  • Passkey authentication (WebAuthn)

You can create users with:

bun run scripts/add-user.ts <email> <password> [name]

For passkey authentication in production, make sure to set the correct values for:

  • PASSKEY_RP_ID: Your domain (e.g., toolio.example.com)
  • PASSKEY_ORIGIN: Your full origin URL (e.g., https://toolio.example.com)

Deployment

A Dockerfile and deployment guide are provided for container-based deployments. See DEPLOYMENT.md for an example Docker Compose setup and additional commands.

Auto-migrations: When deployed with NODE_ENV=production, database migrations run automatically on startup. This ensures the database schema is always up-to-date. You can disable this behavior by setting DISABLE_AUTO_MIGRATIONS=true in your environment variables.

About

Helpers 'n' stuff

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors 5