Skip to content

Commit

Permalink
chore: 首次提交
Browse files Browse the repository at this point in the history
  • Loading branch information
hooray committed Jun 12, 2024
0 parents commit 479bee9
Show file tree
Hide file tree
Showing 106 changed files with 16,021 additions and 0 deletions.
9 changes: 9 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
root = true

[*]
charset = utf-8
indent_style = space
indent_size = 2
end_of_line = lf
insert_final_newline = true
trim_trailing_whitespace = true
13 changes: 13 additions & 0 deletions .env.development
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# 应用配置面板
VITE_APP_SETTING = true
# 页面标题
VITE_APP_TITLE = Fantastic-mobile 基础版
# 接口请求地址,会设置到 axios 的 baseURL 参数上
VITE_APP_API_BASEURL = /
# 调试工具,可设置 eruda 或 vconsole,如果不需要开启则留空
VITE_APP_DEBUG_TOOL =

# 是否开启代理
VITE_OPEN_PROXY = true
# 是否开启开发者工具
VITE_OPEN_DEVTOOLS = true
17 changes: 17 additions & 0 deletions .env.production
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# 应用配置面板
VITE_APP_SETTING = false
# 页面标题
VITE_APP_TITLE = Fantastic-mobile 基础版
# 接口请求地址,会设置到 axios 的 baseURL 参数上
VITE_APP_API_BASEURL = /
# 调试工具,可设置 eruda 或 vconsole,如果不需要开启则留空
VITE_APP_DEBUG_TOOL =

# 是否在打包时启用 Mock
VITE_BUILD_MOCK = false
# 是否在打包时生成 sourcemap
VITE_BUILD_SOURCEMAP = false
# 是否在打包时开启压缩,支持 gzip 和 brotli
VITE_BUILD_COMPRESS = gzip,brotli
# 是否在打包后生成存档,支持 zip 和 tar
VITE_BUILD_ARCHIVE =
17 changes: 17 additions & 0 deletions .env.test
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# 应用配置面板
VITE_APP_SETTING = false
# 页面标题
VITE_APP_TITLE = Fantastic-mobile 基础版
# 接口请求地址,会设置到 axios 的 baseURL 参数上
VITE_APP_API_BASEURL = /
# 调试工具,可设置 eruda 或 vconsole,如果不需要开启则留空
VITE_APP_DEBUG_TOOL =

# 是否在打包时启用 Mock
VITE_BUILD_MOCK = true
# 是否在打包时生成 sourcemap
VITE_BUILD_SOURCEMAP = true
# 是否在打包时开启压缩,支持 gzip 和 brotli
VITE_BUILD_COMPRESS =
# 是否在打包后生成存档,支持 zip 和 tar
VITE_BUILD_ARCHIVE =
87 changes: 87 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
name: Release

on:
push:
tags:
- 'v*'

jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- uses: actions/setup-node@v4
with:
node-version: 20

- run: npx changelogithub # or [email protected] if ensure the stable result
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}

upload-archive:
needs: release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Get Release
id: last_release
uses: joutvhu/get-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
latest: true

- name: Create Archive
uses: thedoctor0/zip-release@main
with:
type: zip
filename: fantastic-mobile-basic.${{ steps.last_release.outputs.tag_name }}.zip
exclusions: '/.git/* /.github/*'

- name: Upload Archive To Release
uses: xresloader/upload-to-github-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
release_id: ${{ steps.last_release.outputs.id }}
draft: false
file: fantastic-mobile-basic.${{ steps.last_release.outputs.tag_name }}.zip

upload-archive-example:
needs: release
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
ref: example

- name: Get Release
id: last_release
uses: joutvhu/get-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
latest: true

- name: Create Archive
uses: thedoctor0/zip-release@main
with:
type: zip
filename: fantastic-mobile-basic.example.${{ steps.last_release.outputs.tag_name }}.zip
exclusions: '/.git/* /.github/* /public/.github/* /public/.nojekyll'

