# Estrutura Recomendada

### ✅ Organização de Arquivos (Somente Recomendação)

```
minha-resource/
├── meta.xml
├── config.lua (cache="false")
├── server/
│   ├── main.lua (lockcode="true" - ÚNICO ARQUIVO)
│   ├── database.lua (arquivo normal)
│   ├── commands.lua (arquivo normal)
│   └── events.lua (arquivo normal)
├── client/
│   ├── ui.lua (arquivo normal)
│   ├── events.lua (arquivo normal)
│   ├── ui.html
│   ├── style.css
│   └── script.js
├── shared/
│   └── utils.lua (arquivo normal)
└── assets/
    ├── images/
    └── sounds/
```

### 🛡️ Boas Práticas de Segurança

#### Arquivo Principal vs Auxiliares

```lua
-- ✅ server.lua (compilado - coração da resource)
-- Lógica principal, sistema de proteção, funcionalidades críticas

-- ✅ server/database.lua (normal - funcionalidades específicas)
-- Funções de banco de dados, queries, etc.

-- ✅ server/commands.lua (normal - comandos do jogo)
-- Comandos de chat, interfaces com jogadores
```

#### Separação de Responsabilidades

```lua
-- server.lua (PRINCIPAL - COMPILADO)
local MainSystem = {}

function MainSystem:init()
    -- Inicialização principal
    -- Sistema de proteção
    -- Configurações críticas
end

-- server/features.lua (AUXILIAR - NORMAL)
local Features = {}

function Features:setupCommands()
    -- Comandos específicos
    -- Funcionalidades secundárias
end
```

### 🔒 Considerações Finais

#### O que Compilar vs O que Não Compilar

| Deve ser Compilado       | Não Precisa Compilar   |
| ------------------------ | ---------------------- |
| **server.lua principal** | Outros arquivos server |
| ❌ Arquivo de config      | Arquivos client        |
| ❌ Arquivos HTML/CSS/JS   | Arquivos shared        |
| ❌ Arquivos de assets     | Arquivos de interface  |

#### Backup e Versionamento

```lua
-- ✅ Sempre manter código original
projeto/
├── source/          -- Código original (NUNCA DELETAR)
├── compiled/        -- Versão compilada para distribuição
└── releases/        -- Versões organizadas por data
    ├── v1.0.0/
    ├── v1.0.1/
    └── v1.1.0/
```

**Lembre-se**: Apenas o arquivo server principal é completamente compilado e transformado em arquitetura proprietária. O sistema de proteção avançada, autenticação, heartbeat e todas as verificações de segurança são integradas automaticamente apenas neste arquivo, mantendo o resto da resource em formato normal para facilitar manutenção e debugging! 🔒
