managarten/apps/memoro/apps/web/README.md
Till JS 09d5576f2a feat(memoro): integrate memoro web app into monorepo (phases 1-6)
Structure: apps/memoro/apps/web, package name @memoro/web
Web tooling: adapter-node, Tailwind v4 + @manacore/shared-tailwind, Vite v6, shared PWA/vite-config
Auth: createManaAuthStore() from @manacore/shared-auth-stores, removed Google/Apple OAuth
Local-first: memoroStore with 7 collections + guest seed data (memos, tags, spaces, etc.)
Service layer: memoService + tagService migrated from Supabase direct to local-store collections
Workspace: dev:memoro:* scripts in root package.json, memoro added to CLAUDE.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-31 17:19:20 +02:00

107 lines
2.5 KiB
Markdown

# Memoro Web - SvelteKit Companion App
Web companion application for Memoro, built with SvelteKit. This is a hybrid architecture where the web app shares the same Supabase backend with the React Native mobile apps.
## Architecture
- **Frontend**: SvelteKit 2.x + TypeScript
- **Styling**: TailwindCSS 3.x
- **Backend**: Supabase (shared with mobile apps)
- **State Management**: Svelte stores
- **Internationalization**: svelte-i18n
## Features
### Core Features
- Authentication (Email/Password + OAuth)
- Audio recording (Web Audio API)
- Memo management (CRUD operations)
- Real-time updates (Supabase Realtime)
- Spaces & collaboration
- Multi-language support (32 languages)
- Dark mode + 4 theme variants
- Responsive design
### Web-Specific Features
- Progressive Web App (PWA) support
- Server-Side Rendering (SSR)
- SEO optimization
- Fast page loads
## Getting Started
### Prerequisites
- Node.js 18+
- npm or pnpm
- Supabase project (use the same one as mobile apps)
### Installation
1. Clone the repository
2. Install dependencies:
```bash
npm install
```
3. Copy `.env.example` to `.env` and add your Supabase credentials:
```bash
cp .env.example .env
```
4. Start the development server:
```bash
npm run dev
```
5. Open [http://localhost:5173](http://localhost:5173)
### Build for Production
```bash
npm run build
npm run preview
```
## Project Structure
```
memoro-web/
├── src/
│ ├── lib/
│ │ ├── components/ # Reusable Svelte components
│ │ ├── stores/ # Svelte stores for state management
│ │ ├── services/ # API services (Supabase, etc.)
│ │ └── utils/ # Utility functions
│ ├── routes/
│ │ ├── (public)/ # Public routes (login, register)
│ │ ├── (protected)/ # Protected routes (dashboard, memos)
│ │ ├── +layout.svelte # Root layout
│ │ └── +page.svelte # Home page
│ ├── app.css # Global styles (TailwindCSS)
│ └── app.html # HTML shell
├── static/ # Static assets
└── package.json
```
## Deployment
### Vercel (Recommended)
1. Push to GitHub
2. Connect to Vercel
3. Add environment variables
4. Deploy
### Netlify
1. Push to GitHub
2. Connect to Netlify
3. Build command: `npm run build`
4. Publish directory: `build`
5. Add environment variables
6. Deploy
## License
Proprietary - All rights reserved