Initial Commit
This commit is contained in:
147
PROJECT-NAMING.md
Normal file
147
PROJECT-NAMING.md
Normal file
@@ -0,0 +1,147 @@
|
||||
# MemoHanzi - Project Naming Conventions
|
||||
|
||||
## Application Name
|
||||
**MemoHanzi** (记汉字)
|
||||
- **Meaning:** "Remember Hanzi" or "Memorize Hanzi"
|
||||
- **Chinese:** 记汉字
|
||||
- **Pronunciation:** Jì Hànzì
|
||||
|
||||
## Usage Guidelines
|
||||
|
||||
### Display Names (User-Facing)
|
||||
- **Full name:** MemoHanzi
|
||||
- **Tagline:** "Remember Hanzi, effortlessly"
|
||||
- **Description:** Spaced repetition for Chinese characters
|
||||
|
||||
### Technical Names (Code/Infrastructure)
|
||||
|
||||
**Project Directory:**
|
||||
```
|
||||
memohanzi/
|
||||
```
|
||||
|
||||
**Database:**
|
||||
- Database name: `memohanzi_db`
|
||||
- Database user: `memohanzi_user`
|
||||
|
||||
**Connection String:**
|
||||
```
|
||||
postgresql://memohanzi_user:password@localhost:5432/memohanzi_db
|
||||
```
|
||||
|
||||
**Docker Container Names:**
|
||||
- nginx: `memohanzi-nginx`
|
||||
- app: `memohanzi-app`
|
||||
- postgres: `memohanzi-postgres`
|
||||
|
||||
**NPM Package Name (if publishing):**
|
||||
```json
|
||||
{
|
||||
"name": "memohanzi",
|
||||
"description": "Self-hosted spaced repetition app for learning Chinese characters"
|
||||
}
|
||||
```
|
||||
|
||||
**Domain Names:**
|
||||
- Primary: memohanzi.com
|
||||
- Alternative: memohanzi.io / memohanzi.app
|
||||
|
||||
**Email Domains (Development):**
|
||||
- Admin: admin@memohanzi.local
|
||||
- Test user: user@memohanzi.local
|
||||
|
||||
### Code/Variable Naming
|
||||
|
||||
**Constants:**
|
||||
```typescript
|
||||
const APP_NAME = "MemoHanzi"
|
||||
const APP_NAME_CN = "记汉字"
|
||||
const APP_TAGLINE = "Remember Hanzi, effortlessly"
|
||||
```
|
||||
|
||||
**Environment Variables:**
|
||||
```bash
|
||||
NEXTAUTH_URL="https://memohanzi.com"
|
||||
DATABASE_URL="postgresql://memohanzi_user:password@localhost:5432/memohanzi_db"
|
||||
```
|
||||
|
||||
**File Names:**
|
||||
- Use lowercase with hyphens: `memohanzi-config.ts`
|
||||
- Or camelCase for TypeScript: `memohanziConfig.ts`
|
||||
|
||||
## Branding (Future Reference)
|
||||
|
||||
### Logo Concepts
|
||||
- Focus on the concept of memory/remembering
|
||||
- Incorporate Chinese character elements
|
||||
- Clean, modern design
|
||||
|
||||
### Color Palette Suggestions
|
||||
- **Primary:** Red (#E63946) - Traditional Chinese color, attention/memory
|
||||
- **Secondary:** Blue (#457B9D) - Trust, learning, calmness
|
||||
- **Accent:** Gold (#FFD60A) - Achievement, success
|
||||
- **Background:** White/Light gray - Clarity, simplicity
|
||||
|
||||
### Typography
|
||||
- **Hanzi Display:** Noto Sans CJK SC (Google Fonts)
|
||||
- **English UI:** Inter or System fonts
|
||||
- **Headings:** Bold, clean sans-serif
|
||||
|
||||
## Consistency Rules
|
||||
|
||||
1. **Always capitalize "MemoHanzi"** in user-facing content
|
||||
2. **Always use lowercase "memohanzi"** in code/technical contexts
|
||||
3. **Use "Hanzi" not "hanzi"** when referring to characters in documentation
|
||||
4. **Include Chinese characters (记汉字)** in about/landing pages
|
||||
5. **Never use "Hanzi Learning App"** as the name (old placeholder)
|
||||
|
||||
## Examples
|
||||
|
||||
### ✅ Correct Usage
|
||||
|
||||
**User-facing:**
|
||||
- "Welcome to MemoHanzi!"
|
||||
- "MemoHanzi helps you remember Hanzi effortlessly"
|
||||
- "Start learning with MemoHanzi (记汉字)"
|
||||
|
||||
**Technical:**
|
||||
```typescript
|
||||
// File: src/lib/memohanziConfig.ts
|
||||
export const config = {
|
||||
appName: "MemoHanzi",
|
||||
dbName: "memohanzi_db"
|
||||
}
|
||||
```
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
services:
|
||||
app:
|
||||
container_name: memohanzi-app
|
||||
```
|
||||
|
||||
### ❌ Incorrect Usage
|
||||
|
||||
**Don't:**
|
||||
- "Welcome to memohanzi!" (lowercase in UI)
|
||||
- "MemoHanzi_DB" (mixed case in technical)
|
||||
- "Hanzi Learning App" (old name)
|
||||
- "Memo-Hanzi" or "Memo Hanzi" (hyphenated or separated)
|
||||
|
||||
## README/Documentation Template
|
||||
|
||||
```markdown
|
||||
# MemoHanzi (记汉字)
|
||||
|
||||
**Remember Hanzi, effortlessly**
|
||||
|
||||
MemoHanzi is a self-hosted web application for learning Chinese characters (Hanzi)
|
||||
using spaced repetition (SM-2 algorithm).
|
||||
|
||||
## Features
|
||||
...
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
**This file should be referenced whenever naming anything in the project.**
|
||||
Reference in New Issue
Block a user