{"id":20792241,"url":"https://github.com/60late/vue-nodejs-blog","last_synced_at":"2026-03-06T17:04:06.139Z","repository":{"id":37431577,"uuid":"145497583","full_name":"60late/vue-nodejs-blog","owner":"60late","description":"vue+nodejs+express+mysql+ueditor 前后端分离博客项目","archived":false,"fork":false,"pushed_at":"2025-03-04T01:59:30.000Z","size":2241,"stargazers_count":86,"open_issues_count":8,"forks_count":28,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-05-26T08:55:19.535Z","etag":null,"topics":["express","javascript","nodejs","vue"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/60late.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2018-08-21T02:47:58.000Z","updated_at":"2025-05-21T08:05:42.000Z","dependencies_parsed_at":"2024-11-17T15:51:04.079Z","dependency_job_id":"b4b3314b-c9d1-47bc-a96f-0e8ae950f551","html_url":"https://github.com/60late/vue-nodejs-blog","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/60late/vue-nodejs-blog","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/60late%2Fvue-nodejs-blog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/60late%2Fvue-nodejs-blog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/60late%2Fvue-nodejs-blog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/60late%2Fvue-nodejs-blog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/60late","download_url":"https://codeload.github.com/60late/vue-nodejs-blog/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/60late%2Fvue-nodejs-blog/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30186780,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-06T14:42:24.748Z","status":"ssl_error","status_checked_at":"2026-03-06T14:42:14.925Z","response_time":250,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["express","javascript","nodejs","vue"],"created_at":"2024-11-17T15:49:49.977Z","updated_at":"2026-03-06T17:04:01.120Z","avatar_url":"https://github.com/60late.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# vue-nodejs-blog\n\nAlphabet的个人博客项目  Ver0.0\n\n# 前言\n\n\n本项目是一个前后端分离的vue+nodejs博客项目，一路踩坑边学边用摸爬滚打终于初步上线\n\n所有页面没有使用任何第三方ui框架，所有页面效果，页面功能均由个人独立完成\n\n如果该博客对你有帮助，欢迎star和issue！\n\n![a](https://i.loli.net/2018/08/21/5b7b891320be3.gif)\n\n# 后记\n\n 该项目始于2018年，技术栈是vue2.x，是作者初学vue时的作品。  \n 现在过了两年回头再看本项目，确有诸多不足，但项目中用到的一些工具和方法今日来看依然没有过时，作为入门的项目仍然尚可。  \n vue 3.0 今年已经面世，本项目今后不会再进行功能性的更新，但会偶尔解决一些依赖的问题 （至少能保证项目能跑起来）  \n 有时间的话，或许会重构？  \n\n\u003cp align=\"right\"\u003e 祝好 \u003c/p\u003e\n\u003cp align=\"right\"\u003e 60late \u003c/p\u003e\n\n# 技术栈\n\n+ 前端：vue+vue-router+vuex+axios\n+ 后端：node.js+express+mysql\n+ 富文本编辑器：ueditor\n\n# 项目运行\n\n```\n// 安装前后端依赖\nnpm run init\n\n// 开启前端服务\nnpm run dev\n\n// 开启后端服务\ncd server\nnode app.js\n\n```\n\n之后浏览器打开localhost:8080 即可访问，如果依赖安装部分出现了问题，可以使用以下命令手动处理：\n\n```\n// 安装前端依赖\nnpm run install\n\n// 安装后端依赖\ncd server\nnpm run install\n\n// 初始化数据库\ncd server\nnode database.js\n```\n\n!!!注意\n----\n\n你的电脑上必须安装了mysql，并且mysql的相关配置如下才能进行正常运行。\n\n```\n    host:'localhost',\n    user:'root',\n    password:'',\n```\n\n如果上面的配置和你电脑上的配置不同，那么你可以修改server/db.js 和server/database.js 里面的相应内容之后，再按照上述步骤启动项目\n\n后台管理页面的测试账号和密码都是:admin\n\n# 实现功能\n\n### ver 0.0 版本实现的功能（已实现）\n\nver 0.0版本完成了基础的文章展示，文章搜索，登录验证，文章管理等相关功能。\n\n+ 前台展示（文章阅读、文章评论、上一篇下一篇文章，根据标签、关键词搜索相应文章）\n+ 后台登录（使用Json web token验证登录状态,axios对返回信息拦截控制路由状态）\n+ 后台管理（文章发布与设为草稿，文章修改，文章删除，评论管理，修改我的信息）\n\n# 项目结构\n\n```\n主要目录结构如下：\n\n│\n├─server            //后端目录\n│  ├─app.js         //后端入口\n│  ├─database.js    //数据库初始化文件\n│  ├─db.js          //封装数据库操作文件\n│  ├─public         //后台静态目录\n│  │  ├─file\n│  │  ├─img\n│  │  ├─file\n│  │  ├─img\n│  │  ├─stylesheets\n│  │  ├─ueditor     //ueditor相关的配置文件\n│  │  └─video\n│  ├─routes\n│  │  ├─frontend    //前端接口\n│  │  ├─backend     //后端接口\n│  │  ├─user        //用户登陆信息接口\n│  └─util           //后端公用方法\n├─src               //前端目录\n│  ├─assets\n│  ├─components     //全局公用组件\n│  ├─fetch          //封装axios请求  \n│  ├─mock           //mock.js生成模拟数据（用于前后端分离调试接口阶段）\n│  ├─router         //vue-router路由控制\n│  ├─store          //vuex 状态管理\n│  ├─util           //全局共用方法\n│  └─views\n│      ├─aboutMe  \n│      ├─admin      //后台view层\n│      ├─file\n│      ├─home\n│      ├─music\n│      ├─myApp\n│      ├─nav        //导航栏\n│      ├─search\n│      ├─sense\n│      └─tech\n└─static            //静态文件\n    ├─css\n    ├─img\n    └─UE\n\n```\n\n# 项目预览\n\n## 前台页面\n\n地址： \u003chttp://localhost:8080/#/\u003e\n\n#### 文章预览页面\n\n![](https://i.loli.net/2018/08/30/5b87d5cbed6c4.png)\n\n#### 文章详情页\n\n![](https://i.loli.net/2018/08/30/5b87d60846c78.png)\n\n![](https://i.loli.net/2018/08/30/5b87d62b3878b.png)\n\n#### 站内搜索页\n\n![](https://i.loli.net/2018/08/21/5b7b8e415378e.png)\n\n## 后台管理页面\n\n地址： \u003chttp://localhost:8080/#/admin\u003e\n账号密码都是 admin\n\n#### 文章管理列表\n\n![](https://i.loli.net/2018/08/21/5b7b8f9734c20.png)\n\n#### 修改文章|创建新文章\n\n![](https://i.loli.net/2018/08/30/5b87d65e8650d.png)\n\n#### 更改我的信息\n\n![](https://i.loli.net/2018/08/21/5b7b905c40483.png)\n\n# 许可\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F60late%2Fvue-nodejs-blog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F60late%2Fvue-nodejs-blog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F60late%2Fvue-nodejs-blog/lists"}