Mirror of github.com/Memo-2023/mana-monorepo
Find a file
2025-11-25 18:20:17 +01:00
chat Feat: Landingpages centralized, new app news integrated 2025-11-25 18:20:17 +01:00
docs Feat: docs 2025-11-25 15:57:23 +01:00
maerchenzauber Feat: New project chat, uload refactor (postgress), hosting plans, uload landingpage 2025-11-25 13:01:41 +01:00
manacore feat: integrate uload and picture, unify package naming 2025-11-25 04:00:36 +01:00
manadeck feat(chat): add SvelteKit web app with full feature parity to mobile 2025-11-25 15:54:44 +01:00
memoro feat: integrate uload and picture, unify package naming 2025-11-25 04:00:36 +01:00
news Feat: Landingpages centralized, new app news integrated 2025-11-25 18:20:17 +01:00
nutriphi feat(nutriphi): migrate from Supabase to PostgreSQL + Hetzner S3 2025-11-25 17:52:14 +01:00
packages Feat: Landingpages centralized, new app news integrated 2025-11-25 18:20:17 +01:00
picture fix(picture): migrate to Astro 5.x content collections and fix TypeScript errors 2025-11-25 18:13:57 +01:00
uload Feat: Landingpages centralized, new app news integrated 2025-11-25 18:20:17 +01:00
.editorconfig feat: add monorepo configuration and shared packages structure 2025-11-22 23:41:52 +01:00
.gitignore chore: initial commit - consolidate 4 projects into monorepo 2025-11-22 23:38:24 +01:00
.nvmrc feat: add monorepo configuration and shared packages structure 2025-11-22 23:41:52 +01:00
.prettierignore feat: add monorepo configuration and shared packages structure 2025-11-22 23:41:52 +01:00
.prettierrc feat: add monorepo configuration and shared packages structure 2025-11-22 23:41:52 +01:00
package.json Feat: Landingpages centralized, new app news integrated 2025-11-25 18:20:17 +01:00
pnpm-lock.yaml Feat: Landingpages centralized, new app news integrated 2025-11-25 18:20:17 +01:00
pnpm-workspace.yaml Feat: Landingpages centralized, new app news integrated 2025-11-25 18:20:17 +01:00
README.md feat: add monorepo configuration and shared packages structure 2025-11-22 23:41:52 +01:00
turbo.json feat: add monorepo configuration and shared packages structure 2025-11-22 23:41:52 +01:00

Manacore Monorepo

Monorepo containing all Manacore projects with shared packages and unified tooling.

Projects

Project Description Tech Stack
maerchenzauber AI-powered story generation app NestJS, Expo, SvelteKit, Astro
manacore Multi-app ecosystem platform Expo, SvelteKit, Astro
manadeck Card/deck management app NestJS, Expo, SvelteKit
memoro Voice memo & AI analysis app Expo, SvelteKit, Astro

Getting Started

Prerequisites

  • Node.js 20+
  • pnpm 9.15.0+

Installation

# Install pnpm globally (if not installed)
npm install -g pnpm

# Install all dependencies
pnpm install

Development

# Start all projects in dev mode
pnpm run dev

# Start a specific project
pnpm run maerchenzauber:dev
pnpm run manacore:dev
pnpm run manadeck:dev
pnpm run memoro:dev

# Build all projects
pnpm run build

# Run tests
pnpm run test

# Type check
pnpm run type-check

# Format code
pnpm run format

Shared Packages

Located in packages/:

Package Description
@manacore/shared-types Common TypeScript types
@manacore/shared-supabase Unified Supabase client
@manacore/shared-utils Utility functions (date, string, async)
@manacore/shared-ui React Native UI components

Using Shared Packages

// In any project
import { User, ApiResponse } from '@manacore/shared-types';
import { createSupabaseClient } from '@manacore/shared-supabase';
import { formatDate, truncate, retry } from '@manacore/shared-utils';

Repository Structure

manacore-monorepo/
├── packages/                 # Shared packages
│   ├── shared-types/         # TypeScript types
│   ├── shared-supabase/      # Supabase utilities
│   ├── shared-utils/         # Common utilities
│   └── shared-ui/            # React Native components
├── maerchenzauber/           # Storyteller project
├── manacore/                 # Manacore apps project
├── manadeck/                 # ManaDeck project
├── memoro/                   # Memoro project
├── turbo.json                # Turborepo configuration
├── pnpm-workspace.yaml       # Workspace configuration
└── package.json              # Root package

Tooling

  • Package Manager: pnpm 9.15.0
  • Build System: Turborepo
  • Formatting: Prettier
  • Node Version: 20 (see .nvmrc)

Adding Dependencies

# Add to root (dev tools)
pnpm add -D <package> -w

# Add to specific project
pnpm add <package> --filter maerchenzauber

# Add to shared package
pnpm add <package> --filter @manacore/shared-utils

Contributing

  1. Create a feature branch
  2. Make changes
  3. Run pnpm run format and pnpm run type-check
  4. Commit with conventional commit messages
  5. Create pull request

License

Private - All rights reserved