1
0

Update Apps

This commit is contained in:
pooneyy
2025-06-17 22:14:50 +08:00
parent fde1f66d67
commit 7f0fcd8a35
134 changed files with 9589 additions and 3968 deletions

View File

@@ -1,71 +1,72 @@
# OpenResume
OpenResume is a powerful open-source resume builder and resume parser.
OpenResume 是一个强大的开源简历制作工具和简历解析器。
The goal of OpenResume is to provide everyone with free access to a modern professional resume design and enable anyone to apply for jobs with confidence.
OpenResume 的目标是为每个人提供免费的现代专业简历设计,并使任何人都能自信地申请工作。
Official site: [https://open-resume.com](https://open-resume.com)
官方网站: [https://open-resume.com](https://open-resume.com)
## Resume Builder
## 🛠 简历生成器
OpenResume's resume builder allows user to create a modern professional resume easily.
OpenResume 的简历生成器可以让用户轻松创建现代专业的简历。
![Resume Builder Demo](https://i.ibb.co/jzcrrt8/resume-builder-demo-optimize.gif)
It has 5 Core Features:
| <div style="width:285px">**Feature**</div> | **Description** |
|---|---|
| **1. Real Time UI Update** | The resume PDF is updated in real time as you enter your resume information, so you can easily see the final output. |
| **2. Modern Professional Resume Design** | The resume PDF is a modern professional design that adheres to U.S. best practices and is ATS friendly to top ATS platforms such as Greenhouse and Lever. It automatically formats fonts, sizes, margins, bullet points to ensure consistency and avoid human errors. |
| **3. Privacy Focus** | The app only runs locally on your browser, meaning no sign up is required and no data ever leaves your browser, so it gives you peace of mind on your personal data. (Fun fact: Running only locally means the app still works even if you disconnect the internet.) |
| **4. Import From Existing Resume PDF** | If you already have an existing resume PDF, you have the option to import it directly, so you can update your resume design to a modern professional design in literally a few seconds. |
| **5. Successful Track Record** | OpenResume users have landed interviews and offers from top companies, such as Dropbox, Google, Meta to name a few. It has been proven to work and liken by recruiters and hiring managers. |
它有5大核心功能
## 🔍 Resume Parser
| 功能 | 描述 |
| --- | --- |
| **1. 实时界面更新** | 你的简历 PDF 会实时更新,当你输入简历信息时,你可以轻松看到最终输出效果。 |
| **2. 现代专业简历设计** | 简历 PDF 采用了符合美国最佳实践的现代专业设计,并且对 Greenhouse 和 Lever 等顶级 ATS 平台友好。它会自动格式化字体、字号、边距和项目符号,以确保一致性并避免人为错误。 |
| **3. 注重隐私** | 该应用仅在您的浏览器中本地运行,这意味着无需注册,也不会有任何数据离开您的浏览器,因此它能让您对自己的个人数据感到安心。(有趣的是:仅在本地运行意味着即使您断开网络连接,应用仍然可以正常工作。) |
| **4. 从现有简历 PDF 导入** | 如果您已有现有的简历 PDF可以选择直接导入这样您可以在几秒钟内将简历设计更新为现代专业的设计。 |
| **5. 成功的跟踪记录** | OpenResume 用户已经从 Dropbox、Google、Meta 等顶级公司获得面试和录用通知。这已经被证明有效,并受到招聘人员和招聘经理的青睐。 |
OpenResumes second component is the resume parser. For those who have an existing resume, the resume parser can help test and confirm its ATS readability.
## 🔍 简历解析器
OpenResume 的第二个组件是简历解析器。对于已有简历的用户,简历解析器可以帮助测试和确认其在 ATS申请跟踪系统中的可读性。
![Resume Parser Demo](https://i.ibb.co/JvSVwNk/resume-parser-demo-optimize.gif)
You can learn more about the resume parser algorithm in the ["Resume Parser Algorithm Deep Dive" section](https://open-resume.com/resume-parser).
您可以在“ [简历解析器算法深度解析](https://open-resume.com/resume-parser) ”部分了解更多关于简历解析器算法的内容。
## 📚 Tech Stack
## 技术栈
| <div style="width:140px">**Category**</div> | <div style="width:100px">**Choice**</div> | **Descriptions** |
|---|---|---|
| **Language** | [TypeScript](https://github.com/microsoft/TypeScript) | TypeScript is JavaScript with static type checking and helps catch many silly bugs at code time. |
| **UI Library** | [React](https://github.com/facebook/react) | Reacts declarative syntax and component-based architecture make it simple to develop reactive reusable components. |
| **State Management** | [Redux Toolkit](https://github.com/reduxjs/redux-toolkit) | Redux toolkit reduces the boilerplate to set up and update a central redux store, which is used in managing the complex resume state. |
| **CSS Framework** | [Tailwind CSS](https://github.com/tailwindlabs/tailwindcss) | Tailwind speeds up development by providing helpful css utilities and removing the need to context switch between tsx and css files. |
| **Web Framework** | [NextJS 13](https://github.com/vercel/next.js) | Next.js supports static site generation and helps build efficient React webpages that support SEO. |
| **PDF Reader** | [PDF.js](https://github.com/mozilla/pdf.js) | PDF.js reads content from PDF files and is used by the resume parser at its first step to read a resume PDFs content. |
| **PDF Renderer** | [React-pdf](https://github.com/diegomura/react-pdf) | React-pdf creates PDF files and is used by the resume builder to create a downloadable PDF file. |
| 类别 | 选择 | 描述 |
| --- | --- | --- |
| 语言 | TypeScript | TypeScript 是带有静态类型检查的 JavaScript,有助于在代码编写时捕获许多愚蠢的错误。 |
| UI 库 | React | React 的声明式语法和基于组件的架构使其简单易用地开发出响应式的可重用组件。 |
| 状态管理 | Redux Toolkit | Redux toolkit 减少了设置和更新中央 Redux 店面的样板代码,从而在管理复杂的简历状态时更加高效。 |
| CSS Framework | Tailwind CSS | Tailwind 通过提供有用的 CSS 工具类加快了开发速度,并消除了在 tsx 和 css 文件之间切换的需要。 |
| Web 框架 | NextJS 13 | Next.js 支持静态网站生成,并帮助构建支持 SEO 的高效 React 网页。 |
| PDF 读者 | PDF.js | PDF.js 从 PDF 文件中读取内容,并在简历解析的第一步中用于读取简历 PDF 的内容。 |
| PDF 渲染器 | React-pdf | React-pdf 创建 PDF 文件,并且被简历生成器用于创建可下载的 PDF 文件。 |
## 📁 Project Structure
## 📁 项目结构
OpenResume is created with the NextJS web framework and follows its project structure. The source code can be found in `src/app`. There are a total of 4 page routes as shown in the table below. (Code path is relative to `src/app`)
OpenResume 使用 NextJS Web 框架并遵循其项目结构。源代码位于 `src/app`。总共有 4 个页面路由,如下表所示。(代码路径相对于 `src/app`
| <div style="width:115px">**Page Route**</div> | **Code Path** | **Description** |
|---|---|---|
| / | /page.tsx | Home page that contains hero, auto typing resume, steps, testimonials, logo cloud, etc |
| /resume-import | /resume-import/page.tsx | Resume import page, where you can choose to import data from an existing resume PDF. The main component used is `ResumeDropzone` (`/components/ResumeDropzone.tsx`) |
| /resume-builder | /resume-builder/page.tsx | Resume builder page to build and download a resume PDF. The main components used are `ResumeForm` (`/components/ResumeForm`) and `Resume` (`/components/Resume`) |
| /resume-parser | /resume-parser/page.tsx | Resume parser page to test a resumes AST readability. The main library util used is `parseResumeFromPdf` (`/lib/parse-resume-from-pdf`) |
| 页面路由 | 代码路径 | 描述 |
| --- | --- | --- |
| / | /page.tsx | 首页包含英雄横幅、自动输入简历、步骤、客户评价、logo 云等内容 |
| /resume-import | /resume-import/page.tsx | 用于导入简历的页面,可以从中选择从现有简历 PDF 导入数据。主要使用的组件是 ResumeDropzone /components/ResumeDropzone.tsx |
| /resume-builder | /resume-builder/page.tsx | 简历构建页面,用于构建和下载简历 PDF。主要使用的组件是 ResumeForm/components/ResumeForm)和 Resume/components/Resume |
| /resume-parser | /resume-parser/page.tsx | 简历解析页面,用于测试简历的 AST 可读性。主要使用的库是 parseResumeFromPdf (/lib/parse-resume-from-pdf) |
## 💻 Local Development
## 💻 本地开发
### Method 1: npm
### 方法 1: npm
1. Download the repo `git clone https://github.com/xitanggg/open-resume.git`
2. Change the directory `cd open-resume`
3. Install the dependency `npm install`
4. Start a development server `npm run dev`
5. Open your browser and visit [http://localhost:3000](http://localhost:3000) to see OpenResume live
1. 下载仓库 `git clone https://github.com/xitanggg/open-resume.git`
2. 更改目录 `cd open-resume`
3. 安装依赖 `npm install`
4. 启动开发服务器 `npm run dev`
5. 打开浏览器并访问 [http://localhost:3000](http://localhost:3000) 查看 OpenResume 在线版本
### Method 2: Docker
### 方法 2: Docker
1. Download the repo `git clone https://github.com/xitanggg/open-resume.git`
2. Change the directory `cd open-resume`
3. Build the container `docker build -t open-resume .`
4. Start the container `docker run -p 3000:3000 open-resume`
5. Open your browser and visit [http://localhost:3000](http://localhost:3000) to see OpenResume live
1. 下载仓库 `git clone https://github.com/xitanggg/open-resume.git`
2. 切换目录 `cd open-resume`
3. 构建容器 `docker build -t open-resume .`
4. 启动容器 `docker run -p 3000:3000 open-resume`
5. 打开浏览器并访问 [http://localhost:3000](http://localhost:3000) 查看 OpenResume 在线版本

View File

@@ -0,0 +1,71 @@
# OpenResume
OpenResume is a powerful open-source resume builder and resume parser.
The goal of OpenResume is to provide everyone with free access to a modern professional resume design and enable anyone to apply for jobs with confidence.
Official site: [https://open-resume.com](https://open-resume.com)
## ⚒️ Resume Builder
OpenResume's resume builder allows user to create a modern professional resume easily.
![Resume Builder Demo](https://i.ibb.co/jzcrrt8/resume-builder-demo-optimize.gif)
It has 5 Core Features:
| <div style="width:285px">**Feature**</div> | **Description** |
|---|---|
| **1. Real Time UI Update** | The resume PDF is updated in real time as you enter your resume information, so you can easily see the final output. |
| **2. Modern Professional Resume Design** | The resume PDF is a modern professional design that adheres to U.S. best practices and is ATS friendly to top ATS platforms such as Greenhouse and Lever. It automatically formats fonts, sizes, margins, bullet points to ensure consistency and avoid human errors. |
| **3. Privacy Focus** | The app only runs locally on your browser, meaning no sign up is required and no data ever leaves your browser, so it gives you peace of mind on your personal data. (Fun fact: Running only locally means the app still works even if you disconnect the internet.) |
| **4. Import From Existing Resume PDF** | If you already have an existing resume PDF, you have the option to import it directly, so you can update your resume design to a modern professional design in literally a few seconds. |
| **5. Successful Track Record** | OpenResume users have landed interviews and offers from top companies, such as Dropbox, Google, Meta to name a few. It has been proven to work and liken by recruiters and hiring managers. |
## 🔍 Resume Parser
OpenResumes second component is the resume parser. For those who have an existing resume, the resume parser can help test and confirm its ATS readability.
![Resume Parser Demo](https://i.ibb.co/JvSVwNk/resume-parser-demo-optimize.gif)
You can learn more about the resume parser algorithm in the ["Resume Parser Algorithm Deep Dive" section](https://open-resume.com/resume-parser).
## 📚 Tech Stack
| <div style="width:140px">**Category**</div> | <div style="width:100px">**Choice**</div> | **Descriptions** |
|---|---|---|
| **Language** | [TypeScript](https://github.com/microsoft/TypeScript) | TypeScript is JavaScript with static type checking and helps catch many silly bugs at code time. |
| **UI Library** | [React](https://github.com/facebook/react) | Reacts declarative syntax and component-based architecture make it simple to develop reactive reusable components. |
| **State Management** | [Redux Toolkit](https://github.com/reduxjs/redux-toolkit) | Redux toolkit reduces the boilerplate to set up and update a central redux store, which is used in managing the complex resume state. |
| **CSS Framework** | [Tailwind CSS](https://github.com/tailwindlabs/tailwindcss) | Tailwind speeds up development by providing helpful css utilities and removing the need to context switch between tsx and css files. |
| **Web Framework** | [NextJS 13](https://github.com/vercel/next.js) | Next.js supports static site generation and helps build efficient React webpages that support SEO. |
| **PDF Reader** | [PDF.js](https://github.com/mozilla/pdf.js) | PDF.js reads content from PDF files and is used by the resume parser at its first step to read a resume PDFs content. |
| **PDF Renderer** | [React-pdf](https://github.com/diegomura/react-pdf) | React-pdf creates PDF files and is used by the resume builder to create a downloadable PDF file. |
## 📁 Project Structure
OpenResume is created with the NextJS web framework and follows its project structure. The source code can be found in `src/app`. There are a total of 4 page routes as shown in the table below. (Code path is relative to `src/app`)
| <div style="width:115px">**Page Route**</div> | **Code Path** | **Description** |
|---|---|---|
| / | /page.tsx | Home page that contains hero, auto typing resume, steps, testimonials, logo cloud, etc |
| /resume-import | /resume-import/page.tsx | Resume import page, where you can choose to import data from an existing resume PDF. The main component used is `ResumeDropzone` (`/components/ResumeDropzone.tsx`) |
| /resume-builder | /resume-builder/page.tsx | Resume builder page to build and download a resume PDF. The main components used are `ResumeForm` (`/components/ResumeForm`) and `Resume` (`/components/Resume`) |
| /resume-parser | /resume-parser/page.tsx | Resume parser page to test a resumes AST readability. The main library util used is `parseResumeFromPdf` (`/lib/parse-resume-from-pdf`) |
## 💻 Local Development
### Method 1: npm
1. Download the repo `git clone https://github.com/xitanggg/open-resume.git`
2. Change the directory `cd open-resume`
3. Install the dependency `npm install`
4. Start a development server `npm run dev`
5. Open your browser and visit [http://localhost:3000](http://localhost:3000) to see OpenResume live
### Method 2: Docker
1. Download the repo `git clone https://github.com/xitanggg/open-resume.git`
2. Change the directory `cd open-resume`
3. Build the container `docker build -t open-resume .`
4. Start the container `docker run -p 3000:3000 open-resume`
5. Open your browser and visit [http://localhost:3000](http://localhost:3000) to see OpenResume live