MCPcopy
hub / github.com/liyupi/mianshiya

github.com/liyupi/mianshiya @main sqlite

repository ↗ · DeepWiki ↗
498 symbols 1,341 edges 265 files 44 documented · 9%
README

面试鸭

All Contributors

一个干净免费的面试刷题网站!

开源版为 React + 云开发 / Node.js 全栈项目,包含网站前台 + 管理员后台的完整前后端代码。

在线使用,吊打面试官:https://mianshiya.com

面试鸭主页

项目背景

如今面试越来越卷了,每场面试必考八股文,所以不得不背诵面试题。

但网上的面试题过于分散、很多面经也是只有问题没有题解,就导致我们需要一个个去搜索、或者关注这号那号去领取别人整理好的面试题,很麻烦。

因此,我做了【面试鸭】,一个专注面试刷题的网站。有了它,大家可以直接一站式在线刷题看题解,告别搜索和求人,大大提高复习效率。希望它能帮助大家拿到理想的 offer。

面试鸭介绍

2024 年,鱼皮带团队上线了新版面试鸭,题目更全面、刷题更方便、背题更省时、题解更优质、知识更丰富、更新更频繁,是鸭鸭的 6 大优势。目标只有一个:帮助大家用更短的时间准备面试,吊打面试官!

  1. 三端同步,刷题更方便:面试鸭支持网页端、小程序和 IDE 插件,全端数据同步,真正做到随时随地刷题,轻松备战求职面试。
  2. 题目全面,命中率高:面试鸭涵盖了 几乎所有主流编程方向 的面试题,Java 后端/ C++ / Python / Go / 前端 / 运维 / 计算机基础 / 408 考研,200+ 题库、9000+ 高频面试题,还有秋招热题、企业真实面经、刷题路线等,帮助你 360° 全方位无死角吊打面试官!
  3. 题解更优质:我们深知大家背题刷题的效率很大程度上取决于题解的质量,所以专门邀请了多位大厂面试官来创作和优化题解,保证题解是正确易懂的。
  4. 更新更频繁:我们现在每天都在高速更新题解、同时优化系统功能。未来也会紧跟面试趋势,持续更新题库和题解,及时添加当下企业面试新题、新知识、新技巧,让你始终走在前列,不要浪费时间在过期的题目和知识上。

本开源项目的优势

如果你是

  • 求职者 👨:高效刷题、把握高频考点,快速分享面经,顺利通过面试
  • 面试官 🧓🏻:快速选题、一键生成试卷,把控面试考点,高效招纳人才
  • 学生 👨‍🎓:了解面试考察重点,明确学习方向,积累小题库,稳步提升
  • 老师 👩‍🏫:了解企业招聘需求,改进教学方向,帮助更多学生走进大厂

  • 干净:界面简洁,纯净无广

  • 免费:永久免费,可赚激励
  • 全面:海量题目,上百方向
  • 共建:全民编辑,共同完善
  • 崭新:持续更新,拥抱变化
  • 效率:灵活选题,高效刷题
  • ~~多端适配(算个毛的优势)~~

本开源项目的功能

🌟 亮点功能 🧪 试验功能 🚀 未来计划(画饼)

  • 题目
  • 浏览题目
    • 折叠解析
  • 🌟 多维度筛选题目(难度、标签、题型)
  • 🌟 多维度排序题目(热度、收藏数、频率)
  • 🌟 题目推荐
  • 🌟 题目遇见次数
  • 🌟 共同编辑解析
  • 精选题目
  • 上传题目
  • 搜索题目
    • 热门搜索
    • 搜索历史
  • 收藏题目
  • 🧪 语音读题
  • 🚀 选题练习
  • 🚀 分析报告
  • 举报
  • 标签
  • 🌟 关注标签
  • 搜索标签
  • 🚀 标签树
  • 回答
  • 🌟 回答题目
  • 精选回答
  • 点赞回答
  • 回复

  • 试卷

  • 🌟 试题篮
  • 🌟 一键组卷
  • 🌟 下载试卷
  • 查看 / 隐藏解析
  • 试卷可见范围(公开 / 私有)
  • 🧪 语音读卷
  • 🚀 试卷打分
  • 用户
  • 设置个人信息
  • 积分
  • 🌟 收藏夹
  • 题目管理
  • 回答管理
  • 试卷管理
  • 消息中心
  • 个人主页
  • 其他
  • 排行榜

项目展示

多维度题目检索和排序:

题目浏览:

试卷浏览:

快速组卷:

技术栈

可先观看:面试鸭技术分享视频

