kraken_webui
├── docs # Documentation files (Markdown)
├── public # Static files (icons, images)
├── src # Project source code
│ ├── actions # Actions to communicate with the server
│ ├── app # NextJS main application
│ ├── components # React components and modules
│ │ ├── mongodb # MongoDB CRUD operations
│ │ └── UI # Custom UI-components
│ ├── hooks # Custom hooks
│ ├── models # MongoDB database models
│ ├── styles # CSS modules for components
│ ├── types.ts # TypeScript global types
| └── global.css # Global project styles
└── tests # Application tests
🏗️ Project Structure
This document provides an overview of the Kraken Web UI project structure.
Understanding the directory layout will help you navigate the codebase more efficiently.
📌 Overview
Kraken Web UI is a Next.js-based web interface for managing sensor configurations.
It follows a modular architecture, separating UI components, and database operations.
📂 Folder Breakdown
🔹 docs/
- Documentation
Contains all Markdown documentation files, structured for MkDocs.
🔹 public/
- Static Files
Stores static assets like icons, images, and fonts that are publicly accessible.
🔹 src/
- Source Code
The core of the application, containing UI components, database logic etc.
actions/
→ Handles communication with the backend server.app/
→ The main Next.js application logic.components/
→ Reusable React components:mongodb/
→ MongoDB CRUD operations.UI/
→ Custom UI components.hooks/
→ Custom React hooks for state and effects.models/
→ MongoDB schemas and database models.styles/
→ CSS modules for component styling.types.ts
→ TypeScript type definitions.global.css
→ Global project styles.
🔹 tests/
- Application Tests
Frontend_Tests/
→ Unit tests for React UI components.mongo/
→ MongoDB-related tests and database setup scripts.Schema_tests/
→ Validation tests for MongoDB schemas.
🔎 Where to Find Things?
- Need to create a new UI component? → Go to
src/components/UI/
. - Looking for database models? → Check
src/models/
. - Want to style a component? → Use
src/styles/
.