chore: rebrand all user-facing strings from RBox to MyWebdav across docs, emails, and config

Replace every occurrence of "RBox" with "MyWebdav" in README.md, invoice templates, welcome emails, share notifications, FastAPI metadata, default database filename, domain name, S3 bucket name, TOTP issuer, and WebDAV realm header to reflect the commercial rebranding of the application.
This commit is contained in:
retoor 2025-11-13 11:05:05 +00:00
parent df964a7fb1
commit d91246967c
7 changed files with 24 additions and 24 deletions

View File

@ -1,6 +1,6 @@
# RBox
# MyWebdav
RBox is a self-hosted cloud storage web application designed for secure, scalable file management and sharing. Built with modern web technologies, it provides a comprehensive solution for individuals and organizations seeking full control over their data storage.
MyWebdav is a commercial cloud storage web application designed for secure, scalable file management and sharing. Built with modern web technologies, it provides a comprehensive solution for individuals and organizations seeking full control over their data storage.
## Features
@ -74,24 +74,24 @@ RBox is a self-hosted cloud storage web application designed for secure, scalabl
2. Set up the database:
```bash
createdb rbox
createdb mywebdav
```
3. Configure environment variables in `.env`
4. Run database migrations:
```bash
poetry run rbox --migrate
poetry run mywebdav --migrate
```
5. Start the application:
```bash
poetry run rbox --host 0.0.0.0 --port 8000
poetry run mywebdav --host 0.0.0.0 --port 8000
```
## Configuration
RBox uses environment variables for configuration. Key settings include:
MyWebdav uses environment variables for configuration. Key settings include:
- `DATABASE_URL`: PostgreSQL connection string
- `REDIS_URL`: Redis connection URL
@ -114,7 +114,7 @@ Access the web application through your browser. The interface provides:
- Administrative controls (for admins)
### API Usage
RBox provides a comprehensive REST API. Example requests:
MyWebdav provides a comprehensive REST API. Example requests:
```bash
# Upload a file
@ -134,13 +134,13 @@ curl -X POST "https://your-domain.com/api/shares/" \
```
### WebDAV Access
Mount RBox as a network drive using WebDAV:
Mount MyWebdav as a network drive using WebDAV:
```
https://your-domain.com/webdav/
```
### SFTP Access
Connect via SFTP using your RBox credentials on port 22.
Connect via SFTP using your MyWebdav credentials on port 22.
## Deployment

View File

@ -107,7 +107,7 @@ class InvoiceGenerator:
stripe_invoice = await StripeClient.create_invoice(
customer_id=subscription.stripe_customer_id,
description=f"RBox Usage Invoice for {period_start.strftime('%B %Y')}",
description=f"MyWebdav Usage Invoice for {period_start.strftime('%B %Y')}",
line_items=stripe_line_items,
metadata={"rbox_invoice_id": str(invoice.id)}
)
@ -153,7 +153,7 @@ Due Date: {invoice.due_date}
You can view and pay your invoice at: {invoice.user.email} # Placeholder, should be a link to invoice page
Best regards,
The RBox Team
The MyWebdav Team
"""
html = f"""
<h2>Invoice {invoice.invoice_number}</h2>
@ -168,7 +168,7 @@ The RBox Team
</table>
<p>Due Date: {invoice.due_date}</p>
<p>You can view and pay your invoice at: <a href="#">Invoice Link</a></p>
<p>Best regards,<br>The RBox Team</p>
<p>Best regards,<br>The MyWebdav Team</p>
"""
queue_email(
to_email=invoice.user.email,

View File

@ -46,8 +46,8 @@ async def lifespan(app: FastAPI):
print("Shutting down...")
app = FastAPI(
title="RBox Cloud Storage",
description="A self-hosted cloud storage web application",
title="MyWebdav Cloud Storage",
description="A commercial cloud storage web application",
version="0.1.0",
lifespan=lifespan
)

View File

@ -65,9 +65,9 @@ async def register_user(user_in: UserCreate):
from ..mail import queue_email
queue_email(
to_email=user.email,
subject="Welcome to RBox!",
body=f"Hi {user.username},\n\nWelcome to RBox! Your account has been created successfully.\n\nBest regards,\nThe RBox Team",
html=f"<h1>Welcome to RBox!</h1><p>Hi {user.username},</p><p>Welcome to RBox! Your account has been created successfully.</p><p>Best regards,<br>The RBox Team</p>"
subject="Welcome to MyWebdav!",
body=f"Hi {user.username},\n\nWelcome to MyWebdav! Your account has been created successfully.\n\nBest regards,\nThe MyWebdav Team",
html=f"<h1>Welcome to MyWebdav!</h1><p>Hi {user.username},</p><p>Welcome to MyWebdav! Your account has been created successfully.</p><p>Best regards,<br>The MyWebdav Team</p>"
)
access_token_expires = timedelta(minutes=30) # Use settings

View File

@ -73,7 +73,7 @@ Access link: {share_url}{password_text}
This link is valid{expiry_text}.
--
RBox File Sharing Service"""
MyWebdav File Sharing Service"""
email_html = f"""
<html>
@ -85,7 +85,7 @@ RBox File Sharing Service"""
{f'<p><strong>Password:</strong> {share_in.password}</p>' if share_in.password else ''}
<p><small>This link is valid{expiry_text}.</small></p>
<hr>
<p><small>RBox File Sharing Service</small></p>
<p><small>MyWebdav File Sharing Service</small></p>
</body>
</html>
"""

View File

@ -5,26 +5,26 @@ from pydantic_settings import BaseSettings, SettingsConfigDict
class Settings(BaseSettings):
model_config = SettingsConfigDict(env_file='.env', extra='ignore')
DATABASE_URL: str = "sqlite:///app/rbox.db"
DATABASE_URL: str = "sqlite:///app/mywebdav.db"
REDIS_URL: str = "redis://redis:6379/0"
SECRET_KEY: str = "super_secret_key"
ALGORITHM: str = "HS256"
ACCESS_TOKEN_EXPIRE_MINUTES: int = 30
REFRESH_TOKEN_EXPIRE_DAYS: int = 7
DOMAIN_NAME: str = "localhost"
DOMAIN_NAME: str = "MyWebdav.eu"
CERTBOT_EMAIL: str = "admin@example.com"
STORAGE_PATH: str = "storage"
S3_ACCESS_KEY_ID: str | None = None
S3_SECRET_ACCESS_KEY: str | None = None
S3_ENDPOINT_URL: str | None = None
S3_BUCKET_NAME: str = "rbox-storage"
S3_BUCKET_NAME: str = "mywebdav-storage"
SMTP_HOST: str = "mail.example.com"
SMTP_PORT: int = 587
SMTP_USERNAME: str = "noreply@example.com"
SMTP_PASSWORD: str = "your-smtp-password"
SMTP_USE_TLS: bool = True
SMTP_SENDER_EMAIL: str = "noreply@example.com"
TOTP_ISSUER: str = "RBox"
TOTP_ISSUER: str = "MyWebdav"
STRIPE_SECRET_KEY: str = ""
STRIPE_PUBLISHABLE_KEY: str = ""
STRIPE_WEBHOOK_SECRET: str = ""

View File

@ -75,7 +75,7 @@ async def webdav_auth(request: Request, authorization: Optional[str] = Header(No
raise HTTPException(
status_code=status.HTTP_401_UNAUTHORIZED,
headers={'WWW-Authenticate': 'Basic realm="RBox WebDAV"'}
headers={'WWW-Authenticate': 'Basic realm="MyWebdav WebDAV"'}
)
async def resolve_path(path_str: str, user: User):