前端

  • 开发框架:React、Umi
  • 脚手架:Ant Design Pro
  • 组件库:Ant Design、Ant Design Components
  • 语法扩展:TypeScript、Less
  • 打包工具:Webpack
  • 代码规范:ESLint、StyleLint、Prettier

后端

  • 主语言:JavaScript(Node.js / 腾讯云云开发)
  • 开发框架:Express(Express Session)
  • 数据库:MongoDB
  • 中间件:Redis、Elasticsearch
  • 对象存储:腾讯云云存储 / 腾讯云 COS

部署

  • web 服务:Nginx
  • Docker 容器、微信云托管
  • CDN 加速

整体架构

仅供参考

面试鸭网站架构图

快速上手

前端

环境要求:Node.js >= 14

安装依赖:

yarn

启动:

yarn start

部署:

yarn build

执行命令后会得到 dist 目录,可以放到自己的 web 服务器指定的路径;也可以使用 Docker 容器部署,将 dist、Dockerfile、docker 目录(文件)一起打包即可。

Node.js 后端

代码均在 server 目录中

请阅读 参考文档

云函数后端

代码均在 cloudfunctions 目录中

请阅读 参考文档

🍊 进一步学习

如果想进一步了解项目的完整制作过程、系统设计、数据库设计、经验感悟等,欢迎加入鱼皮的 编程导航学习圈 ,手把手带大家自己开发出这个项目。

欢迎贡献

项目需要大家的支持,期待更多小伙伴的贡献,你可以:

Contributors ✨

Thanks goes to these wonderful people (emoji key):

程序员鱼皮 🚇 ⚠️ 💻 周靖 🖋 ⚠️ Tai 🖋 ⚠️ 👀 Luo-0518 🖋 ⚠️

This project follows the all-contributors specification. Contributions of any kind welcome!

Extension points exported contracts — how you extend this code

AccessType (Interface)
(no doc)
src/access.ts
DebounceSelectProps (Interface)
(no doc)
src/components/DebounceSelect/index.tsx
AdminLayoutProps (Interface)
(no doc)
src/layouts/AdminLayout.tsx
SimilarQuestionsProps (Interface)
(no doc)
src/pages/QuestionDetail/components/SimilarQuestions/index.tsx
LevelType (Interface)
(no doc)
src/constant/level.ts
ReplySearchParams (Interface)
(no doc)
src/services/reply.ts
SearchHistoryType (Interface)
(no doc)
src/models/searchHistory.d.ts
ListMeetQuestionModalProps (Interface)
(no doc)
src/components/ListMeetQuestionModal/index.tsx

Core symbols most depended-on inside this repo

setRoute
called by 55
server/src/server.js
getLoginUser
called by 35
server/src/service/user/userService.js
toLoginPage
called by 20
src/utils/businessUtils.ts
isAdminUser
called by 20
server/src/utils/bUtils.js
addMessage
called by 9
cloudfunctions/question/reviewQuestion/index.js
onChange
called by 8
src/components/QuestionQueryList/index.tsx
getQuestionTitle
called by 7
src/utils/businessUtils.ts
formatDateTimeStr
called by 7
src/utils/utils.ts

Shape

Function 408
Interface 80
Method 5
Class 4
Enum 1

Languages

TypeScript100%

Modules by API surface

src/services/question.ts13 symbols
src/utils/utils.ts9 symbols
src/services/user.ts9 symbols
src/services/comment.ts9 symbols
src/pages/OpCenter/ManageQuestion/index.tsx9 symbols
src/components/QuestionQueryList/index.tsx9 symbols
src/components/QuestionItem/index.tsx9 symbols
src/components/HeaderSearch/index.tsx9 symbols
src/components/AddSingleOptions/index.tsx9 symbols
src/components/AddMultipleOptions/index.tsx9 symbols
src/utils/businessUtils.ts8 symbols
src/pages/QuestionDetail/index.tsx8 symbols

Dependencies from manifests, versioned

@ant-design/icons4.5.0 · 1×
@ant-design/pro-cli2.0.2 · 1×
@ant-design/pro-descriptions1.9.0 · 1×
@ant-design/pro-form1.43.0 · 1×
@ant-design/pro-layout6.26.0 · 1×
@ant-design/pro-table2.56.0 · 1×
@cloudbase/js-sdk1.7.1 · 1×
@cloudbase/manager-node3.12.1 · 1×
@cloudbase/node-sdk2.7.1 · 1×
@elastic/elasticsearch7.13.0 · 1×
@types/express4.17.0 · 1×
@types/history4.7.2 · 1×

For agents

$ claude mcp add mianshiya \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact