haopengzhan 162a38aca3
Node.js CI / build (18.x) (push) Failing after 6m31s
Node.js CI / build (20.x) (push) Failing after 3h14m55s
Initial commit
feat: scaffolded basic auth login and dashboard(empty)
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00
2025-09-20 00:40:19 -07:00

Noteplace Frontend - Design & Implementation Plan

This document outlines the design, architecture, and implementation plan for the Noteplace Progressive Web Application (PWA) frontend.

Getting Started

  1. Install Dependencies

    npm install
    
  2. Configure Environment Create a .env file in the root of the project and add the following line:

    VITE_API_BASE_URL=http://localhost:3001
    
  3. Run the Development Server

    npm run dev
    

    The application will be available at http://localhost:5173.

Environment Variables

  • VITE_API_BASE_URL: The base URL for the Noteplace backend API.

1. Overview

Noteplace is a PWA primarily targeting iOS/iPhone, with support for Desktop and Android web. It allows authenticated users to rate places against specific attributes (e.g., "Service," "Cleanliness," or even a specific menu item).

If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:

export default defineConfig([
  globalIgnores(['dist']),
  {
    files: ['**/*.{ts,tsx}'],
    extends: [
      // Other configs...

      // Remove tseslint.configs.recommended and replace with this
      tseslint.configs.recommendedTypeChecked,
      // Alternatively, use this for stricter rules
      tseslint.configs.strictTypeChecked,
      // Optionally, add this for stylistic rules
      tseslint.configs.stylisticTypeChecked,

      // Other configs...
    ],
    languageOptions: {
      parserOptions: {
        project: ['./tsconfig.node.json', './tsconfig.app.json'],
        tsconfigRootDir: import.meta.dirname,
      },
      // other options...
    },
  },
])

You can also install eslint-plugin-react-x and eslint-plugin-react-dom for React-specific lint rules:

// eslint.config.js
import reactX from 'eslint-plugin-react-x'
import reactDom from 'eslint-plugin-react-dom'

export default defineConfig([
  globalIgnores(['dist']),
  {
    files: ['**/*.{ts,tsx}'],
    extends: [
      // Other configs...
      // Enable lint rules for React
      reactX.configs['recommended-typescript'],
      // Enable lint rules for React DOM
      reactDom.configs.recommended,
    ],
    languageOptions: {
      parserOptions: {
        project: ['./tsconfig.node.json', './tsconfig.app.json'],
        tsconfigRootDir: import.meta.dirname,
      },
      // other options...
    },
  },
])
S
Description
No description provided
Readme 93 KiB
Languages
TypeScript 85%
JavaScript 10.1%
HTML 4.2%
CSS 0.7%