菜单

存储库结构

相关源文件

本文档描述了App Ideas Collection仓库的组织和结构。它解释了项目是如何分类的,仓库在文件系统级别是如何组织的,以及用于项目描述的标准格式。

有关如何使用此集合的信息,请参阅如何使用此集合。有关贡献新项目想法的详细信息,请参阅贡献到此集合

仓库组织概述

App Ideas Collection围绕一个三层结构进行组织,该结构按技能水平和复杂性对项目进行分类。这种分层方法使开发人员能够找到适合其当前技能水平的项目,并逐步提高他们的能力。

来源: README.md30-39 README.md42-81 README.md82-118 README.md120-143

文件系统组织

仓库遵循一个直接的目录结构,该结构反映了概念组织

路径描述
/包含README和贡献指南的根目录
/Projects包含所有项目描述的主目录
/Projects/1-BeginnerTier 1 (Beginner) 项目目录
/Projects/2-IntermediateTier 2 (Intermediate) 项目目录
/Projects/3-AdvancedTier 3 (Advanced) 项目目录

单个项目描述存储在其各自的层目录中,格式为Markdown文件。仓库根目录中的README.md文件作为主索引,其中包含列出所有项目及其相应文件链接的表格。

来源: README.md42-81 README.md82-118 README.md120-143

项目层级分类

项目根据完成它们所需的知识和经验分为三个级别

层级描述

级别姓名开发者概况
1初学者处于学习初期阶段的开发者。那些通常专注于创建面向用户的应用程序的人。
2中级处于学习和经验中间阶段的开发者。他们熟悉UI/UX、开发工具,并构建使用API服务的应用程序。
3高级拥有上述所有能力,并且正在学习更高级技术(如实现后端应用程序和数据库服务)的开发者。

来源: README.md30-39

项目描述结构

集合中的每个项目都遵循标准化的格式,以确保一致性和清晰性。项目描述以Markdown编写并作为单独的文件存储。

标准项目组件

  1. 标题和层级:每个项目都以标题和层级标识开始
  2. 目标:对项目旨在实现的内容的清晰描述
  3. 用户故事:以用户故事形式格式化的需求(“用户可以…”)
  4. 附加功能:可选的增强功能,用于扩展基本项目
  5. 有用的链接和资源:参考文献和文档
  6. 示例项目:相似项目的示例以供参考

这种结构可以在Calendar App等项目文件中看到

来源: README.md20-26 Projects/1-Beginner/Calendar-App.md1-34

项目类别和分布

该仓库包含各种类别的项目,每个级别都有不同的复杂性。以下是每个级别项目数量的细分

级别项目数量
初学者38
中级36
高级15
总计89

项目涵盖了广泛的应用类型,包括:

  • 计算器和转换器(Bin2Dec、Calculator、CSV2JSON)
  • 可视化工具(Color Cycle、Slider Design)
  • 生产力应用程序(Countdown Timer、Pomodoro Clock)
  • 游戏和娱乐(Card Memory Game、Shell Game)
  • 实用应用程序(Weather App、Calendar App)
  • 开发人员工具(Markdown Previewer、RegExp Helper)

来源: README.md42-81 README.md82-118 README.md120-143

该仓库使用一个简单有效的导航结构,该结构围绕README.md文件展开,该文件充当主入口点和索引。

README.md包含每个级别的表格,列出了

  • 项目名称及项目文件链接
  • 简短描述
  • 层级标识

这使用户能够快速浏览并找到符合他们兴趣和技能水平的项目。

来源: README.md42-81 README.md82-118 README.md120-143 README.md146-166

项目内容示例

为了说明标准化结构,以下是典型项目文件的组织方式,以Calendar App为例

  1. 标题和层级:

    # My calendar
    **Tier:** 3-Advanced
    
  2. 目标/描述:

    Build a calendar application to organize you daily life. Add functionality to add events and reminder.
    Style your own calendar according to your requirement
    
  3. 用户故事:

    - [ ] User can create event
    - [ ] User can edit event
    - [ ] User can delete event
    
  4. 附加功能:

    - [ ] User can drag events between dates
    - [ ] User can set reminder for a event
    - [ ] Change theme (light/dark) (play with css), play with css 😄
    - [ ] Store data locally so that events does not get deleted when server is restarted
    
  5. 有用的链接和资源:

    - [Local Storage](https://blog.logrocket.com/the-complete-guide-to-using-localstorage-in-javascript-apps-ba44edb53a36/)
    - [MDN](https://mdn.org.cn/en-US/)
    - [Design Ideas](https://dribbble.com/tags/calendar)
    
  6. 示例项目:

    - [Simple calendar](https://medium.com/@nitinpatel_20236/challenge-of-building-a-calendar-with-pure-javascript-a86f1303267d)
    - <FileRef file-url="https://github.com/florinpop17/app-ideas/blob/08b771c8/eCalendar" undefined  file-path="eCalendar">Hii</FileRef>
    

这种一致的结构使开发人员能够轻松理解每个项目的预期。

来源: Projects/1-Beginner/Calendar-App.md1-34

总结

App Ideas Collection仓库使用一个简单、分层的结构,围绕三个技能级别进行组织。每个项目都遵循标准化的格式,提供清晰的目标、需求和资源。仓库的组织方式使得任何技能水平的开发人员都能轻松找到合适的项目,而标准化的项目结构则确保了整个集合的一致性。

来源: README.md5-19 README.md30-39