Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
3a44fe1
chore: initial commit
Aldacelio Jun 6, 2025
47cc984
chore: configure and install shadcn components used on the processor
Aldacelio Jun 6, 2025
5f0c031
chore: add images to public folder
Aldacelio Jun 6, 2025
a62674b
feat: add shadcn form component
Aldacelio Jun 6, 2025
cf77614
style: update global color variables
Aldacelio Jun 6, 2025
b62ba3f
feat: adding summary card and logo components
Aldacelio Jun 6, 2025
869155f
feat: creating the checkout form component
Aldacelio Jun 6, 2025
9d51738
feat: using components created to assemble the checkout page
Aldacelio Jun 6, 2025
1ab3a80
feat: adding button and redirect route to checkout page
Aldacelio Jun 6, 2025
d833613
feat: adding logic to enable/disable the continue button according to…
Aldacelio Jun 6, 2025
1ba5d35
feat: integrate dynamic credit price API consumption in SummaryCard
Aldacelio Jun 6, 2025
159b753
refactor: centralize credit price logic into custom hook
Aldacelio Jun 6, 2025
cef26ef
feat: adding dynamic filling of the installment
Aldacelio Jun 6, 2025
5341659
chore: add loading images
Aldacelio Jun 6, 2025
a477538
feat: create application loading screen
Aldacelio Jun 6, 2025
be2543e
feat: adding success and error page
Aldacelio Jun 6, 2025
bec23e0
feat: adding service to record a payment
Aldacelio Jun 6, 2025
8efa635
feat: updating checkout form to make payment or click process
Aldacelio Jun 6, 2025
1e59b3d
feat: implementing payment screen successfully done
Aldacelio Jun 6, 2025
a3b2a3d
feat: updating checkout form to make payment or click process
Aldacelio Jun 6, 2025
7faf60c
feat: implementing payment screen successfully done
Aldacelio Jun 6, 2025
410844d
Merge branch 'develop/aldacelio' of https://github.com/Aldacelio/fron…
Aldacelio Jun 6, 2025
57b1b29
feat: implementation of payment failure screen
Aldacelio Jun 6, 2025
52f72ed
feat: implementing mobile version and adjustments
Aldacelio Jun 6, 2025
94b3361
fix: removing unwanted transparency effect
Aldacelio Jun 6, 2025
304842e
feat: removing unwanted transparency effect
Aldacelio Jun 6, 2025
a8e1610
fix: correcting button height
Aldacelio Jun 6, 2025
7eba6f1
refactor: changing metadata
Aldacelio Jun 6, 2025
a5cdfdb
fix: correcting images
Aldacelio Jun 6, 2025
afb8536
doc: readme update
Aldacelio Jun 6, 2025
17f0521
chore: prepare project for deployment
Aldacelio Jun 6, 2025
7cb169b
doc: adding variable for testing
Aldacelio Jun 6, 2025
e8743f2
fix: fixing build error
Aldacelio Jun 16, 2025
19016ef
feat: adding masks
Aldacelio Jun 16, 2025
c2aad0a
style: correcting the background color of the inputs and removing the…
Aldacelio Jun 16, 2025
4c443c9
docs: add application deploy link
Aldacelio Jun 17, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 41 additions & 0 deletions frontend/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.*
.yarn/*
!.yarn/patches
!.yarn/plugins
!.yarn/releases
!.yarn/versions

# testing
/coverage

# next.js
/.next/
/out/

# production
/build

# misc
.DS_Store
*.pem

# debug
npm-debug.log*
yarn-debug.log*
yarn-error.log*
.pnpm-debug.log*

# env files (can opt-in for committing if needed)
.env*

# vercel
.vercel

# typescript
*.tsbuildinfo
next-env.d.ts
41 changes: 41 additions & 0 deletions frontend/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# 🌳 Checkout de Compensação de Carbono

Um projeto desenvolvido com Next.js refrente ao desafio para a vaga de desenvolvedor Front-end na GSS

## 🚀 Tecnologias

- [Next.js](https://nextjs.org/)
- [React](https://reactjs.org/)
- [TailwindCSS](https://tailwindcss.com/)
- [TypeScript](https://www.typescriptlang.org/)


## 📱 Funcionalidades

- Checkout para compensação de carbono
- Processamento de pagamentos
- Permissão de prosseguir apenas com todos os campos preenchidos
- Design responsivo
- Feedback visual para interações
- Páginas de sucesso/erro

## 🎨 Design

O projeto segue fielmente o design fornecido no Figma, implementando:
- Sistema de cores consistente
- Componentes reutilizáveis
- Interfaces responsivas

## ⚙️ Configurando para teste local

Adicione o arquivo .env com a variavel abaixo com o link do mock:

- NEXT_PUBLIC_API_BASE_URL=sua_url

## 🚀 Deployment

- Acesse e confira já: [https://frontend-test-treee-git-main-aldacelios-projects.vercel.app/](https://frontend-test-treee-git-main-aldacelios-projects.vercel.app/)

## 👥 Autor

Antonio Aldacélio Cavalcante - [GitHub](https://github.com/Aldacelio)
21 changes: 21 additions & 0 deletions frontend/components.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"$schema": "https://ui.shadcn.com/schema.json",
"style": "new-york",
"rsc": true,
"tsx": true,
"tailwind": {
"config": "tailwind.config.js",
"css": "src/app/globals.css",
"baseColor": "neutral",
"cssVariables": true,
"prefix": ""
},
"aliases": {
"components": "@/components",
"utils": "@/lib/utils",
"ui": "@/components/ui",
"lib": "@/lib",
"hooks": "@/hooks"
},
"iconLibrary": "lucide"
}
16 changes: 16 additions & 0 deletions frontend/eslint.config.mjs
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
import { dirname } from "path";
import { fileURLToPath } from "url";
import { FlatCompat } from "@eslint/eslintrc";

const __filename = fileURLToPath(import.meta.url);
const __dirname = dirname(__filename);

const compat = new FlatCompat({
baseDirectory: __dirname,
});

const eslintConfig = [
...compat.extends("next/core-web-vitals", "next/typescript"),
];

export default eslintConfig;
14 changes: 14 additions & 0 deletions frontend/next.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
import type { NextConfig } from "next";

const nextConfig: NextConfig = {
/* config options here */
output: 'standalone',
images: {
unoptimized: true
},
typescript: {
ignoreBuildErrors: true
}
};

export default nextConfig;
Loading