.replit e replit.nix. Eles afetam como o seu Replit App se comporta, desde a execução do código até as ferramentas de desenvolvimento e as linguagens.
Esses arquivos de configuração ficam ocultos por padrão. Exiba-os no seu Replit App selecionando “Show hidden files” no menu da árvore de arquivos.

Arquivo replit.nix
O Replit usa o Nix para gerenciar pacotes e ambientes. O arquivo replit.nix é usado para:
Especificar dependências do sistema: defina exatamente quais pacotes de software o seu Replit App exige, gerenciados através do Nix, um gerenciador de pacotes.
Criar ambientes reprodutíveis: garanta que seu ambiente de desenvolvimento seja consistente e reprodutível, ideal para projetos colaborativos e testes em vários sistemas.
Você pode gerenciar pacotes Nix visualmente através da ferramenta Dependencies. Saiba mais no guia de Dependências do Sistema.
Para configurar pacotes com o arquivo replit.nix, você pode listar pacotes Nix no array deps, prefixados com pkgs.. Quaisquer alterações serão sincronizadas depois que seu shell for recarregado.
Arquivo .replit
O arquivo .replit controla o comportamento do seu Replit App. Ele usa o formato de configuração toml configuration format. Aqui estão alguns dos principais aspectos que podem ser configurados:
Comando de execução (Run): especifique o comando que é executado quando o botão Run é selecionado. Cada template tem um comando de execução padrão para permitir a execução imediata do código. Para apps mais personalizados e complexos, use Workflows.
Language Server Protocol (LSP): fornece recursos como autocompletar, navegação de código, destaque de sintaxe e linting e erros em tempo real.
Variáveis de ambiente: defina e gerencie variáveis de ambiente essenciais para que suas aplicações sejam executadas corretamente.
Dependências e pacotes: gerencie instalações e configurações de pacotes diretamente através do arquivo .replit, garantindo que seu Replit App tenha todas as ferramentas necessárias prontas na inicialização. Você pode gerenciar dependências visualmente através da ferramenta Dependencies. Saiba mais no guia de Módulos do Sistema.
Para aplicações Python, o arquivo .replit padrão é assim:
.replit, explicando o que cada uma faz e seu impacto no ambiente do Replit App.
| Chave de configuração | Valor/Exemplo | Descrição |
|---|---|---|
entrypoint | main.py | Especifica o arquivo principal a ser executado e exibido por padrão quando o editor é aberto. Você pode renomear o arquivo com base na sua aplicação. |
modules | ["python-3.10:v18-20230807-322e88b"] | Define versões específicas de linguagens de programação ou outras dependências importantes suportadas pelo Replit. |
[nix] | Especifica as configurações para usar o Nix, um gerenciador de pacotes, para gerenciar dependências do sistema. Consulte o documento de Gerenciamento de Dependências para mais informações. | |
channel | stable-23_05 | Indica o canal Nix a ser usado, o que afeta as versões das dependências do sistema disponíveis. |
packages | ["cowsay", "htop"] | Especifica alguns pacotes Nix a serem instalados. Para um controle mais granular, você também pode usar o replit.nix. |
[unitTest] | Configura ajustes relacionados a testes unitários dentro do Replit App. | |
language | python3 | Especifica a linguagem usada para testes unitários, indicando que o Python 3 é usado para escrever os testes. |
[gitHubImport] | Configurações que afetam como projetos são importados do GitHub, especificamente quais arquivos precisam estar incluídos. | |
requiredFiles | [".replit", "replit.nix"] | Lista os arquivos que precisam estar presentes ao importar o projeto para garantir que ele funcione corretamente. |
[deployment] | Contém configurações para publicar a aplicação do Replit App em um ambiente ao vivo. | |
run | ["python3", "main.py"] | Comando executado para iniciar a aplicação durante a publicação. |
deploymentTarget | cloudrun | Especifica a plataforma de destino de publicação para hospedar a aplicação. |
.replit, use as próximas seções para entender como configurar ajustes básicos e avançados para o seu Replit App.
Configurando ajustes básicos
Entrypoint
Este é o arquivo principal do seu projeto. Se você não definir uma propriedaderun, o entrypoint é o arquivo que é executado pelo runtime.
Comando Run
A propriedade run no arquivo .replit é um recurso essencial que determina o comando inicial ou a série de comandos executados quando o botão Run é selecionado em um ambiente Replit. O comando Run pode ser especificado como uma string representando o comando a ser executado, ou como um array de strings representando o comando e os argumentos individuais desse comando.
Algumas formas comuns de configurar o comando Run:
-
Comando único:
Este exemplo mostra como passar um único comando para ser executado diretamente no Replit App. Com isso no seu arquivo
.replit, pressionar o botãoRunexibirá uma saudação no painelConsole: Exemplo:run = "echo 'Hello, Replit!'" -
Argumentos explícitos:
Em algumas situações, pode ser vantajoso ser mais explícito, evitando a necessidade de interpretar aspas ou regras de interpolação do shell. Você pode reescrever o exemplo acima para separar os argumentos.
Observe que você não precisa mais de
'e", já que está passando explicitamente a saudação como o primeiro e único argumento paraecho: Exemplo:run = ["echo", "Hello, Replit!"] -
Vários comandos:
Este exemplo mostra como executar vários processos, como um frontend e um backend, simultaneamente. Isso pode ser útil se você estiver desenvolvendo um backend em python e um frontend em typescript, onde cada servidor é vinculado a uma porta diferente:
Exemplo:
run = "python -m app & npm run start & wait"
Gerenciamento de processos
Embora vários comandos possam ser executados simultaneamente com&, você pode querer uma melhor experiência para distinguir os logs entre os serviços. Você pode adicionar dependências do sistema como o process-compose para orquestrar melhor vários processos.
Fase de Build
Para algumas linguagens ou runtimes, existe uma fase de compilação separada antes que o código possa ser executado (run). Isso abrange tanto linguagens compiladas como TypeScript, Golang ou Java, quanto oferece um parâmetro que você pode usar para redefinir seu ambiente, dados ou configuração antes que o próximo run seja invocado.
- Compilando:
Em um repositório TypeScript, você pode precisar executar
tscantes de executar seu código. Exemplo:
Incluindo variáveis de ambiente
Para fornecer variáveis de ambiente ao seu serviço antes da execução, você pode expandir a propriedaderun em uma tabela.
Esta é uma mudança mais elaborada e provavelmente requer mover a localização da sua propriedade run = "..." dentro do seu arquivo .replit.
O diff a seguir mostra como fornecer o comando por meio de args em [run], além da variável NAME fornecida em [run.env]:
Interatividade
Programas interativos também podem ser iniciados através do botãoRun, oferecendo uma forma de distinguir seu ambiente de desenvolvimento do terminal onde o seu programa é executado.
Considere o seguinte script de contagem:
Exemplo
Opções de configuração avançada
Explore as opções de configuração detalhadas disponíveis para o seu Replit App. Você pode personalizar seu ambiente de desenvolvimento, gerenciar comandos de execução, integrar serviços de linguagem e lidar com dependências.Notas sobre o Áudio do Sistema
Ao definiraudio = true no seu arquivo .replit, pode ser necessário executar kill 1 em um shell para forçar a nova configuração a entrar em vigor.
Ao executar uma aplicação gráfica, você verá um par de fones de ouvido com uma caixa de seleção no canto inferior direito do painel Output.
Devido a restrições do navegador, isso precisará ser ativado a cada atualização da página.
Configuração do packager
Exemplo de configuração .replit para configuração do packager
Configuração de publicação (deployment)
Exemplo de configuração .replit para configuração de publicação
A configuração do interpreter foi descontinuada e não está mais disponível no Replit. Em vez disso, recomenda-se usar os comandos
Run para configurar como scripts e aplicações são executados dentro do ambiente do seu Replit App.Configuração de portas
Exemplo de arquivo de configuração .replit para gerenciar portas
Acessando os metadados do ambiente do Replit App
Node.js
Para acessar todas as variáveis de ambiente:console.log(process.env);
Para acessar uma única variável (REPL_SLUG):
console.log(process.env.REPL_SLUG);