A modern, TypeScript-powered Christian events platform for managing various spiritual activities and engagements.
This platform is part of the @ying-web
ecosystem, built with React 18, TypeScript and Material-UI. It provides an engaging interface for various spiritual activities.
- ⚛️ React 18 - Latest version of the popular UI library
- 📘 TypeScript - For type-safe code
- 🎨 Material-UI - Beautiful UI components
- 🌊 TailwindCSS - Utility-first CSS framework
- 🔄 Vite - Next-generation frontend tooling
- 📡 Axios - Promise-based HTTP client
- 🎯 ESLint & Prettier - Code quality tools
- 💅 Less - CSS preprocessor
- Node.js >= 18.16.0
- Pnpm: 9.14.2
- Install dependencies:
pnpm install
- Configure environment:
# Copy environment file
cp .env.example .env.development
# Edit environment variables
VITE_REQUEST_BASE_URL=https://api.example.com
- Start development server:
# Start with hot reload
pnpm dev
# Run linting
pnpm lint
# Run linting for all files
pnpm lint:all
# Run style linting
pnpm stylelint
# Run style linting with auto-fix
pnpm stylelint:fix
This project is optimized for Vercel deployment.
-
Connect your GitHub repository to Vercel
-
Configure the following settings:
- Framework Preset:
Vite
- Build Command:
pnpm build
- Output Directory:
dist
- Install Command:
pnpm install
- Framework Preset:
-
Add environment variables in Vercel project settings:
VITE_REQUEST_BASE_URL=https://api.production.com
- Deploy! Vercel will automatically handle the build and deployment process.
Current deployment: https://events.krissarea.com
- Configure production environment:
# Copy environment file
cp .env.example .env.production
# Edit production environment variables
VITE_REQUEST_BASE_URL=https://api.production.com
- Build and preview:
# Build for production
pnpm build
# Preview production build
pnpm preview
apps/events/
├── src/ # Source code
│ ├── components/ # Reusable components
│ ├── contexts/ # React contexts
│ ├── hooks/ # Custom React hooks
│ ├── layouts/ # Layout components
│ ├── pages/ # Page components
│ ├── services/ # API services
│ ├── styles/ # Global styles
│ └── types/ # TypeScript types
├── public/ # Static assets
└── dist/ # Build output
/
- Home page/promise
- Bible promise page/promise-new
- New promise page/lucky-number/:activityKey
- Lucky number list/lucky-number/:activityKey/activity
- Lucky number activity
Required variables in .env.development
and .env.production
:
VITE_REQUEST_BASE_URL
- Backend API URL
MIT License - see the LICENSE file for details.
Made with ❤️ by the @ying-web