PaoPao_CE.jpg

简介

PaoPao 是一个清新文艺的微社区,类似于新浪微博、Twitter,但更注重艺术和创意的表达。它基于 Go、Gin、Zinc、Vue 和 TypeScript 等技术构建,具有良好的性能和可扩展性。本文将介绍 PaoPao 的功能、技术栈、快速开始指南和部署方式,帮助您快速搭建自己的微社区。

https://github.com/rocboss/paopao-ce

核心功能

发布动态: 用户可以发布文字、图片、视频等形式的动态,分享自己的想法和创意。

评论互动: 用户可以对其他用户的动态进行评论,进行互动交流。

搜索功能: 用户可以通过关键词搜索相关的动态和用户。

个人主页: 用户可以设置个人资料、头像、背景等,展示自己的个性。

主题切换: 用户可以选择不同的主题风格,例如明亮、暗黑等。

桌面端应用: PaoPao 还提供了桌面端应用,方便用户在电脑上使用。

技术亮点

PaoPao-CE的技术栈展现了其现代化和高性能的特点。以下是构建这个项目的主要技术和工具:

后端技术

Go:一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。

Gin:一个用Go语言编写的Web框架,以高性能著称。

Zinc:一个基于Elasticsearch的开源搜索引擎,为PaoPao-CE提供搜索能力。

Buf:用于管理Protocol Buffers文件的工具。

gRPC:一种高性能、开源和通用的RPC框架。

Meilisearch:一个快速、易于使用的开源搜索引擎。

前端技术

Naive UI:一个Vue 3的组件库,提供了一系列美观的组件。

Vue.js:一个渐进式JavaScript框架,用于构建用户界面。

Vite.js:一个现代化的前端构建工具。

Tauri:一个框架,用于构建轻量级、安全的跨平台桌面应用程序。

环境要求

在开始搭建之前,请确保您的开发环境中安装了以下软件:

  • Go (1.20+)

  • Node.js (14+)

  • MySQL (5.7+)

  • Redis

  • Meilisearch

搭建方法

方法一:手动安装

克隆代码库:

git clone https://github.com/rocboss/paopao-ce.git

导入scripts/paopao.sql文件至MySQL数据库。

拷贝config.yaml.sampleconfig.yaml,并完成配置编辑。

编译后端:

make build

运行后端:

release/paopao

方法二:使用Docker构建、运行

构建Docker镜像:

docker build -t your/paopao-ce:tag

运行Docker容器:

docker run -d -p 8008:8008 your/paopao-ce:tag

展示

https://www.paopao.info

20241117210527.jpg20241117210440.jpg