scikit-hep / scikit-hep.github.io Goto Github PK
View Code? Open in Web Editor NEWPages defining the website of the Scikit-HEP project.
Home Page: https://scikit-hep.org
License: BSD 3-Clause "New" or "Revised" License
Pages defining the website of the Scikit-HEP project.
Home Page: https://scikit-hep.org
License: BSD 3-Clause "New" or "Revised" License
Can scikit-hep.org have HTTPS support added? It would be nice in general to have this, as this also affects all the project pages as well.
Since this is a custom domain, and not just using scikit-hep.github.io I assume it is more involved then clicking the "Enforce HTTPS" in Settings. Though, I assume that @henryiii knows how to do this, as he has HTTPS working for https://iris-hep.org/.
pyhf
is used in multiple analyses in ATLAS, and uproot
is used all over the place and many projects are used in work for IRIS-HEP. It would be good to add both of these collaborations to the Who uses Scikit-HEP? page.
This page claims
For Python packages without binary extensions and fairly simple builds can use a modern build system instead of the classic but verbose setuptools
The phrasing implies that PEP 621 is somehow incompatible with building wheels including compiled artifacts, which is wrong:
E.g. hatch supports build hooks, which allow you to run custom code just like setup.py.
It would be nice to have a pytest page, discussing how to do (proper) pytest, with parametrized fixtures and such.
A page like this might be useful:
The page https://scikit-hep.org/documentation has an issue with the displaying of the table because the formatting insists on adding a line between the definition of the header and the programmatic filling of the table entries:
| Package | README | Documentation |
| ------- | ------ | ------------- |
{% for project in items %}
Present render:
In PR #193 Scikit-HEP got a news page! 🎉 At the moment all the releases are noted as "major" even if they are "minor" releases in SemVer.
Example: boost-histogram
v1.0.0
and pyhf
v0.6.0
are both described as "major"
scikit-hep.github.io/pages/news.md
Lines 45 to 53 in e91e0c3
Should we adopt SemVer conventions and change the SemVer minor releases to be described as "minor"?
Given scikit-hep/pyhf#1449 and @kratsg's scikit-build
Issue which motivated the PR, it seems that current use of prune
in the MANIFEST.in
section of the Packaging docs
prune *
graft src
graft tests
include LICENSE README.md pyproject.toml setup.py setup.cfg
global-exclude __pycache__ *.py[cod] .*
might need to get revised to something like
prune **
graft src
graft tests
include LICENSE README.md pyproject.toml setup.py setup.cfg
global-exclude __pycache__ *.py[cod]
as prune *
is not actually removing all files from the manifest to start with.
If we're not missing anything we're happy to make a PR for this, but I thought we'd bring it up for discussion first.
@henryiii @eduardo-rodrigues let us know if you have any concerns here.
We could remove the readme links and just append /#readme
to the project.url
if readme:
is missing. It's really only used on one page that likely is not the one most people would use; the main page just has normal links. A link to the package itself should not auto-scroll the page, because users might want a variety of information from visiting a project, like the most recent download, the stars button (very important!), the clone button, the issues tab, etc. I hope everyone knows how to scroll down on GitHub (and would really like it if GitHub made the files collapsible), but I don't want to hide the important links at the top of the page, at least for the "normal" link. On the packages page, linking to the README's is fine, since it's a separate link that says README.
Originally posted by @henryiii in #99 (comment)
Stefan gave us a data-domain
for scikit-hep.org; this snippet should be added to every HTML page:
<script defer data-domain="scikit-hep.org" src="https://views.scientific-python.org/js/plausible.js"></script>
It doesn't matter where on the page it appears (see a long conversation I had with myself here: scikit-hep/awkward#1819), and I think the defer
could be replaced by async
. You just need to find a template that gets rendered on every page you care about. (In my long conversation, I decided that I didn't care about redirects, but that's up to you.) There are templates in _includes and _layouts.
By the way—context for anyone seeing this without background—this is a follow-up of a discussion we had on the Scikit-HEP administrators list. The scientific-python.org organization is providing website statistics through Plausible, which we can use on our documentation sites. The reason we want it is to get a sense of what our users are interested in. In particular, the Awkward Array library is organized as a collection of ak.*
functions, each with its own page; if we find 100× more website traffic to ak.this
than ak.that
, then we'll know that ak.this
is more important (should get more developer attention) than ak.that
. The usefulness to the scikit-hep.org pages is different: "Are users looking at 'Project News'? 'Packages'? 'User Information'? ...)
In the presentations at SciPy, they said that Plausible is less intrusive than Google Analytics (which I've used in the past). In particular, Google Analytics violates some regulations in Europe, but Plausible does not. So the choices seem to be well thought-through.
@kratsg recently broached the idea of having a way to demo some interesting public applications of the Scikit-HEP stack to potential users. For example, he recently made a Binderized GitHub Gist of Reproducible ATLAS SUSY Summary Plots which is a great example.
I had suggested that one approach might be an application gallery similar to matplotlib
's. This could be a way to both demonstrate actual public uses of the Scikit-HEP stack out "in the wild" and be a handy thing to have on hand to point to in talks and demos.
I'm not sure if it would live directly on the website or somewhere adjacent.
Thoughts from @henryiii and @eduardo-rodrigues?
The style seems to be somewhat broken (mentioned in #64 ). Investigate.
A page on conda forge adding & maintenance would be nice, and has been requested a few times.
With Github now supporting Dark mode, and iscinumpy & iris-hep supporting it since launch, now Scikit-HEP is the main offender for shining a white screen in my face at night. Needs a dark mode. ;)
The main User information
web page contains an invalid link: [Conda installation instructions](Conda installation instructions)
We should add caps checks to rule out PyTest, CMake, PyBind, and any other incorrect capitalizations.
Might be able to add a spelling check, too.
At the moment the "User information" menu contains "Installing conda" and "Resources". I would argue that "Installing conda" is for the "Developers information" (not spefic to Scikit-HEP in particular) and would move the "Getting in touch" presently under menu "About" to menu "User information", which seems more natural.
Thoughts?
As seen in the main page https://scikit-hep.org/, the lists of packages within each group are not ordered alphabetically. Nicer to ensure the ordering.
Add pre-commit.ci as a use recommendation to the Developer Information pages given that Anthony Sottile has approved of advertisement of the project.
As we advocate for the use of pytest
, the https://github.com/pre-commit/pre-commit-hooks hook name-tests-test
might be a useful hook to add to the suggested hooks. Though as
scikit-hep.github.io/pages/developers/style.md
Lines 24 to 41 in 994255a
is about a minimal configuration if the idea here is to add hooks that are agnostic to most other choices then I could make a PR to https://github.com/scikit-hep/cookie instead (if people think this is a good idea in either place I'll happily make a PR to wherever).
Please fill in the GitHub webpage link (top right) with scikit-hep.github.io, so that someone finding the repository can click to switch to the webpage.
We should list a few things that you should not do, like using setup.py
directly, especially not setup.py test
, which is discouraged and deprecated. Maybe include common mistakes, like accidentally included the "tests" folder in the install (or maybe even the SDist).
Indeed the tutorials available as a Jupyter notebook at https://scikit-hep.org/scikit-hep-tutorials are not mentioned anywhere, and they should. (See discussion at #108.)
A possible place to mention the tutorials is the https://scikit-hep.org/resources page.
Or even better define HEP on the main page.
A proper page on writing typed Python and using mypy would be useful.
IMO a guide should be added to scikit-hep.org, probably under developer. Maybe could be combined in an "extras" page that covers license, badges, etc?
Originally posted by @henryiii in scikit-hep/hist#416 (comment)
Should we maybe have a page on news as for example the scikit-learn website https://scikit-learn.org/ has? This would be a place to add major news such as the first release of a new package, a package or project joining the group, major releases that can potentially make a difference (backward incompatibilities), etc. One could also add bits of info such as what I recently mentioned on the Gitter channel, namely "A cute piece of info: Scikit-HEP made it to the PDG online particle physics information".
What do you think, @henryiii, @HDembinski, @matthewfeickert?
The current grouping leaves quite a few packages as single items in a group. Here's my suggested changes:
Put Simulation into Interface to HEP libraries, which would have pyhepmc, numpythia, and pyjet.
Rename Units and Constants to Math or Basics (or something like that), so Vector can be added there later.
Event Processing is a little odd with only one item in it, but I think that's okay. Will eventually have Awkward 1 and 0.
As first brought up in the Scikit-HEP Gitter it would be nice if we designed a Scikit-HEP badge that would link to the project webpage that all projects would have in their READMEs
. As the README
s end up getting put up on PyPI during publishing it could be a useful way to get a curious user from PyPI to the project quickly. So maybe something along the lines of
but something more interesting.
As @henryiii did a great job with the color pallet choices for the PyPI badges
I'm hoping that he has some thoughts on the badge design as well. 🙂
I've navigated to the web-page from pypa/gh-action-pypi-publish#15 (comment) and then saw a typo there. I wanted to send a patch (#70) but It took me about 10-15 min just to find this repo.
Please explore how it could be made better discoverable. Maybe add a corner-banner saying "edit this page on GitHub" or something like that...
Are you going to add info on these files somewhere on the site? The Scikit-HEP shell figure might actually be really nice somewhere at https://scikit-hep.org/about with some bit of text.
Originally posted by @eduardo-rodrigues in #282 (comment)
This is a great idea that @eduardo-rodrigues had that I was reminded of by a comment from @pelmer. 👍
The current intro text is quite long; if you have a smaller screen, you may not even know that there is a list of packages below, which is one of the most useful parts of the main page. I recommend shortening it quite a bit, and maybe even moving most of it to a separate "about" page. Thoughts, especially @eduardo-rodrigues ?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.