A minimalist, high-performance personal dashboard designed to manage habits, notes, and goals with a premium aesthetic. Built with Svelte 5 and a modern tech stack.
- Habit Tracker: A ClickUp-inspired minimalist habit tracker with drag-and-drop reordering, monthly views, and progress tracking.
- Notes Module: Clean, full-width WYSIWYG editor powered by Tiptap. Features autosave, compact list views, and refined typography.
- Google OAuth: Secure authentication via Google for seamless login and multi-device access.
- Mobile First: Fully responsive design that looks stunning on desktops and mobile devices alike.
- Activity Logging (WIP): Integrated architecture for tracking time and daily logs.
- Frontend: Svelte 5 (Rune-based reactivity)
- Styling: Tailwind CSS v4
- Backend/API: SvelteKit (Adapter Node)
- Database: MongoDB
- ORM: Prisma v6
- Authentication: Auth.js (formerly NextAuth)
- Deployment: Docker & GitHub Actions (CI/CD)
- Node.js (v20+)
- pnpm
- MongoDB instance (local or Atlas)
-
Clone the repository:
git clone git@github.com:gustawdaniel/os.git cd os -
Install dependencies:
pnpm install
-
Set up Environment Variables: Create a
.envfile in the root directory:DATABASE_URL="mongodb://..." AUTH_SECRET="your-random-secret" GOOGLE_CLIENT_ID="your-google-client-id" GOOGLE_CLIENT_SECRET="your-google-client-secret"
-
Sync Database:
pnpm exec prisma db push pnpm exec prisma generate
-
Run the dev server:
pnpm dev
The project is fully dockerized and includes a CI/CD pipeline for GitHub Actions.
To run the production build locally:
docker compose up -dThe app will be available at http://localhost:3667.
On every push to main, the GitHub Action:
- Builds a production Docker image.
- Pushes the image to DigitalOcean Container Registry.
- Deploys to your VPS via SSH and restarts the containers.
Private - All rights reserved.