Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Restore Grid visualizer to operation #522

Closed
wants to merge 43 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
1cb5b80
Gallery page (#341)
mbavec Jun 2, 2024
0b9f403
Tabs and reactive visualizer and sequence settings (#342)
kaldis-berzins Jun 26, 2024
4fe297d
Dynamic URLs (#354)
kaldis-berzins Jun 28, 2024
1612c44
Specimen browser storage (#362)
gwhitney Jun 28, 2024
8ebe122
Resizing and url integration [cleaned] (#366)
gwhitney Jun 29, 2024
58ff5ac
feat: Add specimen bar (#367)
gwhitney Jun 30, 2024
f0feac5
Gallery integration [cleaned] (#368)
gwhitney Jul 3, 2024
8b67b98
fix: Restore highlighting of dropzones as tabs are dragged to them (#…
gwhitney Jul 5, 2024
9eee6ef
Sequence and visualizer switcher [cleaned] (#379)
gwhitney Jul 11, 2024
06ab30b
feat: human-readable URLs based on query strings (#389)
gwhitney Jul 16, 2024
f7ee5a8
Restore OEIS sequences, with minor fixes (#395)
gwhitney Jul 23, 2024
63e344a
feat: Allow adding and dropping of OEIS sequence cards (#398)
gwhitney Jul 24, 2024
d352d7a
doc: Update to reflect changes to visualizer class, with concomitant …
katestange Jul 24, 2024
c8f3504
feat: Operational OEIS search bar (#410)
gwhitney Aug 15, 2024
4270b4b
FactorFence Visualizer (#406)
katestange Aug 28, 2024
3ca6998
test: Implement end-to-end testing with Playwright (#420)
gwhitney Oct 10, 2024
3d73aac
doc: Harmonize guidance on git, cloning, and other workflows. (#463)
gwhitney Oct 12, 2024
9ded41c
doc: Two columns in contributor list. Resolves #314. (#464)
gwhitney Oct 12, 2024
a451f8f
feat: Default to a featured visualization (not Random ModFill) (#466)
gwhitney Oct 13, 2024
284735a
Turtle overhaul (#404)
katestange Oct 25, 2024
3ccd392
ui: Move parameter descriptions just below their entry boxes (#472)
gwhitney Oct 25, 2024
b404b7f
refactor: make overall status and status of each parameter part of Pa…
gwhitney Oct 29, 2024
5ab5bbf
fix: Ensure back button updates visualization (#484)
gwhitney Oct 31, 2024
00ff08d
fix: Don't attempt to factor 'unsafe' integers (#485)
gwhitney Oct 31, 2024
e16077b
Documentation site overhaul for alpha (#486)
gwhitney Nov 14, 2024
7f258f5
fix: Don't stretch SpecimenCards when only one row (#495)
gwhitney Nov 14, 2024
1866e20
fix: Don't let one randomly selected featured specimen replace anothe…
gwhitney Nov 15, 2024
aa73fcb
ui: OEIS search fixes and improvements. (#497)
gwhitney Nov 16, 2024
72c41e9
fix[Formula]: reject unknown function at parse to avoid throwing erro…
gwhitney Nov 17, 2024
64cef6a
fix: Drag into sidebar always docks into an empty zone (#499)
gwhitney Nov 20, 2024
5bda8a9
feat: Save a history of any kind of Sequences (not just OEIS) (#500)
gwhitney Nov 24, 2024
1d927f3
feat: add colours to ModFill (#505)
katestange Dec 10, 2024
7a690b0
ui: More "finger pointer" cursors to indicate interactions. (#516)
gwhitney Dec 11, 2024
b275244
feat: Limit WebGL contexts in use by replacing thumbnails with snapsh…
gwhitney Dec 13, 2024
18129b2
fix: Get grid to compile and run without crash; still doesn't work
gwhitney Dec 18, 2024
4792fce
fix: Get Grid to run and produce image, still buggy
gwhitney Dec 19, 2024
dec117d
ui: Streamline presentation of Grid parameters
gwhitney Dec 19, 2024
ac9619b
fix: Don't draw visualizer until show(); draw entire Grid in one frame
gwhitney Dec 21, 2024
ae109c6
fix: Deal with canvas size flexibility
gwhitney Dec 21, 2024
20c7fca
fix: Keep redrawing while there are cache misses
gwhitney Dec 21, 2024
6605a67
feat: transparent property colors
gwhitney Dec 21, 2024
872e7d4
fix: Binary search to find best-fit cell size
gwhitney Dec 22, 2024
baaa648
ui: update property parameters on every change to preset
gwhitney Dec 22, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
31 changes: 0 additions & 31 deletions .eslintrc.cjs

This file was deleted.

8 changes: 7 additions & 1 deletion .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,10 @@
By submitting this PR, I am indicating to the Numberscope maintainers that I have read and understood the [contributing guidelines](https://numberscope.colorado.edu/doc/CONTRIBUTING/) and that this PR follows those guidelines to the best of my knowledge. I have also read the [pull request checklist](https://numberscope.colorado.edu/doc/doc/pull-request-checklist/) and followed the instructions therein.
By submitting this PR, I am indicating to the Numberscope maintainers that I
have read and understood the
[contributing guidelines](https://numberscope.colorado.edu/doc/CONTRIBUTING/)
and that this PR follows those guidelines to the best of my knowledge. I have
also read the
[pull request checklist](https://numberscope.colorado.edu/doc/doc/pull-request-checklist/)
and followed the instructions therein.

<hr/>

Expand Down
32 changes: 27 additions & 5 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
name: 'CI'
on: pull_request
on:
push:
branches:
- main
pull_request:

jobs:
lint:
runs-on: ubuntu-22.04
Expand All @@ -12,13 +17,15 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '18.x'
node-version: '20.x'
- name: Install dependencies
run: npm install
- name: Lint
run: npm run lint:check
- name: Type check
run: npm run typecheck
test:
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Python
Expand All @@ -28,8 +35,23 @@ jobs:
- name: Set up Node.js
uses: actions/setup-node@v3
with:
node-version: '18.x'
node-version: '20.x'
- name: Install d2 document generator
run: curl -fsSL https://d2lang.com/install.sh | sh -s --
- name: Install dependencies
run: npm install
- name: Test
- name: Unit test
run: npm run test:unit
- name: Build production site
run: npm run build
- name: Install Playwright browsers
run: npx playwright install --with-deps
- name: End-to-end test
run: npx playwright test -c e2e/playci.config.ts
### Uncomment when you need to re-extract snapshots
# - name: Extract snapshots
# if: always()
# uses: actions/upload-artifact@v4
# with:
# name: ci_actual_snapshots
# path: e2e/results/manual/output
15 changes: 13 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,14 +4,25 @@ logs
npm-debug.log*

# Subdirectories generated by various tools
.cache
.venv
coverage
dist
node_modules
site

# File for storing your local configuration
*.local

# Emacs backup files
*~

# Build files
dist
etc/npm_install_ran_at
etc/typechecked_at
site

# End-to-end testing
e2e/.last_cl_args
e2e/certificate
e2e/docker_image_built
e2e/results
6 changes: 3 additions & 3 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
#!/bin/sh
. "$(dirname "$0")/_/husky.sh"

npm run lint:list || echo 'Files listed above will be reformatted and staged.'
npm run lint:staged
node tools/cleancommit.js
npm run lint:check
npm run typecheck
npm run test:unit
npm run test:e2e

10 changes: 7 additions & 3 deletions .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -2,20 +2,24 @@
*.ico
*.jpg
*.png
*.svg
*.ttf
*.txt
*.generator
*.local
*~
.env
.env.*
.github/workflows
.gitignore
.husky
.prettierignore
.vscode
coverage
dist
index.html
node_modules
package-lock.json
index.html
e2e/*-snapshots
e2e/results
site
.env
.env.*
19 changes: 0 additions & 19 deletions .prettierrc.json

This file was deleted.

80 changes: 38 additions & 42 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,45 +1,40 @@
# Contributing to Numberscope

## If you are new to software development and like written guides...
## If you are new to software development...

Read our [onboarding doc](./doc/onboarding.md).

## If you are new to software development and like videos...

Watch the video series on contributing to Numberscope
[here](https://www.youtube.com/playlist?list=PLA4KIQBQQRb5ccOdr9v0iLw_fKHup1PkU).
This video series will introduce you to Numberscope, GitHub, the software we
use in the Numberscope project, and the workflow for contributing to
Numberscope.

## If you are experienced, follow these steps...

(This assumes you're working on the numberscope/frontscope repository, but it
applies to other repos as well.)

1. [Create a fork of the numberscope/frontscope repo](./doc/working-with-git-and-github.md#create-a-fork).
2. [Clone your fork of numberscope/frontscope](./doc/working-with-git-and-github.md#clone-a-repo).
3. [Create a branch for your contribution](./doc/working-with-git-and-github.md#create-a-branch).
4. If you are unfamiliar with them or would like a refresher,
[read about basic Git operations](./doc/working-with-git-and-github.md#basic-operations).
5. [Push your branch to GitHub](./doc/working-with-git-and-github.md#push-a-branch).
6. [Read Numberscope's coding principles guide](./doc/code-principles.md).
7. [Read Numberscope's style guide](./doc/code-style.md). You should also
familiarize yourself with frontscope's internal code structure and APIs.
Documentation on these topics is generally incorporated into the relevant
source files (see [this example](src/shared/math.ts)). However, it is all
gathered in the "Internal code and APIs" section of the navigation bar in
the [online docs](https://numberscope.colorado.edu/doc).
8. If you are working on a visualizer, read
[the doc on making a visualizer](./doc/making-a-visualizer.md).
9. [Work through Numberscope's pull request checklist](./doc/pull-request-checklist.md).
10. [Submit a pull request](./doc/working-with-git-and-github.md#submit-a-pull-request).
applies to other repos as well. If you are unfamiliear with basic git
operations or would like a refresher, we
[have a guide](doc/working-with-git-and-github.md#basic-operations).)

1. [Clone the numberscope/frontscope repository](doc/working-with-git-and-github.md#clone-a-repo).
2. [Create a branch for your contribution](doc/working-with-git-and-github.md#create-a-branch).
3. [Read Numberscope's coding principles guide](doc/code-principles.md).
4. Familiarize yourself with frontscope's
[code organization](doc/code-organization.md) and internal APIs. Some
information on the latter topic may only be found in comments in the
relevant sources files, as the documentation project is ongoing. However,
all such formal documentation currently being generated is gathered in the
"Internal code and APIs" section of the navigation bar in the
[online docs](https://numberscope.colorado.edu/doc).
5. If you are working on a visualizer, read the documentation section on
[making a visualizer](doc/visualizer-overview.md).
6. Implement your changes.
7. [Create a fork of the numberscope/frontscope repo](doc/working-with-git-and-github.md#create-a-fork).
8. [Add your fork as a remote](doc/working-with-git-and-github.md#add-a-remote).
9. [Push your branch to GitHub](doc/working-with-git-and-github.md#push-a-branch).
10. [Work through Numberscope's pull request checklist](doc/pull-request-checklist.md).
11. [Submit a pull request](doc/working-with-git-and-github.md#submit-a-pull-request).

## If you need help with Git and contributing...

If you have a Git setup that isn't what Numberscope requires (i.e. do your
work in your own fork on a feature branch) check out our doc on
[Gitting it right](./doc/gitting-it-right.md).
[Gitting it right](doc/gitting-it-right.md).

## A note on code organization

Expand All @@ -64,24 +59,25 @@ their factorizations, see `backscope`
applies to other repos as well.)

If you've read the
[Numberscope code principles guide](./doc/code-principles.md) and the
[Numberscope code style guide](./doc/code-style.md), and you think your code
is ready to be reviewed by someone at Numberscope, follow these steps:
[Numberscope code principles guide](./doc/code-principles.md) and have adhered
to the [code organization](./doc/code-organization.md), and you think your
code is ready to be reviewed by someone at Numberscope, follow these steps:

1. Work through
[Numberscope's pull request checklist](./doc/pull-request-checklist.md).
2. Sync your fork with the main numberscope/frontscope repository. The easiest
way to do this is to navigate to the page of your fork of
numberscope/frontscope and click "Sync fork" (see the picture below).
![A screenshot of the Sync fork option](./doc/img/sync-fork.png) Another
way to do this is to
[add numberscope/frontscope as a remote](./doc/working-with-git-and-github.md#add-a-remote)
and
[sync your fork with the remote original](./doc/working-with-git-and-github.md#sync-local-fork-with-remote-original).
2. Make sure your branch is based on the latest version of the `main` branch
from the official repository. The simplest way to do this is to
[sync your local clone](doc/working-with-git-and-github.md#sync-a-local-clone)
and if your copy of `main` pulled additional new commits in that process
(as opposed to being reported as "already up to date"), then go ahead and
[rebase your branch](doc/working-with-git-and-github.md#rebase-your-branch).
3. Navigate to the numberscope/frontscope repository. If your fork is synced
up with the main numberscope/frontscope repository correctly, you should
see a button (see the image below) that says "Compare & pull request".
![A screenshot of the Compare & pull request
button](./doc/img/compare-and-pull-request.png)
button](doc/img/compare-and-pull-request.png)
Click that button, write up some notes for your pull request, and click the
"Create pull request button".
"Create pull request button". Our
[Working with Git guide](doc/working-with-git-and-github.md) has more
details about
[submitting a pull request](doc/working-with-git-and-github.md#submit-a-pull-request).
41 changes: 23 additions & 18 deletions doc/about.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,23 +18,28 @@ You can find [Numberscope on GitHub](https://github.com/numberscope) or

## Contributors

- Abdullatif Khalid Abduljaleel
- Tobias Aldape
- Khaled Allen
- Isabel Anaya
- Sebastian Bozlee
- Olivia Brobin
- Devlin Costello
- Aaron Fenyes
- Brendan Heaney
- Steven Hristopoulos
- Clyde Kertzer
- Jennifer Leong
- Ang Li
- Theodore Lincke
- Josiah Martinez
- Willem Mirkovich
- Liam Mulhall
- Daniel H. Taylor
<!-- prettier-ignore -->
+---------------------------------+-------------------------------+
| • Abdullatif Khalid Abduljaleel | • Steven Hristopoulos |
+---------------------------------+-------------------------------+
| • Tobias Aldape | • Clyde Kertzer |
+---------------------------------+-------------------------------+
| • Khaled Allen | • Jennifer Leong |
+---------------------------------+-------------------------------+
| • Isabel Anaya | • Ang Li |
+---------------------------------+-------------------------------+
| • Sebastian Bozlee | • Theodore Lincke |
+---------------------------------+-------------------------------+
| • Olivia Brobin | • Josiah Martinez |
+---------------------------------+-------------------------------+
| • Devlin Costello | • Willem Mirkovich |
+---------------------------------+-------------------------------+
| • Aaron Fenyes | • Liam Mulhall |
+---------------------------------+-------------------------------+
| • Brendan Heaney | • Daniel H. Taylor |
+---------------------------------+-------------------------------+
| • Delft CSE2000 Spring '24 Team: Matej Bavec, Ziggy Beijer,<br> |
| &nbsp; &nbsp;Kaldis Bērziņš, Max Derbenwick, and Gido Vitner |
+-----------------------------------------------------------------+

[Acknowledgments](acknowledgments.md)
Loading
Loading