Adicionado README
This commit is contained in:
parent
3d4e5323a6
commit
49eac62a1b
|
|
@ -0,0 +1,143 @@
|
|||
# Rifalto - Sistema de Rifas
|
||||
|
||||
Um sistema web para gerenciamento de rifas e vendas de números, desenvolvido em Flask.
|
||||
|
||||
## Descrição
|
||||
|
||||
O Rifalto é uma aplicação web que permite:
|
||||
- Criação e gerenciamento de rifas
|
||||
- Venda de números por vendedores autenticados
|
||||
- Reserva de números pelos compradores
|
||||
- Controle de estoque de números disponíveis
|
||||
- Backup automático do banco de dados
|
||||
|
||||
## Instalação
|
||||
|
||||
### Usando Docker (Recomendado)
|
||||
|
||||
1. Clone o repositório
|
||||
2. Configure o arquivo de configuração (veja seção de Configuração)
|
||||
3. Execute com Docker:
|
||||
|
||||
```bash
|
||||
docker build -t rifalto .
|
||||
docker run -p 5000:5000 -v $(pwd)/instance:/rifalto/instance rifalto
|
||||
```
|
||||
|
||||
### Instalação Local
|
||||
|
||||
1. Clone o repositório
|
||||
2. Instale as dependências:
|
||||
|
||||
```bash
|
||||
pip install -r requirements.txt
|
||||
```
|
||||
|
||||
3. Configure as variáveis de ambiente:
|
||||
|
||||
```bash
|
||||
export FLASK_APP=rifaserver.app
|
||||
```
|
||||
|
||||
4. Execute a aplicação:
|
||||
|
||||
```bash
|
||||
./start.sh
|
||||
```
|
||||
|
||||
## Configuração
|
||||
|
||||
### Arquivo de Configuração
|
||||
|
||||
Crie um arquivo `instance/config.json` na raiz do projeto com as seguintes configurações:
|
||||
|
||||
```json
|
||||
{
|
||||
"SECRET_KEY": "sua-chave-secreta-aqui",
|
||||
"REDIRECT_ROOT_URL": "https://seu-site.com"
|
||||
}
|
||||
```
|
||||
|
||||
**Parâmetros de configuração:**
|
||||
|
||||
- `SECRET_KEY`: Chave secreta para sessões Flask (será gerada automaticamente se não fornecida)
|
||||
- `REDIRECT_ROOT_URL`: URL para redirecionamento da página raiz (opcional)
|
||||
|
||||
### Variáveis de Ambiente
|
||||
|
||||
Você também pode configurar usando variáveis de ambiente com prefixo `FLASK_`:
|
||||
|
||||
```bash
|
||||
export FLASK_SECRET_KEY="sua-chave-secreta"
|
||||
export FLASK_REDIRECT_ROOT_URL="https://seu-site.com"
|
||||
```
|
||||
|
||||
## Comandos CLI
|
||||
|
||||
### Criar Vendedor
|
||||
|
||||
```bash
|
||||
flask create-seller <username> <password>
|
||||
```
|
||||
|
||||
### Criar Rifa
|
||||
|
||||
```bash
|
||||
flask cria-rifa "<descrição da rifa>"
|
||||
```
|
||||
|
||||
### Alterar Senha
|
||||
|
||||
```bash
|
||||
flask muda-senha <usuario> <nova_senha>
|
||||
```
|
||||
|
||||
## Estrutura do Banco de Dados
|
||||
|
||||
O sistema usa SQLite por padrão e cria automaticamente as seguintes tabelas:
|
||||
- `sellers`: Vendedores do sistema
|
||||
- `purchases`: Compras/vendas realizadas
|
||||
- `raffles`: Rifas disponíveis
|
||||
- `tickets`: Números reservados
|
||||
|
||||
## Backup
|
||||
|
||||
O sistema realiza backup automático do banco de dados a cada hora, salvando os arquivos na pasta `instance/backup/`.
|
||||
|
||||
## Desenvolvimento
|
||||
|
||||
### Executar Testes
|
||||
|
||||
```bash
|
||||
pytest test/
|
||||
```
|
||||
|
||||
### Migrações do Banco
|
||||
|
||||
```bash
|
||||
flask db upgrade
|
||||
```
|
||||
|
||||
## Estrutura de Arquivos
|
||||
|
||||
```
|
||||
rifalto/
|
||||
├── rifaserver/ # Código principal da aplicação
|
||||
│ ├── app.py # Aplicação Flask principal
|
||||
│ ├── models.py # Modelos do banco de dados
|
||||
│ ├── templates/ # Templates HTML
|
||||
│ └── static/ # Arquivos estáticos (CSS, JS)
|
||||
├── migrations/ # Migrações do banco de dados
|
||||
├── test/ # Testes automatizados
|
||||
├── instance/ # Arquivos de configuração e dados
|
||||
│ ├── config.json # Configuração da aplicação
|
||||
│ ├── raffle.db # Banco de dados SQLite
|
||||
│ └── backup/ # Backups automáticos
|
||||
├── requirements.txt # Dependências Python
|
||||
├── Containerfile # Configuração Docker
|
||||
└── start.sh # Script de inicialização
|
||||
```
|
||||
|
||||
## Licença
|
||||
|
||||
[Adicione informações de licença aqui]
|
||||
Loading…
Reference in New Issue