@lambertkeith/spec-go 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (143) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +163 -0
  3. package/dist/index.d.ts +2 -0
  4. package/dist/index.js +850 -0
  5. package/dist/index.js.map +1 -0
  6. package/package.json +46 -0
  7. package/templates/django/README.md +27 -0
  8. package/templates/django/_gitignore +20 -0
  9. package/templates/django/_template.json +14 -0
  10. package/templates/django/manage.py +22 -0
  11. package/templates/django/project_name/__init__.py +1 -0
  12. package/templates/django/project_name/asgi.py +11 -0
  13. package/templates/django/project_name/settings.py +75 -0
  14. package/templates/django/project_name/urls.py +16 -0
  15. package/templates/django/project_name/wsgi.py +11 -0
  16. package/templates/django/pyproject.toml +20 -0
  17. package/templates/empty/README.md +3 -0
  18. package/templates/empty/_gitignore +6 -0
  19. package/templates/empty/_template.json +6 -0
  20. package/templates/express-ts/README.md +27 -0
  21. package/templates/express-ts/_gitignore +7 -0
  22. package/templates/express-ts/_template.json +13 -0
  23. package/templates/express-ts/package.json +23 -0
  24. package/templates/express-ts/src/index.ts +17 -0
  25. package/templates/express-ts/src/middleware/error-handler.ts +14 -0
  26. package/templates/express-ts/src/routes/index.ts +11 -0
  27. package/templates/express-ts/tsconfig.json +17 -0
  28. package/templates/express-ts/tsup.config.ts +9 -0
  29. package/templates/fastapi/README.md +21 -0
  30. package/templates/fastapi/_gitignore +16 -0
  31. package/templates/fastapi/_template.json +14 -0
  32. package/templates/fastapi/pyproject.toml +21 -0
  33. package/templates/fastapi/src/project_name/__init__.py +1 -0
  34. package/templates/fastapi/src/project_name/main.py +20 -0
  35. package/templates/fastapi/src/project_name/routes/__init__.py +8 -0
  36. package/templates/flask/README.md +15 -0
  37. package/templates/flask/_gitignore +17 -0
  38. package/templates/flask/_template.json +14 -0
  39. package/templates/flask/pyproject.toml +19 -0
  40. package/templates/flask/src/project_name/__init__.py +1 -0
  41. package/templates/flask/src/project_name/app.py +15 -0
  42. package/templates/flask/src/project_name/routes/__init__.py +8 -0
  43. package/templates/fullstack-react-node/README.md +35 -0
  44. package/templates/fullstack-react-node/_gitignore +7 -0
  45. package/templates/fullstack-react-node/_template.json +14 -0
  46. package/templates/fullstack-react-node/backend/package.json +22 -0
  47. package/templates/fullstack-react-node/backend/src/index.ts +20 -0
  48. package/templates/fullstack-react-node/backend/tsconfig.json +17 -0
  49. package/templates/fullstack-react-node/backend/tsup.config.ts +9 -0
  50. package/templates/fullstack-react-node/frontend/index.html +12 -0
  51. package/templates/fullstack-react-node/frontend/package.json +22 -0
  52. package/templates/fullstack-react-node/frontend/src/App.css +16 -0
  53. package/templates/fullstack-react-node/frontend/src/App.tsx +22 -0
  54. package/templates/fullstack-react-node/frontend/src/main.tsx +9 -0
  55. package/templates/fullstack-react-node/frontend/tsconfig.json +20 -0
  56. package/templates/fullstack-react-node/frontend/vite.config.ts +14 -0
  57. package/templates/fullstack-react-node/package.json +10 -0
  58. package/templates/fullstack-react-node/pnpm-workspace.yaml +3 -0
  59. package/templates/fullstack-react-python/Makefile +35 -0
  60. package/templates/fullstack-react-python/README.md +43 -0
  61. package/templates/fullstack-react-python/_gitignore +18 -0
  62. package/templates/fullstack-react-python/_template.json +25 -0
  63. package/templates/fullstack-react-python/backend/pyproject.toml +21 -0
  64. package/templates/fullstack-react-python/backend/src/project_name/__init__.py +1 -0
  65. package/templates/fullstack-react-python/backend/src/project_name/main.py +29 -0
  66. package/templates/fullstack-react-python/backend/src/project_name/routes/__init__.py +8 -0
  67. package/templates/fullstack-react-python/frontend/index.html +12 -0
  68. package/templates/fullstack-react-python/frontend/package.json +22 -0
  69. package/templates/fullstack-react-python/frontend/src/App.css +16 -0
  70. package/templates/fullstack-react-python/frontend/src/App.tsx +22 -0
  71. package/templates/fullstack-react-python/frontend/src/main.tsx +9 -0
  72. package/templates/fullstack-react-python/frontend/tsconfig.json +20 -0
  73. package/templates/fullstack-react-python/frontend/vite.config.ts +14 -0
  74. package/templates/fullstack-vue-node/README.md +35 -0
  75. package/templates/fullstack-vue-node/_gitignore +7 -0
  76. package/templates/fullstack-vue-node/_template.json +14 -0
  77. package/templates/fullstack-vue-node/backend/package.json +22 -0
  78. package/templates/fullstack-vue-node/backend/src/index.ts +20 -0
  79. package/templates/fullstack-vue-node/backend/tsconfig.json +17 -0
  80. package/templates/fullstack-vue-node/backend/tsup.config.ts +9 -0
  81. package/templates/fullstack-vue-node/frontend/index.html +12 -0
  82. package/templates/fullstack-vue-node/frontend/package.json +20 -0
  83. package/templates/fullstack-vue-node/frontend/src/App.vue +41 -0
  84. package/templates/fullstack-vue-node/frontend/src/main.ts +4 -0
  85. package/templates/fullstack-vue-node/frontend/src/vite-env.d.ts +1 -0
  86. package/templates/fullstack-vue-node/frontend/tsconfig.json +20 -0
  87. package/templates/fullstack-vue-node/frontend/vite.config.ts +14 -0
  88. package/templates/fullstack-vue-node/package.json +10 -0
  89. package/templates/fullstack-vue-node/pnpm-workspace.yaml +3 -0
  90. package/templates/next-ts/README.md +26 -0
  91. package/templates/next-ts/_gitignore +34 -0
  92. package/templates/next-ts/_template.json +13 -0
  93. package/templates/next-ts/next.config.ts +7 -0
  94. package/templates/next-ts/package.json +22 -0
  95. package/templates/next-ts/src/app/globals.css +21 -0
  96. package/templates/next-ts/src/app/layout.tsx +19 -0
  97. package/templates/next-ts/src/app/page.tsx +10 -0
  98. package/templates/next-ts/tsconfig.json +27 -0
  99. package/templates/node-ts/README.md +21 -0
  100. package/templates/node-ts/_gitignore +7 -0
  101. package/templates/node-ts/_template.json +16 -0
  102. package/templates/node-ts/package.json +19 -0
  103. package/templates/node-ts/src/index.ts +1 -0
  104. package/templates/node-ts/tsconfig.json +17 -0
  105. package/templates/node-ts/tsup.config.ts +9 -0
  106. package/templates/python-uv/README.md +22 -0
  107. package/templates/python-uv/_gitignore +30 -0
  108. package/templates/python-uv/_template.json +14 -0
  109. package/templates/python-uv/pyproject.toml +20 -0
  110. package/templates/python-uv/src/project_name/__init__.py +10 -0
  111. package/templates/python-uv/src/project_name/__main__.py +4 -0
  112. package/templates/react-ts/_gitignore +6 -0
  113. package/templates/react-ts/_template.json +13 -0
  114. package/templates/react-ts/index.html +13 -0
  115. package/templates/react-ts/package.json +23 -0
  116. package/templates/react-ts/src/App.css +14 -0
  117. package/templates/react-ts/src/App.tsx +12 -0
  118. package/templates/react-ts/src/index.css +11 -0
  119. package/templates/react-ts/src/main.tsx +10 -0
  120. package/templates/react-ts/tsconfig.json +20 -0
  121. package/templates/react-ts/vite.config.ts +6 -0
  122. package/templates/springboot/.mvn/wrapper/maven-wrapper.properties +2 -0
  123. package/templates/springboot/README.md +27 -0
  124. package/templates/springboot/_gitignore +36 -0
  125. package/templates/springboot/_template.json +14 -0
  126. package/templates/springboot/mvnw +19 -0
  127. package/templates/springboot/mvnw.cmd +13 -0
  128. package/templates/springboot/pom.xml +46 -0
  129. package/templates/springboot/src/main/java/com/example/project_name/Application.java +12 -0
  130. package/templates/springboot/src/main/java/com/example/project_name/controller/HelloController.java +25 -0
  131. package/templates/springboot/src/main/resources/application.yml +6 -0
  132. package/templates/springboot/src/test/java/com/example/project_name/ApplicationTests.java +12 -0
  133. package/templates/template.config.json +102 -0
  134. package/templates/vue-ts/_gitignore +6 -0
  135. package/templates/vue-ts/_template.json +13 -0
  136. package/templates/vue-ts/index.html +13 -0
  137. package/templates/vue-ts/package.json +20 -0
  138. package/templates/vue-ts/src/App.vue +37 -0
  139. package/templates/vue-ts/src/main.ts +5 -0
  140. package/templates/vue-ts/src/style.css +11 -0
  141. package/templates/vue-ts/src/vite-env.d.ts +7 -0
  142. package/templates/vue-ts/tsconfig.json +20 -0
  143. package/templates/vue-ts/vite.config.ts +6 -0
