Skip to content

Commit

Permalink
✏️ docs(style): 更新README文档
Browse files Browse the repository at this point in the history
  • Loading branch information
nongyehong committed Mar 12, 2024
1 parent 8adefce commit a4c1712
Show file tree
Hide file tree
Showing 5 changed files with 82 additions and 19 deletions.
6 changes: 0 additions & 6 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,3 @@
## <small>1.2.9 (2024-03-11)</small>

* :bug: fix(custom): 修改页面样式没有加载问题,修复打包后静态文件路径问题 ([63ce821](https://gitee.com/nongyehong/HuLa-IM-Tauri/commits/63ce821))



## <small>1.2.9-alpha (2024-03-08)</small>

* :bug: fix(custom): 回退vite版本5.0.12导致启动不了端口服务的问题 ([ba99bb2](https://gitee.com/nongyehong/HuLa-IM-Tauri/commits/ba99bb2))
Expand Down
45 changes: 36 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,16 +1,43 @@
# Tauri + Vue 3 + TypeScript
<p align="center">
<img width="144px" src="logo.png" />
</p>

This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 `<script setup>` SFCs, check out the [script setup docs](https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup) to learn more.
<h1 align="center">HuLa</h1>
<p align="center">An Instant Messaging System Built with Tauri, Vite 5, Vue 3, and TypeScript</p>

## Recommended IDE Setup
<p align="center"><a href="README.zh-CN.md">中文</a> | English</p>

- [VS Code](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) + [Tauri](https://marketplace.visualstudio.com/items?itemName=tauri-apps.tauri-vscode) + [rust-analyzer](https://marketplace.visualstudio.com/items?itemName=rust-lang.rust-analyzer)
## Project Introduction

## Type Support For `.vue` Imports in TS
HuLa is an instant messaging system developed with Tauri, Vite 5, Vue 3, and TypeScript. It leverages the cross-platform capabilities of Tauri and the reactive design of Vue 3, combined with TypeScript's type safety features and the fast build system of Vite 5, to provide users with an efficient, secure, and easy-to-use communication solution.

Since TypeScript cannot handle type information for `.vue` imports, they are shimmed to be a generic Vue component type by default. In most cases this is fine if you don't really care about component prop types outside of templates. However, if you wish to get actual prop types in `.vue` imports (for example to get props validation when using manual `h(...)` calls), you can enable Volar's Take Over mode by following these steps:
## Technology Stack

1. Run `Extensions: Show Built-in Extensions` from VS Code's command palette, look for `TypeScript and JavaScript Language Features`, then right click and select `Disable (Workspace)`. By default, Take Over mode will enable itself if the default TypeScript extension is disabled.
2. Reload the VS Code window by running `Developer: Reload Window` from the command palette.
- **Tauri**: Provides a lightweight, high-performance desktop application container, enabling the development of cross-platform desktop applications with a web technology stack. Tauri's design philosophy aims to minimize resource consumption while ensuring security.
- **Vite 5**: A modern front-end build tool that uses native ES module import to offer a fast development server. At the same time, it provides robust support for production builds. Vite 5 is its latest version, bringing more optimizations and features.
- **Vue 3**: A progressive JavaScript framework for building user interfaces. Its Composition API, improved TypeScript integration, and optimizations for mobile platforms make developing complex single-page applications simpler and more efficient.
- **TypeScript**: A superset of JavaScript that adds a type system to the language. It enables catching more errors during development and provides better support from editors.

You can learn more about Take Over mode [here](https://github.com/johnsoncodehk/volar/discussions/471).
## Project Architecture

HuLa adopts a modular architecture design, with the front end built using Vue 3 for the user interface, enhanced by TypeScript for better code readability and maintainability. On the backend, we use the Tauri framework for packaging and distributing the application, leveraging its native integration with the operating system to offer users more functionality and higher performance.

## Installation and Running

```bash
# Clone the project
git clone https://gitee.com/nongyehong/HuLa-IM-Tauri.git
or
git clone https://github.com/nongyehong/HuLa-IM-Tauri.git

# Enter the project directory
cd HuLa

# Install dependencies
pnpm install

# Run the development server
pnpm run tauri:dev

# Build for production
pnpm run tauri:build
43 changes: 43 additions & 0 deletions README.zh-CN.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
<p align="center">
<img width="144px" src="logo.png" />
</p>

<h1 align="center">HuLa</h1>
<p align="center">一个基于Tauri、Vite 5、Vue 3 和 TypeScript 构建的即时通讯系统</p>

<p align="center"><a href="README.md">English</a> | 中文</p>

## 项目介绍

HuLa 是一个基于 Tauri、Vite 5、Vue 3 和 TypeScript 构建的即时通讯系统。它利用了 Tauri 的跨平台能力和 Vue 3 的响应式设计,结合了 TypeScript 的类型安全特性和 Vite 5 的快速构建,为用户提供了一个高效、安全和易用的通讯解决方案。

## 技术栈

- **Tauri**: 为本项目提供了一个轻量级的、高性能的桌面应用容器,使得我们可以使用前端技术栈来开发跨平台的桌面应用。Tauri 的设计哲学是在保证安全性的前提下,尽可能减少资源占用。
- **Vite 5**: Vite 是一个现代化的前端构建工具,它利用原生 ES 模块导入的能力来提供一个快速的开发服务器,与此同时,它也为生产环境打包提供了强大的支持。Vite 5 是其最新的版本,带来了更多的优化和特性。
- **Vue 3**: Vue 3 是一个渐进式JavaScript框架,用于构建用户界面。它的组合式API、更好的TypeScript集成和对移动端的优化使得开发复杂的单页应用变得更加简单和高效。
- **TypeScript**: TypeScript 是 JavaScript 的一个超集,它在 JavaScript 的基础上增加了类型系统。这让我们能够在开发过程中捕获更多的错误,并且提供更好的编辑器支持。

## 项目架构

HuLa 采用了模块化的架构设计,前端使用 Vue 3 构建用户界面,通过 TypeScript 来增强代码的可读性和维护性。在后端,我们使用 Tauri 框架来打包和发布应用,利用它与操作系统的原生集成为用户提供了更多的功能和更高的性能。

## 安装与运行

```bash
# 克隆项目
git clone https://gitee.com/nongyehong/HuLa-IM-Tauri.git
或者
git clone https://github.com/nongyehong/HuLa-IM-Tauri.git

# 进入项目目录
cd HuLa

# 安装依赖
pnpm install

# 运行开发服务器
pnpm run tauri:dev

# 构建生产版本
pnpm run tauri:build
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "hula-im-tauri",
"private": true,
"version": "v1.2.9",
"version": "v1.3.0-beta",
"packageManager": "[email protected]",
"engines": {
"node": ">=18.12.0",
Expand Down
5 changes: 2 additions & 3 deletions src-tauri/tauri.conf.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
},
"package": {
"productName": "HuLa",
"version": "1.2.9"
"version": "1.3.0"
},
"tauri": {
"updater": {
Expand Down Expand Up @@ -66,8 +66,7 @@
"height": 448,
"skipTaskbar": false,
"decorations": false,
"transparent":true,
"defaultWindow": true
"transparent":true
}
],
"systemTray": {
Expand Down

0 comments on commit a4c1712

Please sign in to comment.