Geni 开源项目使用教程
1. 项目目录结构及介绍
Geni 项目的目录结构如下:
geni/
├── app/
│ ├── controllers/
│ ├── models/
│ ├── views/
│ └── routes.js
├── config/
│ ├── database.js
│ ├── environment.js
│ └── settings.js
├── public/
│ ├── css/
│ ├── js/
│ └── images/
├── test/
│ ├── unit/
│ └── integration/
├── .env
├── .gitignore
├── package.json
├── README.md
└── server.js
目录结构介绍
-
app/: 包含应用程序的主要代码。
- controllers/: 存放控制器文件,处理业务逻辑。
- models/: 存放数据模型文件,定义数据结构和操作。
- views/: 存放视图文件,用于渲染前端页面。
- routes.js: 定义应用程序的路由。
-
config/: 包含项目的配置文件。
- database.js: 数据库配置文件。
- environment.js: 环境变量配置文件。
- settings.js: 其他全局设置。
-
public/: 存放静态资源文件。
- css/: 存放样式表文件。
- js/: 存放JavaScript文件。
- images/: 存放图片文件。
-
test/: 包含测试代码。
- unit/: 单元测试文件。
- integration/: 集成测试文件。
-
.env: 环境变量文件,用于存储敏感信息。
-
.gitignore: Git忽略文件,指定不需要版本控制的文件。
-
package.json: 项目依赖和脚本配置文件。
-
README.md: 项目说明文档。
-
server.js: 项目启动文件。
2. 项目启动文件介绍
server.js
server.js
是 Geni 项目的启动文件,负责启动应用程序。以下是 server.js
的主要内容:
const express = require('express');
const app = express();
const config = require('./config/environment');
const routes = require('./app/routes');
// 配置中间件
app.use(express.json());
app.use(express.urlencoded({ extended: true }));
// 设置静态文件目录
app.use(express.static('public'));
// 加载路由
app.use('/', routes);
// 启动服务器
app.listen(config.port, () => {
console.log(`Server is running on port ${config.port}`);
});
启动步骤
- 确保已经安装了 Node.js 和 npm。
- 在项目根目录下运行
npm install
安装依赖。 - 运行
node server.js
启动服务器。
3. 项目的配置文件介绍
config/database.js
database.js
文件用于配置数据库连接信息。示例如下:
module.exports = {
development: {
username: 'root',
password: 'password',
database: 'geni_dev',
host: '127.0.0.1',
dialect: 'mysql',
},
production: {
username: process.env.DB_USERNAME,
password: process.env.DB_PASSWORD,
database: process.env.DB_NAME,
host: process.env.DB_HOST,
dialect: 'mysql',
},
};
config/environment.js
environment.js
文件用于配置环境变量。示例如下:
module.exports = {
port: process.env.PORT || 3000,
env: process.env.NODE_ENV || 'development',
};
config/settings.js
settings.js
文件用于配置其他全局设置。示例如下:
module.exports = {
apiKey: process.env.API_KEY || 'default_api_key',
maxUploadSize: '5mb',
};
.env
.env
文件用于存储敏感信息,如数据库密码、API密钥等。示例如下:
DB_USERNAME=root
DB_PASSWORD=password
DB_NAME=geni_dev
DB_HOST=127.0.0.1
API_KEY=your_api_key_here
通过以上配置文件,可以灵活地管理项目的各种设置,确保项目在不同环境下都能正常运行。