Skip to content

Latest commit

 

History

History
48 lines (47 loc) · 3.02 KB

Project Structure.md

File metadata and controls

48 lines (47 loc) · 3.02 KB

Project Structure

.
├── .vscode/                               # Workspace specific configuration files
├── backend/                               # All Backend logic
│   └── index.ts        
├── docs/                                  
│   ├── assets/                            # Contains diagrams for documentation
│   └── reviews/                           # Review of an older version of this project
├── public/
│   ├── assets/                            # Contains dynamic game assets (used at runtime) (Boards)
├── src/
│   ├── assets/                            # Contains static game assets (Pawn, Dice)
│   ├── components/
│   │   ├── InGame/                        # Components that are used exclusively for playing
│   │   │   ├── Dice/                      
│   │   │   ├── LogBar/
│   │   │   ├── Sidebar/                   # Contains sidebar and its sections
│   │   │   └── Tabletop/                  # Components of playing area 
│   │   │       └── GameComponents/        
│   │   │           ├── PlayingBoard.vue   
│   │   │           ├── PlayingCard.vue    # Initial Playing Card
│   │   │           └── PlayingObject.vue  # Playing Pawn
│   │   └── UI/                            
│   │       ├── TabletopButton.vue         # Basic floating buttons
│   │       ├── TabletopModal.vue          # Start dialog (user picks name and color)
│   │       ├── TabletopNotification.vue   # Notifications that appear in top-right corner
│   │       └── TabletopSidebar.vue        # Basic sidebar
│   ├── modules/                           # Contains functionality that is used more than once
│   │   ├── useShareDB.ts                  # Interface for ShareDB document
│   │   ├── useSocketIO.ts                 # Interface for Socket.io communication
│   │   ├── useTabletopDraggable.ts        # Logic for draggable game object
│   │   └── useTabletopSocket.ts           # Communication Logic with Socket.io
│   ├── routes/                            # Contains all paths of the application
│   ├── stores/                            # Reactive Pinia stores
│   │   ├── session.ts                     # Local user-specific store
│   │   └── tabletop.ts                    # Global store
│   ├── types/                             # TS types
│   ├── util/                              # Small helper functions
│   ├── views/                             
│   │   ├── InGame.vue                     # Application view during game
│   ├── App.vue
│   └── main.ts                            # Equivalent of main.js in TS
├── package.json                           # Contains all dependencies for app
├── README.md
├── TODO.todo                              # Current project todos