chore: fix frontend directory structure
|
@ -1,8 +1,6 @@
|
||||||
frontend/node_modules/
|
frontend/node_modules/
|
||||||
frontend/my/node_modules/
|
|
||||||
frontend/.cache/
|
frontend/.cache/
|
||||||
frontend/yarn.lock
|
frontend/yarn.lock
|
||||||
frontend/my/yarn.lock
|
|
||||||
.vscode/
|
.vscode/
|
||||||
|
|
||||||
config.toml
|
config.toml
|
||||||
|
|
14
Makefile
|
@ -1,5 +1,5 @@
|
||||||
BIN := listmonk
|
BIN := listmonk
|
||||||
STATIC := config.toml.sample schema.sql queries.sql public email-templates frontend/my/build:/frontend
|
STATIC := config.toml.sample schema.sql queries.sql public email-templates frontend/build:/frontend
|
||||||
|
|
||||||
HASH := $(shell git rev-parse --short HEAD)
|
HASH := $(shell git rev-parse --short HEAD)
|
||||||
COMMIT_DATE := $(shell git show -s --format=%ci ${HASH})
|
COMMIT_DATE := $(shell git show -s --format=%ci ${HASH})
|
||||||
|
@ -8,20 +8,20 @@ VERSION := ${HASH} (${COMMIT_DATE})
|
||||||
|
|
||||||
.PHONY: build-frontend
|
.PHONY: build-frontend
|
||||||
build-frontend:
|
build-frontend:
|
||||||
cd frontend/my && yarn install && yarn build
|
cd frontend && yarn install && yarn build
|
||||||
|
|
||||||
.PHONY: quickdev
|
.PHONY: quickdev
|
||||||
quickdev:
|
quickdev:
|
||||||
@ if [ ! -d "frontend/my/node_modules" ]; then \
|
@ if [ ! -d "frontend/node_modules" ]; then \
|
||||||
echo "Installing frontend deps"; \
|
echo "Installing frontend deps"; \
|
||||||
cd frontend/my && yarn install; \
|
cd frontend && yarn install; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ if [ ! -d "frontend/my/build" ]; then \
|
@ if [ ! -d "frontend/build" ]; then \
|
||||||
echo "Creating build directory"; \
|
echo "Creating build directory"; \
|
||||||
mkdir -p frontend/my/build; \
|
mkdir -p frontend/build; \
|
||||||
echo "Building frontend assets"; \
|
echo "Building frontend assets"; \
|
||||||
cd frontend/my && yarn build; \
|
cd frontend && yarn build; \
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ echo -e "\nBuilding go binary\n"
|
@ echo -e "\nBuilding go binary\n"
|
||||||
|
|
|
@ -15,7 +15,7 @@ There are two independent components, the Go backend and the React frontend. In
|
||||||
|
|
||||||
### 2. Run the frontend
|
### 2. Run the frontend
|
||||||
|
|
||||||
`cd frontend/my` and `yarn start`
|
`cd frontend` and `yarn start`
|
||||||
|
|
||||||
### 3. Setup an Nginx proxy endpoint
|
### 3. Setup an Nginx proxy endpoint
|
||||||
|
|
||||||
|
|
|
@ -2,3 +2,4 @@
|
||||||
"presets": ["env", "react"],
|
"presets": ["env", "react"],
|
||||||
"plugins": [["transform-react-jsx", { "pragma": "h" }]]
|
"plugins": [["transform-react-jsx", { "pragma": "h" }]]
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,34 +0,0 @@
|
||||||
{
|
|
||||||
"name": "my",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"private": true,
|
|
||||||
"dependencies": {
|
|
||||||
"antd": "^3.6.5",
|
|
||||||
"axios": "^0.18.0",
|
|
||||||
"bizcharts": "^3.2.5-beta.4",
|
|
||||||
"dayjs": "^1.7.5",
|
|
||||||
"react": "^16.4.1",
|
|
||||||
"react-app-rewire-less": "^2.1.3",
|
|
||||||
"react-app-rewired": "^1.6.2",
|
|
||||||
"react-dom": "^16.4.1",
|
|
||||||
"react-quill": "^1.3.1",
|
|
||||||
"react-router": "^4.3.1",
|
|
||||||
"react-router-dom": "^4.3.1",
|
|
||||||
"react-scripts": "1.1.4"
|
|
||||||
},
|
|
||||||
"scripts": {
|
|
||||||
"start": "react-app-rewired start",
|
|
||||||
"build": "GENERATE_SOURCEMAP=false PUBLIC_URL=/frontend/ react-app-rewired build",
|
|
||||||
"test": "react-app-rewired test --env=jsdom",
|
|
||||||
"eject": "react-scripts eject"
|
|
||||||
},
|
|
||||||
"eslintConfig": {
|
|
||||||
"extends": "react-app"
|
|
||||||
},
|
|
||||||
"devDependencies": {
|
|
||||||
"babel-plugin-import": "^1.11.0",
|
|
||||||
"eslint-plugin-prettier": "^3.0.1",
|
|
||||||
"less-plugin-npm-import": "^2.1.0",
|
|
||||||
"prettier": "1.15.3"
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,6 +1,34 @@
|
||||||
{
|
{
|
||||||
|
"name": "my",
|
||||||
|
"version": "0.1.0",
|
||||||
|
"private": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"create-react-app": "^1.5.2",
|
"antd": "^3.6.5",
|
||||||
"react": "^16.4.1"
|
"axios": "^0.18.0",
|
||||||
|
"bizcharts": "^3.2.5-beta.4",
|
||||||
|
"dayjs": "^1.7.5",
|
||||||
|
"react": "^16.4.1",
|
||||||
|
"react-app-rewire-less": "^2.1.3",
|
||||||
|
"react-app-rewired": "^1.6.2",
|
||||||
|
"react-dom": "^16.4.1",
|
||||||
|
"react-quill": "^1.3.1",
|
||||||
|
"react-router": "^4.3.1",
|
||||||
|
"react-router-dom": "^4.3.1",
|
||||||
|
"react-scripts": "1.1.4"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"start": "react-app-rewired start",
|
||||||
|
"build": "GENERATE_SOURCEMAP=false PUBLIC_URL=/frontend/ react-app-rewired build",
|
||||||
|
"test": "react-app-rewired test --env=jsdom",
|
||||||
|
"eject": "react-scripts eject"
|
||||||
|
},
|
||||||
|
"eslintConfig": {
|
||||||
|
"extends": "react-app"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"babel-plugin-import": "^1.11.0",
|
||||||
|
"eslint-plugin-prettier": "^3.0.1",
|
||||||
|
"less-plugin-npm-import": "^2.1.0",
|
||||||
|
"prettier": "1.15.3"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Before Width: | Height: | Size: 1.2 KiB After Width: | Height: | Size: 1.2 KiB |
Before Width: | Height: | Size: 244 B After Width: | Height: | Size: 244 B |
Before Width: | Height: | Size: 2.6 KiB After Width: | Height: | Size: 2.6 KiB |
Before Width: | Height: | Size: 244 B After Width: | Height: | Size: 244 B |
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
2
main.go
|
@ -101,7 +101,7 @@ func initFileSystem(binPath string) (stuffbin.FileSystem, error) {
|
||||||
|
|
||||||
// The frontend app's static assets are aliased to /frontend
|
// The frontend app's static assets are aliased to /frontend
|
||||||
// so that they are accessible at localhost:port/frontend/static/ ...
|
// so that they are accessible at localhost:port/frontend/static/ ...
|
||||||
"frontend/my/build:/frontend",
|
"frontend/build:/frontend",
|
||||||
}
|
}
|
||||||
|
|
||||||
fs, err = stuffbin.NewLocalFS("/", files...)
|
fs, err = stuffbin.NewLocalFS("/", files...)
|
||||||
|
|