Coder Social home page Coder Social logo

payment_project's Introduction

Projeto Plataforma de Pagamentos [ranielcsar]

Sistema de pagamentos que permite aos usuários realizar pagamentos, gerenciar saldos e manter um registro organizado de suas atividades financeiras.

  • Funcionalidades do Usuário

    • Autenticação
    • Fazer login e logout na aplicação.
  • Pagamentos:

    • Criar pagamentos.
    • Visualizar a lista de pagamentos.
    • Apagar um pagamento.
    • Editar o nome de um pagamento.
  • Saldos:

    • Criar saldos.
    • Visualizar a lista de saldos.
    • Apagar um saldo.
    • Editar o nome de um saldo.

Principais tipos:

export type PaymentProps = {
  id?: string
  name: string
  description: string
  value: number
  balance_to_use: string

  balanceId?: string
}

export type BalanceProps = {
  id?: string
  name: string
  description: string
  initial_value: number
  used_value: number
  remaining_value: number
}

export type LoginProps = {
  email: string
  password: string
}

export type RegisterProps = {
  email: string
  name: string
  username: string
  password: string
}

export type UserProps = {
  email: string
  name: string
  username: string
}

Regras de negócio

  • Gerenciar o valor restante em um saldo.
  • Impedir que um saldo seja vinculado a um pagamento se o valor restante no saldo for menor que o do pagamento.
  • Impedir que um saldo seja excluído caso um pagamento esteja vinculado a ele.
  • Consumir o valor restante de um saldo quando o mesmo for usado em um pagamento.
  • Devolver o valor consumido em um saldo se o pagamento a ele vinculado for excluído.

Como rodar o projeto

Vá até a pasta front e rode os comandos: npm install && npm run build && npm run preview
Caso queira rodar em modo de desenvolvimento: npm install && npm run dev Abra em: http://localhost:5173

Após isso, vá até a pasta api e rode: npm install && npx prisma migrate dev && npm run dev
Abra em: http://localhost:3333

Tecnologias usadas

Ambos projetos feitos com Typescript.

  • Front

    • TailwindCSS
    • MaterialUI
    • Zod
    • React Hook Form
    • React query
    • JWT Decode
    • ViteJS
    • Axios
    • React router
    • React toastify
  • Api

    • PrismaJS
    • Fastify
    • Zod
    • Jwt
    • Bcrypt

payment_project's People

Contributors

ranielcsar avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.