No description
- Vue 60.4%
- TypeScript 28.4%
- JavaScript 7.7%
- SCSS 3%
- Sass 0.2%
- Other 0.2%
| api | ||
| assets | ||
| components | ||
| composables | ||
| content | ||
| docs | ||
| entities | ||
| layouts | ||
| middleware | ||
| nuxt2 | ||
| pages | ||
| plugins | ||
| scripts | ||
| server | ||
| stores | ||
| tests | ||
| utils | ||
| .dockerignore | ||
| .gitignore | ||
| ApiToken.ts | ||
| app.vue | ||
| Card.ts | ||
| Comment.ts | ||
| docker-compose.local-prod.yml | ||
| docker-compose.mongo.yml | ||
| docker-compose.production.yml | ||
| docker-compose.yml | ||
| Dockerfile | ||
| Dockerfile.production | ||
| Folder.ts | ||
| main.ts | ||
| Note.ts | ||
| nuxt.config.ts | ||
| Organization.ts | ||
| package-lock.json | ||
| package.json | ||
| playwright.config.ts | ||
| Profile.ts | ||
| Project.ts | ||
| README.md | ||
| Report.ts | ||
| TASKS.md | ||
| TASKS_2026-03-06.md | ||
| time.ts | ||
| TimeEntry.ts | ||
| tsconfig.json | ||
| wiki.md | ||
| wiki.ts | ||
| yarn.lock | ||
DevFlow - Nuxt 3
Modern rewrite of DevFlow using Nuxt 3, Vue 3 Composition API, and PrimeVue.
Tech Stack
- Framework: Nuxt 3 with SSR
- UI Library: PrimeVue 4 with Aura theme
- State Management: Pinia
- Database: MongoDB with Mongoose
- Styling: SCSS with CSS variables
Quick Start
# Install dependencies
yarn install
# Start development server
yarn dev
# Seed a repeatable local test scenario
yarn seed:test-scenario
# Build for production
yarn build
yarn preview
Project Structure
nuxt3/
├── assets/css/ # Global styles and SCSS variables
├── components/ # Vue components (auto-imported)
├── composables/ # Vue composables (auto-imported)
├── layouts/ # Page layouts
├── pages/ # File-based routing
├── plugins/ # Nuxt plugins
├── server/ # Nitro server (API routes, plugins)
├── stores/ # Pinia stores
└── nuxt.config.ts # Nuxt configuration
Important Configuration
Component Auto-Import
Components are auto-imported without folder prefixes:
// nuxt.config.ts
components: {
dirs: [{ path: '~/components', pathPrefix: false }]
}
Use <OrganizationInfo> not <OrganizationsOrganizationInfo>.
Environment Variables
Create .env file:
MONGODB_URI=mongodb://localhost:27017/devflow
SECRET=your-secret-key
BASE_URL=http://localhost:3000
Test Scenario Seed
To create a repeatable local scenario with users, organization, projects, cards, time entries and wiki content:
yarn seed:test-scenario
The script uses MONGODB_URI (or NUXT_MONGODB_URI) and recreates only the documents that belong to the seeded scenario, using fixed IDs so it can be run multiple times safely.
Documentation
- Migration Progress - Detailed migration status and architectural decisions
Development Notes
- Uses Vue 3 Composition API with
<script setup> - PrimeVue components replace Bootstrap-Vue
- Pinia stores replace Vuex
- TypeScript enabled with strict mode