Um sistema web construído com o propósito de gerenciar dados relacionados a cidades, países e continentes, integrando informações reais de APIs externas em uma interface pastel e acolhedora.
O GeoNexus é uma aplicação acadêmica desenvolvida para gerenciar dados geográficos através de CRUDs completos. Com ele, é possível relacionar:
➡ Continentes → Países → Cidades
A interface foi projetada com tons pastéis, predominantemente rosa, trazendo suavidade, clareza e acessibilidade. Além disso, o sistema integra duas APIs externas para enriquecer os dados com bandeiras, informações detalhadas e notícias em tempo real.
✔ Criar ✔ Listar ✔ Atualizar ✔ Excluir
✔ Associados a um continente ✔ CRUD completo ✔ Listar países por continente ✔ Exibir dados extras via REST Countries ✔ Exibir notícias via NewsData
✔ Associadas a um país ✔ CRUD completo ✔ Listar por país ✔ Listar por continente
| Tecnologia | Descrição |
|---|---|
| TypeScript | Linguagem principal |
| Node.js | Backend |
| Prisma ORM 5.0 | Modelagem + queries |
| MySQL | Banco relacional |
| Axios | Consumo de APIs externas |
| Bootstrap | Interface responsiva e intuitiva |
| Express | Rotas e controle |
| React/Vite | Construção da interface web |
| HTML/CSS/JS | Estrutura da UI |
Fornece dados como:
- Bandeiras
- Regiões
- Idiomas
- Moeda
- Capital
- Geografia
Exibe notícias recentes sobre o país selecionado. Ideal para enriquecer o contexto do usuário 🌸
Aqui está uma visualização real da estrutura do GeoNexus:
geonexus/
│
├── backend-geonexus/
│ ├── prisma/
│ │ ├── schema.prisma
│ │ └── migrations/
│ ├── src/
│ │ ├── controllers/
│ │ ├── services/
│ │ ├── routes/
│ │ ├── middlewares/
│ │ └── server.ts
│ └── package.json
│
├── frontend-geonexus/
│ ├── src/
│ │ ├── assets/
│ │ ├── pages/
│ │ ├── components/
│ │ ├── styles/
│ │ └── main.ts
│ └── index.html
│
└── README.md
Essa divisão organiza bem o backend e frontend, mantendo escalabilidade e clareza.
git clone https://github.com/raphaelamonteiro/geonexus.git
cd geonexusnpm installDATABASE_URL="mysql://usuario:senha@localhost:3306/geonexus"
REST_COUNTRIES_URL="https://restcountries.com/v3.1"
NEWSDATA_API_KEY="SUA_CHAVE_AQUI"npx prisma migrate devnpm run devDesenvolvido por: Raphaela Monteiro
📘 Disciplina: Programação Web
Professor: André Olímpio
Curso: Análise e Desenvolvimento de Sistemas