Update project configuration for enhanced compatibility and functionality

Adjust nuxt.config.ts to set the development server host and port, remove experimental content configuration, and add a type assertion for markdown configuration. Update replit.md with project details, recent changes, structure, and configuration.

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 8164b8e9-c586-4079-b330-117351ac2d8d
Replit-Commit-Checkpoint-Type: full_checkpoint
Replit-Commit-Event-Id: 8b879d4e-c3fb-423d-969c-a3c07d568949
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/9c9df2fc-1e25-49ec-be14-03588059631a/8164b8e9-c586-4079-b330-117351ac2d8d/uhFddP8
This commit is contained in:
mahdiarghyani
2025-11-24 20:23:10 +00:00
parent 98f7f95b68
commit cf78fec7a8
4 changed files with 19485 additions and 6 deletions

47
.replit Normal file
View File

@@ -0,0 +1,47 @@
modules = ["vue-node-18", "web", "nodejs-20"]
[agent]
expertMode = true
[nix]
channel = "stable-25_05"
[workflows]
runButton = "Project"
[[workflows.workflow]]
name = "Project"
mode = "parallel"
author = "agent"
[[workflows.workflow.tasks]]
task = "workflow.run"
args = "Nuxt Dev Server"
[[workflows.workflow]]
name = "Nuxt Dev Server"
author = "agent"
[[workflows.workflow.tasks]]
task = "shell.exec"
args = "npm install && npm run dev"
waitForPort = 5000
[workflows.workflow.metadata]
outputType = "webview"
[[ports]]
localPort = 5000
externalPort = 80
[[ports]]
localPort = 24678
externalPort = 3001
[[ports]]
localPort = 41723
externalPort = 3000
[deployment]
deploymentTarget = "static"
build = ["npm", "run", "generate"]
publicDir = ".output/public"

View File

@@ -57,6 +57,11 @@ export default defineNuxtConfig({
}
}
},
devServer: {
host: '0.0.0.0',
port: 5000
},
fonts: {
defaults: {
preload: true,
@@ -136,11 +141,6 @@ export default defineNuxtConfig({
// Nuxt Content configuration
content: {
// Disable experimental features that require native dependencies
experimental: {
clientDB: false,
cacheContents: false
},
markdown: {
mdc: true,
toc: {
@@ -150,7 +150,7 @@ export default defineNuxtConfig({
},
documentDriven: false,
respectPathCase: true
},
} as any,
i18n: {
defaultLocale: 'en',
@@ -178,6 +178,9 @@ export default defineNuxtConfig({
failOnError: false,
ignore: ['/_vercel/image']
},
devProxy: {
host: '0.0.0.0'
}
},

19358
package-lock.json generated Normal file

File diff suppressed because it is too large Load Diff

71
replit.md Normal file
View File

@@ -0,0 +1,71 @@
# Nuxt UI Portfolio - Replit Configuration
## Overview
This is a modern, bilingual portfolio website built with Nuxt 4, featuring English and Persian (RTL) support with dark mode as default. The project has been configured to run in the Replit environment.
## Project Information
- **Framework**: Nuxt 4 (Vue 3 + Vite)
- **UI Library**: Nuxt UI 4
- **Styling**: Tailwind CSS 4
- **Language**: TypeScript
- **i18n**: English & Persian with automatic RTL switching
- **Package Manager**: pnpm (but npm works in Replit)
## Recent Changes (November 24, 2025)
- Upgraded Node.js from 18 to 20 (required by Nuxt 4 and its dependencies)
- Configured Nuxt dev server to run on port 5000 with host 0.0.0.0 for Replit compatibility
- Configured Nitro dev proxy to bind to 0.0.0.0
- Set up workflow for automatic dev server startup
- Configured deployment for static site generation (SSG) with build command and output directory
- Removed obsolete experimental content configuration options
- Fixed LSP errors in nuxt.config.ts
## Project Structure
```
app/ # Source directory (srcDir)
├── app.vue # Root component
├── app.config.ts # Nuxt UI theme tokens
├── components/ # Auto-imported components
├── composables/ # Auto-imported composables
├── data/ # Static content (EN/FA)
├── layouts/ # Layout components
├── pages/ # File-based routing
└── assets/css/ # Tailwind & global styles
server/ # Server-side code
└── api/ # API endpoints
content/ # Nuxt Content markdown files (blog posts)
public/ # Static assets
├── favicon/
├── fonts/ # Local fonts (Roobert, Vazirmatn)
└── img/ # Images
```
## Replit-Specific Configuration
### Dev Server
- **Port**: 5000 (required for Replit webview)
- **Host**: 0.0.0.0 (allows external connections)
- **HMR**: Configured to use clientPort 5000
### Environment Variables
No required environment variables for development. Optional:
- `NUXT_PUBLIC_LOAD_PLAUSIBLE` - Enable/disable Plausible analytics
- `NUXT_PUBLIC_SITE_URL` - Site URL for sitemap and RSS
## Features
- Bilingual content (English/Persian)
- Dark mode by default
- Responsive design
- Blog with markdown content
- Optimized images
- SEO-friendly (sitemap, RSS feeds)
- View transitions API support
## Development Notes
- Dependencies are auto-installed via npm on Replit
- The dev server automatically restarts when files change
- Content is served from the `content/` directory for blog posts
- Translations are in `i18n/locales/` directory