A beautiful, minimal activity tracker web app built with SvelteKit 5 and MongoDB.
Create a .env file in the root directory:
# MongoDB Connection
MONGODB_URI=mongodb://localhost:27017/activitytracker
# Auth.js Configuration
AUTH_SECRET=your-super-secret-auth-key-change-this
# Google OAuth (required)
AUTH_GOOGLE_ID=your-google-client-id
AUTH_GOOGLE_SECRET=your-google-client-secret
# Apple OAuth (optional)
AUTH_APPLE_ID=your-apple-service-id
AUTH_APPLE_SECRET=your-apple-private-key
AUTH_APPLE_TEAM_ID=your-apple-team-id
AUTH_APPLE_KEY_ID=your-apple-key-id
http://localhost:5173/auth/callback/google.env# Install dependencies
npm install
# Start development server
npm run dev
npm run build
npm run preview
src/
āāā lib/
ā āāā components/
ā ā āāā Calendar.svelte # Main calendar component
ā ā āāā DayModal.svelte # Day detail modal
ā āāā db.ts # MongoDB connection
āāā routes/
ā āāā api/
ā ā āāā activities/ # Activity CRUD endpoints
ā ā āāā entries/ # Entry endpoints
ā āāā activities/ # Activity management page
ā āāā community/ # Public entries feed
ā āāā +layout.svelte # App layout with nav
ā āāā +page.svelte # Main calendar page
āāā app.css # Global styles
āāā app.html # HTML template
āāā hooks.server.ts # Auth configuration
MIT