Nodejs Codekart 框架手册 - 目录结构

Nodejs Codekart 框架手册 - 目录结构

Codekart

Codekart 是一个基于 Node.js 的前后端一体化网站开发框架,架构设计部分借鉴了 PHP 框架 codeigniter,精简、方便、高性能而不失强大。

Github地址:https://github.com/myworld4059/codekart

Codekart 文件目录结构:


│
├─ app ─┐ //程序文件夹,开发工作在此进行
│         ├─ config ─┐ //配置文件夹
│         │            ├─ db ─┐ //数据库配置文件夹
│         │            │        ├─ mysql.js
│         │            │        └─ redis.js
│         │            ├─ config.js //常用配置文件(如监听端口、开启debug模式等)
│         │            ├─ define.js //定义的一些常量 (如mysql或redis的key名称等)
│         │            └─ route.js //url路由文件夹,定义或重定向url请求处理程序
│         │            └─ website.js //网站信息,如名称、域名等
│         ├─ api //api接口处理程序(解析get和post数据成可用字段)
│         ├─ binary //二进制post数据处理,比如上传文件等(未解析post数据)
│         ├─ lib //库模块文件夹,用来放置第三方的库或模块
│         ├─ tool //工具箱,放置自己写的常用工具或方法等
│         ├─ model //数据处理模块,一般和数据库操作相关
│         ├─ view //web页面配置(选择css、js、tpl模块,获取html模板数据)
│         └─ resource ─┐ //web页面素材
│                         ├─ js //js前端页面模块
│                         ├─ css //css前端页面模块
│                         └─ tpl //html模板前端页面模块
│
├─ framework ─┐ 
│               ├─ config //框架配置文件夹
│               ├─ core ─┐ //框架核心
│               │          ├─ db //数据库支持核心
│               │          └─ view //web页面编译核心
│               ├─ lib //框架库
│               ├─ resource //框架资源
│               └─ tool //框架工具
│
├─ node_modules //Node.js 第三方模块 比如node-mysql、mongoose等(可放置在其他node包处理器可索引的位置)
│
├─ static ─┐ //静态文件目录(放置所有的静态文件,比如图片、js库、favicon.ico等等)
│            ├─ css //css引用文件,codetank编译的css模块,组合压缩成一个文件,放置在此处
│            ├─ cssimg //css图片,在编写css时,<%cssimg%>将被编译程序替换成这里的路径
│            ├─ csslib //css第三方库文件 如 button.css 等
│            ├─ js //js引用文件,codetank编译的js模块,组合压缩成一个文件,放置在此处
│            ├─ jslib //js第三方库文件,如 JQuery.js 等
│            └─ webfont //web字体
│


5 回复

Nodejs Codekart 框架手册 - 目录结构

引言

Codekart 是一个基于 Node.js 的前后端一体化网站开发框架,架构设计部分借鉴了 PHP 框架 CodeIgniter。该框架旨在提供一个精简、方便且高性能的开发环境。

GitHub 地址

文件目录结构

│
├─ app ─┐ //程序文件夹, 开发工作在此进行
│         ├─ config ─┐ //配置文件夹
│         │            ├─ db ─┐ //数据库配置文件夹
│         │            │        ├─ mysql.js
│         │            │        └─ redis.js
│         │            ├─ config.js //常用配置文件(如监听端口、开启debug模式等)
│         │            ├─ define.js //定义的一些常量 (如mysql或redis的key名称等)
│         │            └─ route.js //url路由文件夹,定义或重定向url请求处理程序
│         │            └─ website.js //网站信息,如名称、域名等
│         ├─ api //api接口处理程序(解析get和post数据成可用字段)
│         ├─ binary //二进制post数据处理,比如上传文件等(未解析post数据)
│         ├─ lib //库模块文件夹,用来放置第三方的库或模块
│         ├─ tool //工具箱,放置自己写的常用工具或方法等
│         ├─ model //数据处理模块,一般和数据库操作相关
│         ├─ view //web页面配置(选择css、js、tpl模块,获取html模板数据)
│         └─ resource ─┐ //web页面素材
│                         ├─ js //js前端页面模块
│                         ├─ css //css前端页面模块
│                         └─ tpl //html模板前端页面模块
│
├─ framework ─┐ 
│               ├─ config //框架配置文件夹
│               ├─ core ─┐ //框架核心
│               │          ├─ db //数据库支持核心
│               │          └─ view //web页面编译核心
│               ├─ lib //框架库
│               ├─ resource //框架资源
│               └─ tool //框架工具
│
├─ node_modules //Node.js 第三方模块 比如node-mysql、mongoose等(可放置在其他node包处理器可索引的位置)
│
├─ static ─┐ //静态文件目录(放置所有的静态文件,比如图片、js库、favicon.ico等等)
│            ├─ css //css引用文件,codetank编译的css模块,组合压缩成一个文件,放置在此处
│            ├─ cssimg //css图片,在编写css时,<%cssimg%>将被编译程序替换成这里的路径
│            ├─ csslib //css第三方库文件 如 button.css 等
│            ├─ js //js引用文件,codetank编译的js模块,组合压缩成一个文件,放置在此处
│            ├─ jslib //js第三方库文件,如 JQuery.js 等
│            └─ webfont //web字体
│

