Rename Forte to LunarFront, generalize for any small business

Rebrand from Forte (music-store-specific) to LunarFront (any small business):
- Package namespace @forte/* → @lunarfront/*
- Database forte/forte_test → lunarfront/lunarfront_test
- Docker containers, volumes, connection strings
- UI branding, localStorage keys, test emails
- All documentation and planning docs

Generalize music-specific terminology:
- instrumentDescription → itemDescription
- instrumentCount → itemCount
- instrumentType → itemCategory (on service templates)
- New migration 0027_generalize_terminology for column renames
- Seed data updated with generic examples
- RBAC descriptions updated
This commit is contained in:
Ryan Moon
2026-03-30 08:51:54 -05:00
parent 535446696c
commit 9400828f62
84 changed files with 390 additions and 820 deletions

View File

@@ -80,7 +80,7 @@ export function webdavBasicAuth(app: FastifyInstance) {
const authHeader = request.headers.authorization
if (!authHeader || !authHeader.startsWith('Basic ')) {
reply.header('WWW-Authenticate', 'Basic realm="Forte WebDAV"')
reply.header('WWW-Authenticate', 'Basic realm="LunarFront WebDAV"')
return reply.status(401).send('Authentication required')
}
@@ -88,7 +88,7 @@ export function webdavBasicAuth(app: FastifyInstance) {
const colonIndex = decoded.indexOf(':')
if (colonIndex === -1) {
recordFailure(ip)
reply.header('WWW-Authenticate', 'Basic realm="Forte WebDAV"')
reply.header('WWW-Authenticate', 'Basic realm="LunarFront WebDAV"')
return reply.status(401).send('Invalid credentials')
}
@@ -103,14 +103,14 @@ export function webdavBasicAuth(app: FastifyInstance) {
if (!user || !user.isActive) {
recordFailure(ip)
reply.header('WWW-Authenticate', 'Basic realm="Forte WebDAV"')
reply.header('WWW-Authenticate', 'Basic realm="LunarFront WebDAV"')
return reply.status(401).send('Invalid credentials')
}
const valid = await bcrypt.compare(password, user.passwordHash)
if (!valid) {
recordFailure(ip)
reply.header('WWW-Authenticate', 'Basic realm="Forte WebDAV"')
reply.header('WWW-Authenticate', 'Basic realm="LunarFront WebDAV"')
return reply.status(401).send('Invalid credentials')
}