Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kauanrodrigues01/django-s3-crud
Projeto desenvolvido com Django, oferecendo uma galeria de imagens completa. Permite aos usuários buscar, adicionar, editar, deletar e favoritar imagens. Inclui autenticação de usuário e um CRUD completo utilizando o ORM do Django para gerenciar imagens e perfis.
https://github.com/kauanrodrigues01/django-s3-crud
django django-application django-orm-crud django-project
Last synced: 3 months ago
JSON representation
Projeto desenvolvido com Django, oferecendo uma galeria de imagens completa. Permite aos usuários buscar, adicionar, editar, deletar e favoritar imagens. Inclui autenticação de usuário e um CRUD completo utilizando o ORM do Django para gerenciar imagens e perfis.
- Host: GitHub
- URL: https://github.com/kauanrodrigues01/django-s3-crud
- Owner: Kauanrodrigues01
- License: mit
- Created: 2024-08-15T02:09:17.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2024-08-19T03:20:50.000Z (5 months ago)
- Last Synced: 2024-10-11T07:05:25.907Z (3 months ago)
- Topics: django, django-application, django-orm-crud, django-project
- Language: CSS
- Homepage:
- Size: 5.68 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Alura Space 🌌
AluraSpace é uma aplicação Django desenvolvida para gerenciar e compartilhar imagens. É uma galeria de imagens que permite aos usuários fazer upload, editar, buscar, favoritar e curtir imagens. Além disso, os usuários podem gerenciar seus perfis, visualizar suas imagens e interagir com o conteúdo através de likes e favoritos.
## Funcionalidades Implementadas
- **Autenticação de Usuários**:
- Cadastro, login e logout.
- Edição de perfil com atualização de informações e senha.- **Gestão de Imagens**:
- Upload de novas imagens com suporte a arquivos.
- Edição e exclusão de imagens.
- Visualização de imagens em detalhes.
- Favoritar e desfavoritar imagens.
- Curtir e descurtir imagens.- **Busca e Filtros**:
- Busca de imagens por nome, descrição e categoria.
- Filtragem de imagens por categoria e favoritas.- **Perfil do Usuário**:
- Exibição e gerenciamento das imagens do usuário.
- Visualização de imagens favoritas.## Tecnologias Utilizadas
- Django
- HTML5
- CSS3
- JavaScript## Instalação
Siga estas etapas para configurar o projeto localmente:
1. **Clone o repositório**
```bash
git clone https://github.com/usuario/nome-do-repositorio.git
```2. **Navegue até o diretório do projeto**
```bash
cd nome-do-repositorio
```3. **Crie e ative um ambiente virtual**
Para Windows:
```bash
python -m venv venv
.\venv\Scripts\activate
```
Para macOS e Linux:
```bash
python3 -m venv venv
source venv/bin/activate
```4. **Instale as dependências**
```bash
pip install -r requirements.txt
```5. **Configure as variáveis de ambiente**
- **Instale o `python-dotenv`** se ele não tiver sido instalado do arquivo `requirements.txt`, para gerenciar variáveis de ambiente a partir de um arquivo `.env`:
```bash
pip install python-dotenv
```- **Crie um arquivo `.env` na raiz do projeto e adicione as seguintes variáveis** (ajuste os valores conforme necessário):
```dotenv
DEBUG=True
SECRET_KEY=sua_chave_secreta
DATABASE_URL=postgres://usuario:senha@localhost:5432/nome_do_banco
```- **Certifique-se de que o arquivo `.env` está listado no `.gitignore`** para não ser commitado no repositório.
Exemplo de entrada no `.gitignore`:
```gitignore
.env
```- **Para carregar variáveis do `.env` em seu projeto Django**, adicione o seguinte código no início do seu `settings.py`:
```python
from dotenv import load_dotenv
import osload_dotenv()
SECRET_KEY = str(os.getenv('SECRET_KEY'))
DEBUG = str(os.getenv('DEBUG'))
```6. **Gerar uma Nova `SECRET_KEY`**
Para gerar uma nova `SECRET_KEY`, execute o seguinte comando no terminal:
```bash
python -c 'from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())'
```Copie a saída e adicione ao arquivo `.env` como o valor para `SECRET_KEY`.
7. **Execute as migrações do banco de dados**
```bash
python manage.py makemigrations
```
```bash
python manage.py migrate
```8. **Crie um superusuário (opcional, para acessar o painel de administração)**
```bash
python manage.py createsuperuser
```9. **Inicie o servidor de desenvolvimento**
```bash
python manage.py runserver
```O projeto estará disponível em `http://127.0.0.1:8000/`.