refactor(app): rewrite application with Nuxt 4, Pinia, and TailwindCSS
This commit replaces the original vanilla JavaScript implementation with a modern frontend stack. The entire application has been rewritten to improve maintainability, developer experience, and leverage modern web technologies. Key changes include: - Replaced plain HTML, CSS, and JS with a Nuxt 4 project structure. - Migrated state management from a global state object to a Pinia store for better organization and reactivity. - Rebuilt the UI with Vue 3 components and styled with TailwindCSS. - Changed the primary persistence mechanism from manual file I/O to automatic LocalStorage saving, while retaining import/export functionality. - All core features, including drag-and-drop, task management, and the import/merge diffing logic, have been ported to the new architecture.
This commit is contained in:
25
nuxt.config.ts
Normal file
25
nuxt.config.ts
Normal file
@@ -0,0 +1,25 @@
|
||||
// Nuxt 4 configuration
|
||||
export default defineNuxtConfig({
|
||||
modules: ['@pinia/nuxt', '@nuxtjs/tailwindcss'],
|
||||
css: ['~/assets/css/tailwind.css'],
|
||||
typescript: {
|
||||
strict: true
|
||||
},
|
||||
app: {
|
||||
head: {
|
||||
title: 'Kanban'
|
||||
}
|
||||
},
|
||||
tailwindcss: {
|
||||
viewer: false
|
||||
},
|
||||
runtimeConfig: {
|
||||
public: {
|
||||
appTitle: 'Kanban',
|
||||
localStorageKey: 'open-kanban-board',
|
||||
defaultFilename: 'kanban.json',
|
||||
autoLoadFile: '' // e.g. '/sample-board.json'
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user