HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
pallets
flask
Python2010–2024
pallets / flask

flask

The Python micro framework for building web applications.

58Distinct people
65Mentions
0Explicit recommenders
75.1KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

The Python micro framework for building web applications.

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 12:54:37 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year65 dated mentions

Observed mentions: 2010-07-06 16:57:11 UTC to 2024-04-19 16:27:24 UTC.

0369122010-01-01 00:00:00 UTC to 2011-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments20102011-01-01 00:00:00 UTC to 2012-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2012-01-01 00:00:00 UTC to 2013-01-01 00:00:00 UTC (exclusive): 11 mentions; 1 submissions, 10 comments2013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 6 mentions; 2 submissions, 4 comments2014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments2015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 7 mentions; 0 submissions, 7 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 8 mentions; 2 submissions, 6 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments20172018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 7 mentions; 2 submissions, 5 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 10 mentions; 4 submissions, 6 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2024

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20102010-01-01 00:00:00 UTC2011-01-01 00:00:00 UTC202
20112011-01-01 00:00:00 UTC2012-01-01 00:00:00 UTC101
20122012-01-01 00:00:00 UTC2013-01-01 00:00:00 UTC11110
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC624
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC303
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC707
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC826
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC101
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC202
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC202
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC202
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC725
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC1046
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC202
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC101

What Hacker News says

65 sources
I'd suggest Flask or some of the smaller projects in the Pallets ecosystem: Flask, in particular, has a very small number of open issues (2) for a project that is pretty popular. Its also maintained by a competent team and has a lot of project best practices. https://github.com/pallets/flask https://github.com/pallets https://pypistats.org/packages/flask https://pypistats.org/packages/django (for comparison)
In Ask HN: High quality Python scripts or small libraries to learn from
This says much more about you and the developers and codebases you work with than anything to do with Python list comprehensions. Coming from a point of zero knowledge of the codebase, I picked Flask. I picked the cli.py module in Flask. And what do I find? https://github.com/pallets/flask/blob/main/src/flask/cli.py#... https://github.com/pallets/flask/blob/main/src/flask/cli.py#... https://github.com/pallets/flask/blob/main/src/flask/cli.py#... https://github.com/pallets/flask/blob/main/src/flask/cli.py#... https://github.com/pallets/flask/blob/main/src/flask/cli.py#... https://github.com/pallets/flask/blob/main/src/flask/cli.py#... https://github.com/pallets/flask/blob/main/src/flask/cli.py#... https://github.com/pallets/flask/blob/main/src/flask/cli.py#... The keyword "for" occurs twice as often in comprehensions and generator expressi
Read the rest
ons as it does in "typical loop iterations!"
In Ruby 3.2.0 is from another dimension
> If you see code without empty lines separating different steps, that's pretty badly written Python. You're describing literally all of the Python I've ever seen. Look at Flask, for example[1]. Furthermore, without brackets, adding newlines in a code block forces me to then add more newlines between blocks (which Flask also does!) I would rather just have easy-to-scan, clear characters that demarcate a code block. 1. https://github.com/pallets/flask/blob/main/src/flask/templat...
In Erg: a statically typed language that is Python compatible
I had opened issues and MRs with projects that David Lord was a maintainer (since he's been handling lots of Pallet Team's open source projects now). Wasn't very impressive with his "my way or the high way" approach. Take a look them yourself: https://github.com/pallets/flask/issues?q=is%3Aissue+is%3Acl... I am quite disgusted by his self-congratulatory tweet like that, TBH. Those tickets that the community posts questions and asked for help, he just shut people down.
In There are no open issues or pull requests on Flask
iamricks·Mar 21, 2022Submission

Ask HN: How do you learn to read large code bases?

How do you guys approach the "start" of reading a code base? I never know where to start looking, specifically if its a language i am not too familiar with i have no idea where to start and sometimes i have no idea where the program execution starts. Is there maybe a ladder of small to large open source projects that can get you there? For example i have no idea how to begin reading the Flask(1) open source code. What approach can i take to get to a point where i can analyze a project like Flask and get something meaningful from it? (1) https://github.com/pallets/flask
19 points · Open discussion
I don't buy the authors testing argument for a couple of reasons: 1. Verification is automated - From my perspective, tests predominantly serve to document AND verify the behavior of code. You don't have to follow TDD to buy into the idea that tests serve to verify behavior of the code that was written. Some applies to formal verification of software. 2. Documentation stays in sync with tests - I'd imagine that any snippet of code is read 2-10x more than it ever changes and tests help with that reading process. Writing tests means you're optimizing for the thing that happens most often AND you are somewhat guaranteed that your testing "documentation" stays up-to-date because as software evolves the tests will need to evolve as well there is an immediate penalty for not updating the tests; there is no corresponding immediate penalty for fo
Read the rest
rgetting to update a specification document. The older a piece of software is the harder it will become to understand: the original developers stop working on it, the documentation becomes stale, context and initial reasoning for certain decisions is lost. In such an environment it's, in my experience, generally easier to make changes to old code bases with lots of testing because generally tests will tell you if there is something you don't understand with nearly instantaneous feedback: write some code, run the tests and it either works or it doesn't. Similarly, I don't get the authors argument that code is more illegible than it has been in the past. More modern languages make this as easy as possible to get correct. Take something like Flask [1] written in Python and generally considered to be well-written and compare that to the C code in SQLite [2] which is generally considered to be well-written C and tell me which is easier to understand without any prior knowledge. [1] https://github.com/pallets/flask [2] https://github.com/sqlite/sqlite
In The Generational Divide in Software Developers

Showing the 15 most recent of 65 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.