@@ -0,0 +1,22 @@
1
+ # {{projectName}}
2
+
3
+ Python 项目,使用 uv 包管理器
4
+
5
+ ## 开发
6
+
7
+ ```bash
8
+ uv run python -m {{projectName}}
9
+ ```
10
+
11
+ ## 测试
12
+
13
+ ```bash
14
+ uv run pytest
15
+ ```
16
+
17
+ ## 格式化
18
+
19
+ ```bash
20
+ uv run ruff check --fix
21
+ uv run ruff format
22
+ ```
@@ -0,0 +1,30 @@
1
+ # Byte-compiled
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # Distribution
7
+ dist/
8
+ build/
9
+ *.egg-info/
10
+
11
+ # Virtual environments
12
+ .venv/
13
+ venv/
14
+ ENV/
15
+
16
+ # IDE
17
+ .idea/
18
+ .vscode/
19
+ *.swp
20
+
21
+ # Testing
22
+ .pytest_cache/
23
+ .coverage
24
+ htmlcov/
25
+
26
+ # Misc
27
+ .DS_Store
28
+ *.log
29
+ .env
30
+ .env.local
@@ -0,0 +1,14 @@
1
+ {
2
+ "description": "Python 项目模板 (使用 uv)",
3
+ "packageManager": "uv",
4
+ "postInit": [
5
+ {
6
+ "command": "uv sync",
7
+ "description": "安装依赖"
8
+ }
9
+ ],
10
+ "fileRenames": {
11
+ "_gitignore": ".gitignore",
12
+ "project_name": "{{projectName}}"
13
+ }
14
+ }
@@ -0,0 +1,20 @@
1
+ [project]
2
+ name = "{{projectName}}"
3
+ version = "0.1.0"
4
+ description = ""
5
+ readme = "README.md"
6
+ requires-python = ">=3.11"
7
+ dependencies = []
8
+
9
+ [project.scripts]
10
+ {{projectName}} = "{{projectName}}:main"
11
+
12
+ [build-system]
13
+ requires = ["hatchling"]
14
+ build-backend = "hatchling.build"
15
+
16
+ [tool.uv]
17
+ dev-dependencies = [
18
+ "pytest>=8.0.0",
19
+ "ruff>=0.8.0",
20
+ ]
@@ -0,0 +1,10 @@
1
+ """{{projectName}} - 主入口"""
2
+
3
+
4
+ def main() -> None:
5
+ """程序入口函数"""
6
+ print(f"Hello from {{projectName}}!")
7
+
8
+
9
+ if __name__ == "__main__":
10
+ main()
@@ -0,0 +1,4 @@
1
+ from . import main
2
+
3
+ if __name__ == "__main__":
4
+ main()
@@ -0,0 +1,6 @@
1
+ node_modules/
2
+ dist/
3
+ *.log
4
+ .DS_Store
5
+ .env
6
+ .env.local
@@ -0,0 +1,13 @@
1
+ {
2
+ "description": "React + TypeScript 项目模板",
3
+ "packageManager": "pnpm",
4
+ "postInit": [
5
+ {
6
+ "command": "pnpm install",
7
+ "description": "安装依赖"
8
+ }
9
+ ],
10
+ "fileRenames": {
11
+ "_gitignore": ".gitignore"
12
+ }
13
+ }
@@ -0,0 +1,13 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" type="image/svg+xml" href="/vite.svg" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>{{projectName}}</title>
8
+ </head>
9
+ <body>
10
+ <div id="root"></div>
11
+ <script type="module" src="/src/main.tsx"></script>
12
+ </body>
13
+ </html>
@@ -0,0 +1,23 @@
1
+ {
2
+ "name": "{{projectName}}",
3
+ "private": true,
4
+ "version": "0.1.0",
5
+ "type": "module",
6
+ "scripts": {
7
+ "dev": "vite",
8
+ "build": "tsc -b && vite build",
9
+ "lint": "eslint .",
10
+ "preview": "vite preview"
11
+ },
12
+ "dependencies": {
13
+ "react": "^18.3.1",
14
+ "react-dom": "^18.3.1"
15
+ },
16
+ "devDependencies": {
17
+ "@types/react": "^18.3.18",
18
+ "@types/react-dom": "^18.3.5",
19
+ "@vitejs/plugin-react": "^4.3.4",
20
+ "typescript": "^5.7.3",
21
+ "vite": "^6.0.7"
22
+ }
23
+ }
@@ -0,0 +1,14 @@
1
+ .app {
2
+ text-align: center;
3
+ padding: 2rem;
4
+ }
5
+
6
+ h1 {
7
+ color: #333;
8
+ }
9
+
10
+ code {
11
+ background: #f4f4f4;
12
+ padding: 0.2rem 0.4rem;
13
+ border-radius: 4px;
14
+ }
@@ -0,0 +1,12 @@
1
+ import './App.css'
2
+
3
+ function App() {
4
+ return (
5
+ <div className="app">
6
+ <h1>{{projectName}}</h1>
7
+ <p>编辑 <code>src/App.tsx</code> 开始开发</p>
8
+ </div>
9
+ )
10
+ }
11
+
12
+ export default App
@@ -0,0 +1,11 @@
1
+ * {
2
+ margin: 0;
3
+ padding: 0;
4
+ box-sizing: border-box;
5
+ }
6
+
7
+ body {
8
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
9
+ -webkit-font-smoothing: antialiased;
10
+ -moz-osx-font-smoothing: grayscale;
11
+ }
@@ -0,0 +1,10 @@
1
+ import { StrictMode } from 'react'
2
+ import { createRoot } from 'react-dom/client'
3
+ import App from './App.tsx'
4
+ import './index.css'
5
+
6
+ createRoot(document.getElementById('root')!).render(
7
+ <StrictMode>
8
+ <App />
9
+ </StrictMode>,
10
+ )
@@ -0,0 +1,20 @@
1
+ {
2
+ "compilerOptions": {
3
+ "target": "ES2020",
4
+ "useDefineForClassFields": true,
5
+ "lib": ["ES2020", "DOM", "DOM.Iterable"],
6
+ "module": "ESNext",
7
+ "skipLibCheck": true,
8
+ "moduleResolution": "bundler",
9
+ "allowImportingTsExtensions": true,
10
+ "isolatedModules": true,
11
+ "moduleDetection": "force",
12
+ "noEmit": true,
13
+ "jsx": "react-jsx",
14
+ "strict": true,
15
+ "noUnusedLocals": true,
16
+ "noUnusedParameters": true,
17
+ "noFallthroughCasesInSwitch": true
18
+ },
19
+ "include": ["src"]
20
+ }
@@ -0,0 +1,6 @@
1
+ import { defineConfig } from 'vite'
2
+ import react from '@vitejs/plugin-react'
3
+
4
+ export default defineConfig({
5
+ plugins: [react()],
6
+ })
@@ -0,0 +1,2 @@
1
+ distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.9.6/apache-maven-3.9.6-bin.zip
2
+ wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar
@@ -0,0 +1,27 @@
1
+ # {{projectName}}
2
+
3
+ Spring Boot 项目
4
+
5
+ ## 开发
6
+
7
+ ```bash
8
+ ./mvnw spring-boot:run
9
+ ```
10
+
11
+ ## 构建
12
+
13
+ ```bash
14
+ ./mvnw clean package
15
+ ```
16
+
17
+ ## 测试
18
+
19
+ ```bash
20
+ ./mvnw test
21
+ ```
22
+
23
+ ## 运行 JAR
24
+
25
+ ```bash
26
+ java -jar target/{{projectName}}-0.1.0.jar
27
+ ```
@@ -0,0 +1,36 @@
1
+ HELP.md
2
+ target/
3
+ !.mvn/wrapper/maven-wrapper.jar
4
+ !**/src/main/**/target/
5
+ !**/src/test/**/target/
6
+
7
+ ### STS ###
8
+ .apt_generated
9
+ .classpath
10
+ .factorypath
11
+ .project
12
+ .settings
13
+ .springBeans
14
+ .sts4-cache
15
+
16
+ ### IntelliJ IDEA ###
17
+ .idea
18
+ *.iws
19
+ *.iml
20
+ *.ipr
21
+
22
+ ### NetBeans ###
23
+ /nbproject/private/
24
+ /nbbuild/
25
+ /dist/
26
+ /nbdist/
27
+ /.nb-gradle/
28
+ build/
29
+ !**/src/main/**/build/
30
+ !**/src/test/**/build/
31
+
32
+ ### VS Code ###
33
+ .vscode/
34
+
35
+ ### Mac ###
36
+ .DS_Store
@@ -0,0 +1,14 @@
1
+ {
2
+ "description": "Spring Boot 项目模板",
3
+ "packageManager": "maven",
4
+ "postInit": [
5
+ {
6
+ "command": "./mvnw dependency:resolve",
7
+ "description": "下载依赖"
8
+ }
9
+ ],
10
+ "fileRenames": {
11
+ "_gitignore": ".gitignore",
12
+ "project_name": "{{projectName}}"
13
+ }
14
+ }
@@ -0,0 +1,19 @@
1
+ #!/bin/sh
2
+ # Maven Wrapper script
3
+
4
+ set -e
5
+
6
+ MAVEN_PROJECTBASEDIR="${MAVEN_BASEDIR:-$(cd "$(dirname "$0")" && pwd)}"
7
+ MAVEN_OPTS="${MAVEN_OPTS:-"-Xmx64m"}"
8
+
9
+ # Download maven-wrapper.jar if not present
10
+ WRAPPER_JAR="$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar"
11
+ if [ ! -f "$WRAPPER_JAR" ]; then
12
+ echo "Downloading Maven Wrapper..."
13
+ mkdir -p "$MAVEN_PROJECTBASEDIR/.mvn/wrapper"
14
+ curl -sL https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar -o "$WRAPPER_JAR"
15
+ fi
16
+
17
+ exec java $MAVEN_OPTS \
18
+ -classpath "$WRAPPER_JAR" \
19
+ org.apache.maven.wrapper.MavenWrapperMain "$@"
@@ -0,0 +1,13 @@
1
+ @echo off
2
+ @REM Maven Wrapper script for Windows
3
+
4
+ set MAVEN_PROJECTBASEDIR=%~dp0
5
+ set WRAPPER_JAR=%MAVEN_PROJECTBASEDIR%.mvn\wrapper\maven-wrapper.jar
6
+
7
+ if not exist "%WRAPPER_JAR%" (
8
+ echo Downloading Maven Wrapper...
9
+ mkdir "%MAVEN_PROJECTBASEDIR%.mvn\wrapper" 2>NUL
10
+ powershell -Command "Invoke-WebRequest -Uri 'https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.2.0/maven-wrapper-3.2.0.jar' -OutFile '%WRAPPER_JAR%'"
11
+ )
12
+
13
+ java %MAVEN_OPTS% -classpath "%WRAPPER_JAR%" org.apache.maven.wrapper.MavenWrapperMain %*
@@ -0,0 +1,46 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <project xmlns="http://maven.apache.org/POM/4.0.0"
3
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
5
+ https://maven.apache.org/xsd/maven-4.0.0.xsd">
6
+ <modelVersion>4.0.0</modelVersion>
7
+
8
+ <parent>
9
+ <groupId>org.springframework.boot</groupId>
10
+ <artifactId>spring-boot-starter-parent</artifactId>
11
+ <version>3.4.2</version>
12
+ <relativePath/>
13
+ </parent>
14
+
15
+ <groupId>com.example</groupId>
16
+ <artifactId>{{projectName}}</artifactId>
17
+ <version>0.1.0</version>
18
+ <name>{{projectName}}</name>
19
+ <description>Spring Boot project</description>
20
+
21
+ <properties>
22
+ <java.version>21</java.version>
23
+ </properties>
24
+
25
+ <dependencies>
26
+ <dependency>
27
+ <groupId>org.springframework.boot</groupId>
28
+ <artifactId>spring-boot-starter-web</artifactId>
29
+ </dependency>
30
+
31
+ <dependency>
32
+ <groupId>org.springframework.boot</groupId>
33
+ <artifactId>spring-boot-starter-test</artifactId>
34
+ <scope>test</scope>
35
+ </dependency>
36
+ </dependencies>
37
+
38
+ <build>
39
+ <plugins>
40
+ <plugin>
41
+ <groupId>org.springframework.boot</groupId>
42
+ <artifactId>spring-boot-maven-plugin</artifactId>
43
+ </plugin>
44
+ </plugins>
45
+ </build>
46
+ </project>
@@ -0,0 +1,12 @@
1
+ package com.example.{{projectName}};
2
+
3
+ import org.springframework.boot.SpringApplication;
4
+ import org.springframework.boot.autoconfigure.SpringBootApplication;
5
+
6
+ @SpringBootApplication
7
+ public class Application {
8
+
9
+ public static void main(String[] args) {
10
+ SpringApplication.run(Application.class, args);
11
+ }
12
+ }
@@ -0,0 +1,25 @@
1
+ package com.example.{{projectName}}.controller;
2
+
3
+ import org.springframework.web.bind.annotation.GetMapping;
4
+ import org.springframework.web.bind.annotation.RestController;
5
+
6
+ import java.util.Map;
7
+
8
+ @RestController
9
+ public class HelloController {
10
+
11
+ @GetMapping("/")
12
+ public Map<String, String> index() {
13
+ return Map.of("message", "Welcome to {{projectName}}");
14
+ }
15
+
16
+ @GetMapping("/health")
17
+ public Map<String, String> health() {
18
+ return Map.of("status", "ok");
19
+ }
20
+
21
+ @GetMapping("/api/hello")
22
+ public Map<String, String> hello() {
23
+ return Map.of("message", "Hello, World!");
24
+ }
25
+ }
@@ -0,0 +1,6 @@
1
+ server:
2
+ port: 8080
3
+
4
+ spring:
5
+ application:
6
+ name: {{projectName}}
@@ -0,0 +1,12 @@
1
+ package com.example.{{projectName}};
2
+
3
+ import org.junit.jupiter.api.Test;
4
+ import org.springframework.boot.test.context.SpringBootTest;
5
+
6
+ @SpringBootTest
7
+ class ApplicationTests {
8
+
9
+ @Test
10
+ void contextLoads() {
11
+ }
12
+ }
@@ -0,0 +1,102 @@
1
+ {
2
+ "templates": [
3
+ {
4
+ "name": "node-ts",
5
+ "displayName": "Node.js + TypeScript",
6
+ "description": "Node.js 项目,使用 TypeScript 和 pnpm",
7
+ "dir": "node-ts",
8
+ "category": "single"
9
+ },
10
+ {
11
+ "name": "express-ts",
12
+ "displayName": "Express + TypeScript API",
13
+ "description": "Express.js API 项目,使用 TypeScript",
14
+ "dir": "express-ts",
15
+ "category": "single"
16
+ },
17
+ {
18
+ "name": "react-ts",
19
+ "displayName": "React + TypeScript",
20
+ "description": "React 18 项目,使用 Vite 和 TypeScript",
21
+ "dir": "react-ts",
22
+ "category": "single"
23
+ },
24
+ {
25
+ "name": "vue-ts",
26
+ "displayName": "Vue + TypeScript",
27
+ "description": "Vue 3 项目,使用 Vite 和 TypeScript",
28
+ "dir": "vue-ts",
29
+ "category": "single"
30
+ },
31
+ {
32
+ "name": "next-ts",
33
+ "displayName": "Next.js 全栈",
34
+ "description": "Next.js 14 全栈项目,使用 App Router 和 TypeScript",
35
+ "dir": "next-ts",
36
+ "category": "single"
37
+ },
38
+ {
39
+ "name": "python-uv",
40
+ "displayName": "Python (uv)",
41
+ "description": "Python 项目,使用 uv 包管理器",
42
+ "dir": "python-uv",
43
+ "category": "single"
44
+ },
45
+ {
46
+ "name": "fastapi",
47
+ "displayName": "FastAPI",
48
+ "description": "FastAPI 项目,使用 uv 包管理器",
49
+ "dir": "fastapi",
50
+ "category": "single"
51
+ },
52
+ {
53
+ "name": "django",
54
+ "displayName": "Django",
55
+ "description": "Django 项目,使用 uv 包管理器",
56
+ "dir": "django",
57
+ "category": "single"
58
+ },
59
+ {
60
+ "name": "flask",
61
+ "displayName": "Flask",
62
+ "description": "Flask 项目,使用 uv 包管理器",
63
+ "dir": "flask",
64
+ "category": "single"
65
+ },
66
+ {
67
+ "name": "springboot",
68
+ "displayName": "Spring Boot",
69
+ "description": "Spring Boot 3.x 项目,使用 Maven",
70
+ "dir": "springboot",
71
+ "category": "single"
72
+ },
73
+ {
74
+ "name": "empty",
75
+ "displayName": "空项目",
76
+ "description": "仅包含基础配置的空项目",
77
+ "dir": "empty",
78
+ "category": "single"
79
+ },
80
+ {
81
+ "name": "fullstack-react-node",
82
+ "displayName": "React + Node.js 全栈",
83
+ "description": "前后端分离项目,pnpm workspace",
84
+ "dir": "fullstack-react-node",
85
+ "category": "fullstack"
86
+ },
87
+ {
88
+ "name": "fullstack-vue-node",
89
+ "displayName": "Vue + Node.js 全栈",
90
+ "description": "前后端分离项目,pnpm workspace",
91
+ "dir": "fullstack-vue-node",
92
+ "category": "fullstack"
93
+ },
94
+ {
95
+ "name": "fullstack-react-python",
96
+ "displayName": "React + Python 全栈",
97
+ "description": "前后端分离项目,React + FastAPI",
98
+ "dir": "fullstack-react-python",
99
+ "category": "fullstack"
100
+ }
101
+ ]
102
+ }
@@ -0,0 +1,6 @@
1
+ node_modules/
2
+ dist/
3
+ *.log
4
+ .DS_Store
5
+ .env
6
+ .env.local
@@ -0,0 +1,13 @@
1
+ {
2
+ "description": "Vue + TypeScript 项目模板",
3
+ "packageManager": "pnpm",
4
+ "postInit": [
5
+ {
6
+ "command": "pnpm install",
7
+ "description": "安装依赖"
8
+ }
9
+ ],
10
+ "fileRenames": {
11
+ "_gitignore": ".gitignore"
12
+ }
13
+ }
@@ -0,0 +1,13 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link rel="icon" type="image/svg+xml" href="/vite.svg" />
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
7
+ <title>{{projectName}}</title>
8
+ </head>
9
+ <body>
10
+ <div id="app"></div>
11
+ <script type="module" src="/src/main.ts"></script>
12
+ </body>
13
+ </html>
@@ -0,0 +1,20 @@
1
+ {
2
+ "name": "{{projectName}}",
3
+ "private": true,
4
+ "version": "0.1.0",
5
+ "type": "module",
6
+ "scripts": {
7
+ "dev": "vite",
8
+ "build": "vue-tsc -b && vite build",
9
+ "preview": "vite preview"
10
+ },
11
+ "dependencies": {
12
+ "vue": "^3.5.13"
13
+ },
14
+ "devDependencies": {
15
+ "@vitejs/plugin-vue": "^5.2.1",
16
+ "typescript": "^5.7.3",
17
+ "vite": "^6.0.7",
18
+ "vue-tsc": "^2.2.0"
19
+ }
20
+ }