目录详解

  1. app

    • config: 存放各种配置文件,例如数据库配置、常用配置、路由配置等。
      // app/config/db/mysql.js
      module.exports = {
        host: 'localhost',
        user: 'root',
        password: 'password',
        database: 'dbname'
      };
      
    • api: 处理API请求,解析GET和POST数据。
      // app/api/user.js
      const express = require('express');
      const router = express.Router();
      
      router.get('/user', (req, res) => {
        res.json({ message: 'User API' });
      });
      
      module.exports = router;
      
    • model: 数据处理模块,通常与数据库操作相关。
      // app/model/user.js
      const mysql = require('../config/db/mysql');
      
      exports.getUserById = (id) => {
        return new Promise((resolve, reject) => {
          mysql.query(`SELECT * FROM users WHERE id = ${id}`, (err, results) => {
            if (err) reject(err);
            resolve(results[0]);
          });
        });
      };
      
    • view: Web页面配置,选择CSS、JS、TPL模块,获取HTML模板数据。
      // app/view/index.js
      const fs = require('fs');
      const path = require('path');
      
      exports.renderIndexPage = () => {
        const templatePath = path.join(__dirname, '../resource/tpl/index.tpl');
        const template = fs.readFileSync(templatePath, 'utf8');
        return template.replace(/{{title}}/g, 'Welcome to Codekart');
      };
      
  2. framework

    • core: 框架核心组件,包括数据库支持核心和视图编译核心。
    • lib: 框架使用的第三方库。
    • resource: 框架使用的资源文件。
    • tool: 框架工具。
  3. node_modules

    • 存放所有第三方Node.js模块,如node-mysqlmongoose等。
  4. static

    • 静态文件目录,用于存放图片、CSS、JavaScript库、图标等静态资源文件。

通过上述目录结构和示例代码,您可以更好地理解和使用 Codekart 框架进行项目开发。


挂了哥哥

挂了挂了!

恢复了

Nodejs Codekart 框架手册 - 目录结构

Codekart 是一个基于 Node.js 的前后端一体化网站开发框架,架构设计部分借鉴了 PHP 框架 CodeIgniter。以下是 Codekart 的文件目录结构说明:

根目录结构

├── app
├── framework
├── node_modules
└── static

详细目录结构

  1. app

    • config: 配置文件夹,包含数据库配置和其他常用配置。
      • db: 数据库配置文件夹。
        • mysql.js: MySQL 配置文件。
        • redis.js: Redis 配置文件。
      • config.js: 常用配置文件(如监听端口、开启debug模式等)。
      • define.js: 定义的一些常量(如MySQL或Redis的key名称等)。
      • route.js: URL路由文件夹,定义或重定向URL请求处理程序。
      • website.js: 网站信息,如名称、域名等。
    • api: API接口处理程序(解析GET和POST数据成可用字段)。
    • binary: 二进制POST数据处理(例如上传文件等,未解析POST数据)。
    • lib: 库模块文件夹,放置第三方的库或模块。
    • tool: 工具箱,放置自己写的常用工具或方法。
    • model: 数据处理模块,一般和数据库操作相关。
    • view: Web页面配置(选择CSS、JS、TPL模块,获取HTML模板数据)。
    • resource: Web页面素材。
      • js: JS前端页面模块。
      • css: CSS前端页面模块。
      • tpl: HTML模板前端页面模块。
  2. framework

    • config: 框架配置文件夹。
    • core: 框架核心。
      • db: 数据库支持核心。
      • view: Web页面编译核心。
    • lib: 框架库。
    • resource: 框架资源。
    • tool: 框架工具。
  3. node_modules: Node.js 第三方模块(如 node-mysqlmongoose 等),可放置在其他Node包处理器可索引的位置。

  4. static

    • css: CSS引用文件,Codetank编译的CSS模块,组合压缩成一个文件,放置在此处。
    • cssimg: CSS图片,在编写CSS时 <%cssimg%> 将被编译程序替换成这里的路径。
    • csslib: CSS第三方库文件(如 button.css 等)。
    • js: JS引用文件,Codetank编译的JS模块,组合压缩成一个文件,放置在此处。
    • jslib: JS第三方库文件(如 JQuery.js 等)。
    • webfont: Web字体。

通过这种目录结构,开发者可以更清晰地组织和管理代码,确保项目的可维护性和扩展性。

回到顶部