- name: Upload Archive To Release
uses: xresloader/upload-to-github-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
release_id: ${{ steps.last_release.outputs.id }}
draft: false
file: fantastic-mobile-basic.example.${{ steps.last_release.outputs.tag_name }}.zip
23 changes: 23 additions & 0 deletions .github/workflows/repo-sync.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: repo-sync

on:
# 每天 00:10 自动同步
schedule:
- cron: '10 0 * * *'
# 手动触发部署
workflow_dispatch:

jobs:
sync-to-gitee:
runs-on: ubuntu-latest
steps:
- name: Sync to Gitee
uses: wearerequired/git-mirror-action@master
env:
# 注意在 Settings->Secrets 配置 GITEE_RSA_PRIVATE_KEY
SSH_PRIVATE_KEY: ${{ secrets.GITEE_RSA_PRIVATE_KEY }}
with:
# 注意替换为你的 GitHub 源仓库地址
source-repo: [email protected]:fantastic-mobile/basic.git
# 注意替换为你的 Gitee 目标仓库地址
destination-repo: [email protected]:fantastic-mobile/basic.git
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
node_modules
.DS_Store
dist*
dist-ssr
*.local
.eslintcache
.stylelintcache
4 changes: 4 additions & 0 deletions .lintstagedrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"*.{ts,tsx,vue}": "eslint --cache --fix",
"*.{css,scss,vue}": "stylelint --cache --fix"
}
1 change: 1 addition & 0 deletions .node-version
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
20
3 changes: 3 additions & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
shamefully-hoist=true
strict-peer-dependencies=false
engine-strict=true
10 changes: 10 additions & 0 deletions .vscode/extensions.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"recommendations": [
"EditorConfig.EditorConfig",
"mikestead.dotenv",
"dbaeumer.vscode-eslint",
"stylelint.vscode-stylelint",
"Vue.volar",
"antfu.unocss"
]
}
29 changes: 29 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"typescript.tsdk": "node_modules/typescript/lib",
"typescript.preferences.autoImportFileExcludePatterns": ["vue-router$"],
"eslint.experimental.useFlatConfig": true,
"prettier.enable": false,
"editor.formatOnSave": false,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit",
"source.fixAll.stylelint": "explicit",
"source.organizeImports": "never"
},
"stylelint.validate": [
"css",
"scss",
"vue"
],
"eslint.validate": [
"javascript",
"javascriptreact",
"typescript",
"typescriptreact",
"vue",
"html",
"markdown",
"json",
"jsonc",
"yaml"
]
}
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2024 fantastic-mobile

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
129 changes: 129 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,129 @@
<p align="center">
<img src="https://fantastic-mobile.github.io/logo.png" width="200" height="200" />
</p>

<h1 align="center">Fantastic-mobile</h1>

<p align="center">一款<b>自成一派</b>的移动端 H5 框架,基于 Vue3</p>

<p align="center">
<a href="https://fantastic-mobile.github.io" target="_blank">官网(Github)</a>
<span>&nbsp;|&nbsp;</span>
<a href="https://fantastic-mobile.pages.dev" target="_blank">官网(Cloudflare)</a>
<p>

<p align="center">
<a href="###"><img src="https://img.shields.io/github/license/fantastic-mobile/basic?label=%E5%BC%80%E6%BA%90%E5%8D%8F%E8%AE%AE&style=flat-square" /></a>
<a href="https://github.com/fantastic-mobile/basic/releases" target="_blank"><img src="https://img.shields.io/github/v/release/fantastic-mobile/basic?label=%E5%BD%93%E5%89%8D%E7%89%88%E6%9C%AC&style=flat-square" /></a>
</p>

## 特点

- 可自由替换 UI 组件库,默认使用 Vant
- 提供页面整体布局组件,顶部导航栏、顶部标签栏、返回顶部、记录滚动位置等特性
- 提供系统配置文件,轻松实现个性化定制
- 基于文件系统的路由
- 支持全方位权限验证
- 内置最佳页面缓存方案
- 轻松实现国际化多语言适配

