Skip to content

in.orbit is a weekly goal-tracking system that lets you set, manage, and report completed goals throughout the week.

Notifications You must be signed in to change notification settings

joschonarth/in.orbit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

23 Commits
 
 
 
 
 
 
 
 

Repository files navigation

in.orbit preview in.orbit

in.orbit é um sistema de controle de metas semanal. Com ele, você pode adicionar metas a serem cumpridas ao longo da semana, definir quantos dias deseja alcançar a meta e selecionar as metas que já foram cumpridas. Ao final da semana, o sistema gera um relatório detalhado com todas as metas concluídas, incluindo os respectivos dias e horários em que foram realizadas.

in-orbit

Para mais conteúdos de mídia do projeto acesse aqui.

⚙️ Funcionalidades

  • 📝 Adicionar Metas: Crie metas semanais com detalhes sobre os dias em que deseja cumpri-las.
  • 📅 Definir Dias: Escolha em quantos e quais dias da semana você deseja cumprir cada meta.
  • Marcar Metas Cumpridas: Selecione as metas que já foram realizadas ao longo da semana.
  • 📊 Relatório Semanal: Veja um relatório detalhado de todas as metas cumpridas, com dias e horários de conclusão.

🛠️ Tecnologias Utilizadas

Backend

  • 🟢 Node.js: Plataforma JavaScript utilizada para construir o servidor.
  • 🟦 TypeScript: Superconjunto do JavaScript que adiciona tipagem estática opcional.
  • Fastify: Framework web para Node.js, focado em alta performance e baixo overhead.
  • 🐳 Docker Compose: Ferramenta para configurar e executar múltiplos containers Docker.
  • 🛡️ Zod: Biblioteca para validação de esquemas de dados e validações runtime.
  • 🗄️ Drizzle ORM: ORM leve e focado em performance.
  • 🐘 Postgres: Banco de dados relacional utilizado para armazenamento de dados.
  • 🆔 @paralleldrive/cuid2: Biblioteca para geração de IDs únicos de forma segura.
  • 📆 Day.js: Biblioteca para manipulação e formatação de datas.
  • 🔐 Fastify-type-provider-zod: Provedor de tipos para integração entre Fastify e Zod, garantindo validação de tipos no Fastify.
  • 🌱 Biome: Ferramenta de linting e formatação para garantir código limpo.

Frontend

  • ⚛️ React: Biblioteca JavaScript para construção de interfaces de usuário.
  • Vite: Ferramenta de build rápida para desenvolvimento frontend.
  • 🟦 TypeScript: Superconjunto de JavaScript com tipagem estática.
  • 🎨 TailwindCSS: Framework CSS utilitário para estilização.
  • 📡 React Query: Biblioteca para gerenciamento de estados e requisições assíncronas.
  • 📝 React Hook Form: Biblioteca para lidar com formulários no React.
  • 🖱️ @radix-ui: Biblioteca de componentes acessíveis e de alto desempenho para interfaces de usuário.
  • 🖼️ Lucid React: Biblioteca de componentes React.
  • 🌱 Biome: Ferramenta de linting e formatação para garantir código limpo.

🚀 Como Executar o Projeto

🖧 Backend (server)

  1. Clone o repositório:
git clone https://github.com/joschonarth/in.orbit
  1. Entre na pasta do backend do projeto:
cd server
  1. Instale as dependências:
npm install
  1. Execute o Docker Compose
docker compose up -d
  1. Inicie o servidor de desenvolvimento:
npm run dev
  1. O servidor estará rodando em http://localhost:3333.

🖥️ Frontend (web)

  1. Navegue até a pasta web:
cd ../web
  1. Instale as dependências:
npm install
  1. Inicie o servidor de desenvolvimento:
npm run dev
  1. A aplicação estará rodando em http://localhost:5173.

🗂️ Estrutura do Projeto

  • Backend

📁 server/
├── 📁 src/
│   ├── 📁 db/
│   ├── 📁 functions/
│   ├── 📁 http/
│   │   └── 📁 routes/
│   ├── 📄 config.ts
│   └── 📄 server.ts
├── 📄 docker-compose.yml
├── 📄 drizzle.config.ts
└── 📄 package.json
  • Frontend

📁 web/
├── 📁 src/
│   ├── 📁 components/
│   ├── 📁 http/
│   ├── 📄 app.tsx
│   └── 📄 main.tsx
├── 📄 vite.config.ts
├── 📄 package.json
└── 📄 tailwind.config.json

📞 Contato

About

in.orbit is a weekly goal-tracking system that lets you set, manage, and report completed goals throughout the week.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages