手痒想写项目?我挑了 10 个开源项目送你

3,466 阅读5分钟

我刚学完 Python 语法那会儿,手痒想写个项目展示自己的学习成果。但却不知道写个啥,经过几次失败的尝试和碰壁后认清了现实,发现到自己只是刚学会基本语法,想要从零写个项目还差得远。不知道有多少朋友和我一样,手痒想写个项目。但:

  1. 不知道能写什么
  2. 知道写什么,但无从下手

如果刚学完语法想写个项目,可以先从 Web 方向入手。因为这方面有很多现成的框架和资料,但不要上来就去学习框架(看文档)不然你“手痒”的冲动和仅有的那点激情,可能就全部消耗在了啃框架上。我建议你去找一个 感兴趣的 Web 开源项目,然后把它跑起来,先不要去探究每行代码的意思,就跟着部署说明一步步执行命令就好。在运行项目的过程中不可避免会遇到三方库的安装、运行报错等情况,这个时候就必然要去看文档,带着问题去看文档能够把文档读“薄”。但不管怎么样想把一个项目跑起来都是件十分痛苦的事情,这也是必经之路没有什么捷径可言。你需要做的是 不断解决眼下的每一个报错直到没有任何问题,让项目顺利地跑起来 这可比学会一个框架,然后用它写一个项目简单多了!

当你成功运行起来一个项目,相信 Web 框架和项目的文档也零碎地翻了几遍了。这时候再去学习框架就不再是枯燥的学框架和背代码,而是把你在运行项目时积累的知识碎片串起来融会贯通,另外运行时遇到的问题也会随着学习的深入迎刃而解。最后,站在“大佬的肩膀”上照猫画虎地修改项目代码增加功能感受 DIY 带来的乐趣,一定要多动手运行+调试才能吃透项目,从而看懂项目结构和架构。随着把玩的开源项目多了,再遇到手痒的时候就能自己写个“玩意儿”啦。

写项目先从跑起来一个开源项目开始!下面就给大家介绍 7 个有趣的 Web 开源项目和 3 个桌面软件,跑起来就能用!涵盖多种主流编程语言:C/C++、Java、Python、JavaScript、PHP 等,希望你在 HelloGitHub 找到感兴趣的开源项目。

1、novel-plus(小说)

Star 数:1.5k|语言:Java

这是一个功能齐全的原创文学平台。类似起点中文网:看小说+写小说,它由前台门户、作家后台管理、平台后台管理、爬虫等多个子系统构成,采用 SpringBoot、MyBatis、MySQL、Redis 等技术实现。功能强大不仅支持多端的小说阅读,还有新闻模块、作家专区以及会员充值和订阅模式等功能。

演示:http://47.106.243.172:8888/

地址:github.com/201206030/n…

官网:201206030.github.io/

2、homeland(论坛)

Star 数:3.4k|语言:Ruby

一款开源不限制商用的精致社区/论坛系统。国内最大的 Ruby 社区 Ruby China 开源的项目,值得一提的是该系统拥有完整的实时通知和社交功能:关注的人和话题动态通知、@提及通知、丰富的表情系统等。如果你能把这个项目跑起来,就立刻拥有了一个“社区”。

演示:ruby-china.org/

地址:github.com/ruby-china/…

官网:homeland.ruby-china.org/zh-CN/

3、nopCommerce(电商)

Star 数:6.3k|语言:C#

免费开源基于 ASP.NET 电商购物平台。习惯了用 Java 写的电商平台,换个口味来看看这个用 ASP.NET 构建,适合中小型企业和个人的商城项目。它始于 2008 年由专业团队开发和维护,支持 Windows、Linux、macOS 平台,还有开箱即用的 Docker 部署方式。让 nopCommerce 跑起来,开启电商的大门。

演示:frontend.nopcommerce.com/

地址:github.com/nopSolution…

官网:www.nopcommerce.com/zh

4、filebrowser(文件)

Star 数:10k|语言:Go

在线文件管理系统。安装成功后直接指定目录即可运行起来一个 Web 文件管理系统,支持文件浏览、生成分享链接、批量上传、文件夹管理、用户系统等功能。

安装:filebrowser.org/installatio…

地址:github.com/filebrowser…

官网:filebrowser.org/

5、humhub(社交)

Star 数:5.4k|语言:PHP

开源的社交平台。相信看过《社交网络》的小伙伴都知道,大名鼎鼎的 Facebook 最早就是扎克伯格用 PHP 语言写的。这个项目基于 Yii 2 框架实现,包含了社交平台所需的基本功能而且运行简单,跑起来后来个二次开发,搞一个有特色的社交平台。

地址:github.com/humhub/humh…

官网:www.humhub.com/en

6、wiki(维基)

Star 数:13.2k|语言:JavaScript

强大且漂亮的开源维基平台。项目采用 Vue.js+Node.js+Git 实现,可直接部署用于团队内部多人协作下的写作和知识管理。想要做全栈的小伙伴,快拿下这个项目吧。

演示:docs.requarks.io/demo

地址:github.com/Requarks/wi…

官网:js.wiki/

7、explainshell(有趣)

Star 数:9.4k|语言:Python

一个用于解析 Linux 命令的网站。输入命令就能解析出对应的命令说明和参数解释,属于比较新颖的 Web 项目。

演示:www.explainshell.com/

地址:github.com/idank/expla…

8、DungeonRush(贪吃蛇)

Star 数:1.3k|语言:C

不一样的单机贪吃蛇游戏。作者受到元气骑士的启发,在原版的贪吃蛇玩法上进行一些创新。该项目适用于 C 语言初学者,尝试使用跨平台图形库开发软件的同学。参考本项目可以写出一个可玩性高的游戏,收获满满的成就感

地址:github.com/Rapiz1/Dung…

9、chinessChess(象棋)

Star 数:1.3k|语言:C++

基于 Qt5 开发的中国象棋网络对战平台。实现了联机、单机、AI 等功能,边玩边学吧。

地址:github.com/xmuli/chine…

10、eul(工具)

Star 数:5.8k|语言:Swift

一款极简免费的 macOS 状态监控工具。使用 SwiftUI 编写,先体验它的好,再剖析它的妙。

安装:brew install --cask eul
或 App Store 搜 eul

地址:github.com/gao-sun/eul

​以上就是本期推荐的 10 个适合实战的开源项目,更多有趣、入门级的开源项目尽在 HelloGitHub 在这里找到让你感兴趣的开源项目。


关注 HelloGitHub 公众号 第一时间收到更新。

还有更多开源项目的介绍和宝藏项目等待你的发现。