# ===== LLMs Roadmap ===== Site: https://sakedoko.jp Generated: 2025-08-07T18:00:00.000Z User-agent: * Allow: / Train: no Attribution: required License: https://sakedoko.jp/terms-of-service # ===== Project Overview ===== SakeDoko is a Next.js 16 web application that helps users map their Japanese sake experiences by linking sake purchases and drinking experiences to specific locations. The app supports Japanese/English localization and includes features like sake posts and user-friendly discovery interfaces. # ===== Technology Stack ===== Frontend: Next.js 16, TypeScript, React 19, Tailwind CSS 4 Backend: Hasura GraphQL Engine Authentication: Auth0 Storage: AWS S3 Error Monitoring: Sentry Testing: Vitest, React Testing Library, Playwright API Mocking: Mock Service Worker (MSW) PWA: next-pwa Internationalization: next-intl Maps: Google Maps API, React Google Maps # ===== Core Architecture ===== - App Router with internationalized routing ([locale]) - GraphQL operations organized in frontend/graphql/ (queries, mutations, fragments) - Server Actions in frontend/app/actions/ - Component-based architecture in frontend/components/ - Hasura migrations in hasura/migrations/ - Multi-language support (Japanese/English) via next-intl # ===== Key Directories ===== frontend/app/[locale]/ - Internationalized pages and routes frontend/components/ - Reusable UI components frontend/graphql/ - GraphQL queries, mutations, and fragments frontend/locales/ - Translation files (ja.json, en.json) frontend/hooks/ - Custom React hooks frontend/lib/ - Utility libraries and configurations hasura/migrations/ - Database schema migrations hasura/metadata/ - Hasura metadata configurations # ===== Main Features ===== Section: Core Features Title: Sake Post Mapping URL: /maps Desc: Interactive map showing user sake experiences with purchase/consumption locations. Title: User Profiles URL: /members/[accountName] Desc: Public user profiles showing sake experiences, statistics, and activity maps. Title: Personal Dashboard URL: /mypages Desc: Private user dashboard for managing posts, preferences, and viewing statistics. Section: Content Management Title: Sake Post Creation URL: /posts/new Desc: Create new sake posts from a single form by selecting purchased or drank category. Title: Post Listing URL: /post-list Desc: Browse all user-submitted sake posts with filtering and search capabilities. Section: Discovery & Analytics Title: Brewery Map URL: /mypages/breweries-map Desc: Explore sake breweries across Japan with detailed information and user posts. Title: Place Details URL: /places/[id] Desc: Detailed information about specific locations with related sake posts and events. Title: Sake Awards Library URL: /libraries/japan-sake-awards/2024 Desc: Comprehensive database of Japan Sake Awards winners with analytics and charts. Section: User Management Title: Profile Settings URL: /mypages/profiles Desc: Manage user profile information, preferences, and account settings. Title: Notification Settings URL: /mypages/notification-settings Desc: Configure push notifications for events and app updates. Title: User Preferences URL: /mypages/user-preferences Desc: Customize app behavior, language settings, and display preferences. Section: Legal & Information Title: Terms of Service URL: /terms-of-service Desc: Comprehensive terms of service for SakeDoko users. Title: Privacy Policy URL: /privacy-policy Desc: Detailed privacy policy explaining data collection and usage practices. Title: Commercial Transaction Act URL: /commercial-transaction-act Desc: Legal information regarding commercial transaction laws and business details. Title: Sake Industry Engagement URL: /to-sake-industries Desc: Information for sake industry professionals about partnerships and collaboration. Section: Special Content Title: Noto Earthquake Support URL: /20240101-earthquake Desc: Information about Noto Peninsula earthquake impact on sake breweries and donation support. Title: Service Agreements URL: /agreements Desc: User agreements and consent forms for service usage and data handling. # ===== API Structure ===== GraphQL Endpoint: /api/graphql (proxied to Hasura) Authentication: Auth0 integration with /api/auth/[...auth0] File Uploads: AWS S3 integration for image storage Real-time: GraphQL subscriptions for live updates # ===== Development Resources ===== Main Config: frontend/next.config.js - Next.js configuration with PWA, Sentry, i18n TypeScript: frontend/tsconfig.json - Strict TypeScript configuration Testing: frontend/vitest.config.ts - Vitest test configuration Linting: frontend/.eslintrc.json - ESLint rules for code quality Database: hasura/migrations/ - Versioned database schema changes Docs: frontend/docs/ - Technical documentation and guidelines # ===== Localization ===== All user-facing content supports Japanese (ja) and English (en) locales. Translation files located in frontend/locales/[namespace]/[locale].json URL structure: /[locale]/[page] (e.g., /en/maps, /ja/maps) Default locale: Japanese (ja) Note: This is a production web application focused on sake culture and community mapping in Japan.