## 下载

> 本仓库为基础版
**直接拉取源码可能会包含未发布的内容,推荐去 [Github Releases](https://github.com/fantastic-mobile/basic/releases) 页面下载稳定版本的压缩包**。如果确定需要拉取源码,请参考下列分支说明:

- `main` Vue3 版本框架源码分支,不含示例代码,可直接用于实际开发
- `example` Vue3 版本演示源码分支,同线上演示站,包含大量示例,可用于参考学习

<!-- ## 预览
> 预览截图为专业版
<table>
<tr>
<td><img src="https://fantastic-mobile.github.io/preview1.png" /></td>
<td><img src="https://fantastic-mobile.github.io/preview2.png" /></td>
<td><img src="https://fantastic-mobile.github.io/preview3.png" /></td>
</tr>
<tr>
<td><img src="https://fantastic-mobile.github.io/preview4.png" /></td>
<td><img src="https://fantastic-mobile.github.io/preview5.png" /></td>
<td><img src="https://fantastic-mobile.github.io/preview6.png" /></td>
</tr>
</table> -->

## 支持

如果觉得 Fantastic-mobile 这个框架不错,或者已经在使用了,希望你可以在 **Github** 或者 **Gitee(码云)** 帮我点个 ⭐ ,这将对我是极大的鼓励。

[![star](https://img.shields.io/github/stars/fantastic-mobile/basic?style=social)](https://github.com/fantastic-mobile/basic)

[![star](https://gitee.com/fantastic-mobile/basic/badge/star.svg?theme=dark)](https://gitee.com/fantastic-mobile/basic)

<details>
<summary>Github Stars 曲线</summary>

[![Stargazers over time](https://starchart.cc/fantastic-mobile/basic.svg)](https://starchart.cc/fantastic-mobile/basic)
</details>

## 生态

<table>
<tr>
<th colspan="3" align="center">
<a href="https://hooray.github.io/fantastic-startkit/" target="_blank">Fantastic-startkit</a>
</th>
</tr>
<tr>
<th colspan="3" align="center">
一款简单好用的 Vue3 项目启动套件
</th>
</tr>
</table>

<table>
<tr>
<th colspan="3" align="center">
<a href="https://fantastic-admin.github.io/" target="_blank">Fantastic-admin</a>
</th>
</tr>
<tr>
<th colspan="3" align="center">
一款开箱即用的 Vue 中后台管理系统框架
</th>
</tr>
<tr>
<td><img src="https://fantastic-admin.github.io/preview1.png" /></td>
<td><img src="https://fantastic-admin.github.io/preview2.png" /></td>
<td><img src="https://fantastic-admin.github.io/preview3.png" /></td>
</tr>
<tr>
<td><img src="https://fantastic-admin.github.io/preview4.png" /></td>
<td><img src="https://fantastic-admin.github.io/preview5.png" /></td>
<td><img src="https://fantastic-admin.github.io/preview6.png" /></td>
</tr>
</table>

<table>
<tr>
<th colspan="3" align="center">
<a href="https://one-step-admin.github.io" target="_blank">One-step-admin</a>
</th>
</tr>
<tr>
<th colspan="3" align="center">
一款干啥都快人一步的 Vue 中后台管理系统框架
</th>
</tr>
<tr>
<td><img src="https://one-step-admin.github.io/preview1.png" /></td>
<td><img src="https://one-step-admin.github.io/preview2.png" /></td>
<td><img src="https://one-step-admin.github.io/preview3.png" /></td>
</tr>
<tr>
<td><img src="https://one-step-admin.github.io/preview4.png" /></td>
<td><img src="https://one-step-admin.github.io/preview5.png" /></td>
<td><img src="https://one-step-admin.github.io/preview6.png" /></td>
</tr>
</table>
Loading

0 comments on commit 479bee9

Please sign in to comment.