AMA (Ask Me Anything) é uma aplicação web desenvolvida em Java que permite aos usuários criar salas temáticas onde podem postar perguntas e receber curtidas de outros usuários. Atualmente, não há suporte para respostas às perguntas.
Pré-requisitos
- Java 17 ou superior instalado.
- Maven instalado.
- PostgreSQL instalado e em execução.
- Docker (opcional, para contêinerização).
- Crie um banco de dados PostgreSQL:
create database ama_db
- Para proteger credenciais sensíveis, utilize um arquivo
.env
na raiz do projeto:
DB_HOST=localhost
DB_PORT=5432
DB_NAME=ama_db
DB_USER=seu_usuario
DB_PASSWORD=sua_senha
server:
port: 8080
spring:
datasource:
url: jdbc:postgresql://${DB_HOST}:${DB_PORT}/${DB_NAME}
username: ${DB_USER}
password: ${DB_PASSWORD}
driver-class-name: org.postgresql.Driver
jpa:
hibernate:
ddl-auto: update
show-sql: true
properties:
hibernate:
format_sql: true
profiles:
active: dev
O Spring Boot carrega automaticamente variáveis de ambiente, mas para usar arquivos .env, recomenda-se bibliotecas como dotenv-java ou configurar essas variáveis no ambiente do sistema operacional.
Nunca envie seu .env para o GitHub. Adicione-o ao .gitignore.
- Compile o projeto:
./mvnw clean install
- Execute a aplicação:
./mvnw spring-boot:run
- Acesse a aplicação através do
http://localhost:8080
.
- Criação de Salas: Usuários podem criar salas sobre diversos assuntos.
- Postagem de Perguntas: Dentro das salas, é possível postar perguntas.
- Curtidas em Perguntas: Outros usuários podem curtir as perguntas postadas.
Contribuições são bem-vindas! Para colaborar:
- Fork este repositório.
- Crie uma branch para sua feature ou correção de bug:
git checkout -b minha-feature
- Commit suas alterações:
git commit -m 'Adiciona minha feature'
- Push para a branch:
git push origin minha-feature
- Abra um Pull Request detalhando suas alterações.
Este projeto está licenciado sob a licença MIT. Consulte o arquivo LICENSE para mais informações.