mirror of
https://github.com/mmahdium/portfolio.git
synced 2026-02-07 00:07:08 +01:00
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:
47
.replit
Normal file
47
.replit
Normal 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"
|
||||
@@ -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
19358
package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
71
replit.md
Normal file
71
replit.md
Normal 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
|
||||
Reference in New Issue
Block a user