vite
This commit is contained in:
parent
9bef5247f3
commit
ccc2332712
6 changed files with 127 additions and 2257 deletions
47
README.md
47
README.md
|
|
@ -1,13 +1,46 @@
|
|||
<div align="center">
|
||||
<img src="https://raw.githubusercontent.com/Flow-Works/FlowOS/main/public/assets/logo.svg" width="100px">
|
||||
<p style="font-size: 28px; font-weight: bold">Flow OS</p>
|
||||
<img src="https://img.shields.io/github/stars/flow-works/flowos-2.0?style=for-the-badge" />
|
||||
|
||||
# FlowOS Next
|
||||
The *future* of FlowOS.
|
||||
<img src="https://img.shields.io/github/issues-pr/flow-works/flowos-2.0?style=for-the-badge" />
|
||||
|
||||
[](https://github.com/standard/ts-standard)
|
||||
|
||||

|
||||
[](https://github.com/Flow-Works/FlowOS-2.0/actions/workflows/build.yml)
|
||||

|
||||
<img src="https://img.shields.io/github/forks/flow-works/flowos-2.0?style=for-the-badge&color=orange" />
|
||||
|
||||
<img src="https://img.shields.io/github/commit-activity/t/Flow-Works/FlowOS-2.0?style=for-the-badge&color=violet" />
|
||||
<br><br>
|
||||
<i>The next generation of Flow OS</i>
|
||||
<br>
|
||||
<a href="https://docs.flow-works.me"><strong>Read the docs »</strong></a>
|
||||
<hr>
|
||||
|
||||
</div>
|
||||
|
||||
## What is Flow OS?
|
||||
Flow OS is a web OS proxy made for the Titanium Network 2023 Proxathon. It's extremly customizable with an API to make your own apps, themes, and modules.
|
||||
|
||||
## Getting Started
|
||||
To run Flow OS on your local machine, you need Node.js 16 or above.
|
||||
* Clone the repository
|
||||
```
|
||||
git clone https://github.com/flow-works/flowos
|
||||
```
|
||||
* Install packages
|
||||
```
|
||||
npm install
|
||||
```
|
||||
* Build and run!
|
||||
```
|
||||
npm run build
|
||||
npm run serve
|
||||
```
|
||||
|
||||
## Made with
|
||||
Flow OS is made with the following software:
|
||||
* [Filer](https://github.com/filerjs/filer)
|
||||
* [PrismJS](https://github.com/PrismJS/prism)
|
||||
* [Vite](https://vitejs.dev)
|
||||
* [Ultraviolet](https://github.com/titaniumnetwork-dev/ultraviolet)
|
||||
|
||||
## License
|
||||
Flow OS is licensed under the MIT license. See the `LICENSE` file for more information.
|
||||
|
|
@ -3,9 +3,10 @@
|
|||
<head>
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<title>Document</title>
|
||||
<title>Flow OS</title>
|
||||
</head>
|
||||
<body>
|
||||
<script src="https://unpkg.com/filer"></script>
|
||||
<script src="./src/index.ts" type="module"></script>
|
||||
</body>
|
||||
</html>
|
||||
2210
package-lock.json
generated
2210
package-lock.json
generated
File diff suppressed because it is too large
Load diff
12
package.json
12
package.json
|
|
@ -5,8 +5,9 @@
|
|||
"main": "src/index.ts",
|
||||
"scripts": {
|
||||
"test": "ts-standard",
|
||||
"dev": "vite",
|
||||
"build": "vite build",
|
||||
"serve": "vite serve"
|
||||
"serve": "vite preview"
|
||||
},
|
||||
"keywords": [],
|
||||
"author": "",
|
||||
|
|
@ -15,7 +16,6 @@
|
|||
"@babel/preset-env": "^7.23.2",
|
||||
"@babel/preset-typescript": "^7.23.2",
|
||||
"@types/uuid": "^9.0.5",
|
||||
"@types/webpack-env": "^1.18.2",
|
||||
"babel-loader": "^9.1.3",
|
||||
"css-loader": "^6.8.1",
|
||||
"file-loader": "^6.2.0",
|
||||
|
|
@ -27,11 +27,10 @@
|
|||
"style-loader": "^3.3.3",
|
||||
"ts-standard": "^12.0.2",
|
||||
"typescript": "^5.2.2",
|
||||
"vite-plugin-html": "^3.2.0",
|
||||
"vite": "^4.4.11",
|
||||
"vite-plugin-node-polyfills": "^0.15.0",
|
||||
"vite-plugin-require": "^1.1.11",
|
||||
"vite-require": "^0.2.3",
|
||||
"webpack-dev-server": "^4.15.1"
|
||||
"vite-require": "^0.2.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"@ptkdev/logger": "^1.8.0",
|
||||
|
|
@ -39,7 +38,6 @@
|
|||
"filer": "^1.4.1",
|
||||
"prism-code-editor": "^1.2.2",
|
||||
"prismjs": "^1.29.0",
|
||||
"uuid": "^9.0.1",
|
||||
"vite": "^4.4.11"
|
||||
"uuid": "^9.0.1"
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,20 +1,9 @@
|
|||
import { defineConfig } from 'vite'
|
||||
import { createHtmlPlugin } from 'vite-plugin-html'
|
||||
import { nodePolyfills } from 'vite-plugin-node-polyfills'
|
||||
import { viteRequire } from 'vite-require'
|
||||
|
||||
export default defineConfig({
|
||||
plugins: [
|
||||
createHtmlPlugin({
|
||||
entry: 'src/index.ts',
|
||||
template: 'public/index.html',
|
||||
inject: {
|
||||
data: {
|
||||
title: 'index',
|
||||
injectScript: '<script src="./bundle.js"></script>'
|
||||
}
|
||||
}
|
||||
}),
|
||||
nodePolyfills(),
|
||||
viteRequire()
|
||||
]
|
||||
|
|
|
|||
|
|
@ -1,101 +0,0 @@
|
|||
const HtmlWebpackPlugin = require('html-webpack-plugin')
|
||||
const { FilerWebpackPlugin } = require('filer/webpack')
|
||||
const NodePolyfillPlugin = require('node-polyfill-webpack-plugin')
|
||||
const webpack = require('webpack')
|
||||
|
||||
const path = require('path')
|
||||
|
||||
module.exports = {
|
||||
entry: {
|
||||
flow: './src/index.ts'
|
||||
},
|
||||
devtool: 'inline-source-map',
|
||||
mode: 'production',
|
||||
module: {
|
||||
rules: [
|
||||
{
|
||||
test: /\.less$/i,
|
||||
use: [
|
||||
'style-loader',
|
||||
'css-loader',
|
||||
'less-loader'
|
||||
]
|
||||
},
|
||||
{
|
||||
test: /\.css$/i,
|
||||
use: [
|
||||
'style-loader',
|
||||
'css-loader'
|
||||
]
|
||||
},
|
||||
{
|
||||
test: /\.(png|jpe?g|gif)$/i,
|
||||
loader: 'file-loader',
|
||||
options: {
|
||||
outputPath: 'images'
|
||||
}
|
||||
},
|
||||
{
|
||||
test: /\.ts$/,
|
||||
exclude: /node_modules/,
|
||||
use: 'babel-loader'
|
||||
},
|
||||
{
|
||||
test: /\.js$/,
|
||||
use: ['source-map-loader'],
|
||||
enforce: 'pre'
|
||||
}
|
||||
|
||||
]
|
||||
},
|
||||
resolve: {
|
||||
extensions: ['.tsx', '.ts', '.js']
|
||||
},
|
||||
output: {
|
||||
filename: '[name].bundle.js',
|
||||
path: path.resolve(__dirname, 'dist'),
|
||||
clean: true
|
||||
},
|
||||
devServer: {
|
||||
static: {
|
||||
directory: path.join(__dirname, 'dist')
|
||||
},
|
||||
compress: true,
|
||||
port: 9000
|
||||
},
|
||||
plugins: [new HtmlWebpackPlugin(), new FilerWebpackPlugin(),
|
||||
new NodePolyfillPlugin({
|
||||
excludeAliases: ['console']
|
||||
}),
|
||||
new webpack.optimize.MinChunkSizePlugin({
|
||||
minChunkSize: 50000
|
||||
}),
|
||||
new webpack.optimize.SplitChunksPlugin({
|
||||
minSize: 45000,
|
||||
maxSize: 110000
|
||||
})
|
||||
],
|
||||
optimization: {
|
||||
splitChunks: {
|
||||
chunks: 'async',
|
||||
minSize: 20000,
|
||||
minRemainingSize: 0,
|
||||
minChunks: 1,
|
||||
maxAsyncRequests: 30,
|
||||
maxInitialRequests: 30,
|
||||
enforceSizeThreshold: 50000,
|
||||
cacheGroups: {
|
||||
commons: {
|
||||
test: /[\\/]node_modules[\\/]/,
|
||||
name: 'vendor',
|
||||
chunks: 'initial',
|
||||
reuseExistingChunk: true
|
||||
},
|
||||
default: {
|
||||
minChunks: 2,
|
||||
reuseExistingChunk: true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Reference in a new issue