Accountill 使用 MongoDB、Express、React 和 Nodejs (MERN) 制作的全栈开源发票应用程序

Accountill 使用 MongoDB、Express、React 和 Nodejs (MERN) 制作的全栈开源发票应用程序。

介绍

使用 MERN 堆栈(MongoDB、Express、React 和 Nodejs)制作的全栈发票应用程序,专为自由职业者和小型企业设计,几乎可用于任何类型的业务需求。使用此应用程序,可以向客户发送精美的发票、收据、估价单、报价单、账单等。立即跳出 Live App 并开始发送发票或下载整个源代码并在服务器上运行。

主要特征

  • 通过电子邮件发送发票、收据、估价、报价单和账单

  • 通过电子邮件生成并发送/下载 pdf 发票、收据、估算、报价单和账单

  • 设置截止日期。

  • 添加付款记录时自动更改状态

  • 每张发票的付款历史记录部分,包含有关付款日期、付款方式和额外说明的记录。

  • 记录发票的部分付款。

  • 干净的管理仪表板,用于显示所有发票统计信息,包括收到的总金额、待处理总额、最近付款、已支付发票总额、未支付发票总额和部分已支付发票。

  • 多用户注册。

  • 使用 jsonwebtoken (jwt) 和 Google auth 进行身份验证

使用的技术

客户

  • 反应 JS

  • Redux(用于管理和集中应用程序状态)

  • React-router-dom(处理路由)

  • Axios(用于调用 api)

  • Material UI & CSS 模块(用于用户界面)

  • React simple Snackbar(显示成功/错误通知)

  • Cloudinary(允许用户上传他们的企业标志)

  • Apex 图表(显示付款历史)

  • React-google-login(启用使用 Google 的身份验证)

服务器

  • Express

  • Mongoose

  • JWT(用于身份验证)

  • bcryptjs(用于数据加密)

  • Nodemailer(用于通过电子邮件发送发票)

  • html-pdf(用于生成发票 PDF)

数据库

  • MongoDB(MongoDB 地图集)

配置和设置

为了在本地运行这个项目,只需 fork 并克隆存储库或下载为 zip 并在您的计算机上解压缩。

  • 在您喜欢的代码编辑器中打开项目。

  • 转到终端 -> 新终端(如果您使用的是 VSCode)

  • 将您的终端一分为二(在一个终端上运行客户端,在另一个终端上运行服务器)

在第一个终端

  • cd client 并在客户端目录的根目录中创建一个 .env 文件。

  • 提供以下凭据

REACT_APP_GOOGLE_CLIENT_ID =  
REACT_APP_API = http://localhost:5000  
REACT_APP_URL = http://localhost:3000  

示例(Docker)

使用 docker 很简单的网络。只需添加与 docker 关联的 .env 即可。

例如:

转到路径“server/.env

DB_URL = mongodb://mongo:27017/arch  
PORT = 5000  
SECRET =  
SMTP_HOST =  
SMTP_PORT =  
SMTP_USER =  
SMTP_PASS =  

转到路径“client/.env

REACT_APP_GOOGLE_CLIENT_ID =  
REACT_APP_API = http://localhost:5000  
REACT_APP_URL = http://localhost  

并运行

docker-compose -f docker-compose.prod.yml build  
  
And then  
  
docker-compose -f docker-compose.prod.yml up

开源地址

  • https://github.com/panshak/accountill

猜你喜欢

转载自blog.csdn.net/weixin_37576193/article/details/131101992