33 Commits

Author SHA1 Message Date
Luke Street 0a64331e4b Experimental objdiff-web integration 2025-03-06 23:07:52 -07:00
Ethan Roseman 4ef64cbebc Run Biome formatter (#1392)
* Run formatter

* Part 2
2024-12-11 01:03:56 +09:00
Ethan Roseman a003f5b462 Run Biome linter (#1391)
* Backend updates

* frontend updates

* Undo 15

* Undo 15

* oops

* oops

* oops

* make thing not hook

* regen yarn.lock

* oops

* The resize observer

* oops

* hamster help

* more updates

* more

* fixules

* more migration

* meowp

* one

* un-frug

* useImportType

* useTemplate

* useNumberNamespace

* noUselessFragments

* useLiteralKeys

* useOptionalChain

* noUnnecessaryContinue

* noUnreachable

* noDoubleEquals

* useSortedClasses

* removed unneded file

* delete later

* Promment

* useSingleVarDeclarator

* useSelfClosingElements

* noConfusingVoidType

* wut

* noAccumulatingSpread

* noForEach

* noAssignInExpressions

* cleanups

* useDefaultParameterLast

* useEnumInitializers

* useNodejsImportProtocol
2024-12-11 00:57:41 +09:00
Ethan Roseman a5249f922c Update deps (#1387)
* Backend updates

* frontend updates
2024-12-09 01:28:54 +09:00
Luke Street 2c2f876e22 Experimental objdiff integration (client-side) (#1329)
* Experimental objdiff integration (client-side)

* Work around next.js stupidity

* Port performance improvements to main diff view
2024-08-23 14:43:26 +09:00
Mark Street 8add52697c images.domains is deprecated, use images.remotePatterns (#1204) 2024-04-23 01:18:03 +09:00
Alex Bates eca9cc324d upgrade frontend dependencies (#875)
* upgrade frontend dependencies

* fix ts lints

* don't cache server GETs

* fix opened nav having white border
2023-10-03 19:19:49 +09:00
Mark Street 576b0006f4 Consume stderr when checking git hash (#799) 2023-07-02 19:14:42 +09:00
ConorB 3b39a6d3af Add clangd language server support (#739)
* Initial clangd support
Tidy up languageserver.ts
Add CompilerCommand option

* Codemirror tooltip newline handling

* Force github login through redirects instead of popup window

* Gracefully exit LS when scratch unloads

* Break scratch language out to api, move language server integration to new hook

* Fix broken import

* Fix languageServer.ts import warnings
(and rename languageserver.ts to languageServer.ts)

* Format on Alt-Shift-F

* Add default, site-wide .clang-format

* Allow source to reference context definitions

* Remove overzealous IIFEs

* Clean up yaml imports, useLanguageServer state

* Remove webpack yaml-specific config

* Fix default-clang-format.yaml loading

* Add editor option to enable / disable language server

* Change language server setting text

* Add ability to select small language server, version bump

* EditorSettings clean

* EditorSettings 2: Electric Boogaloo (sponsored by tailwind)

* Fix tooltip appearance

* Remove alignment settings from default-clang-format.yaml

* Remove references to preferSmallLanguageServer

---------

Co-authored-by: ConorBobbleHat <c.github@firstpartners.net>
Co-authored-by: Mark Street <streetster@gmail.com>
2023-06-04 14:15:27 +09:00
ConorB 4003446137 Switch from @shopify/web-worker to postMessage for useCompareExtension (#717)
* Switch from @shopify/web-worker to postMessage for useCompareExtension

* Type safety

* make formatting consistent

---------

Co-authored-by: ConorBobbleHat <c.github@firstpartners.net>
2023-03-27 10:07:15 +09:00
Alex Bates d81d131a43 Update dependencies (#705)
* misc changes

* remove yarn.lock

* update poetry lockfile

* fix env variables in browser

---------

Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2023-03-20 00:33:01 +09:00
Alex Bates 4cf3e416e5 Use Next.js 13 app directory & Tailwind CSS (#626)
- Use Next.js 13 app directory for all routes except projects
- Add Tailwind (resolves #619) and use it for most components
- New footer
- Adjust navbar (logotype, buttons moved to right)
- Improve the styling of the search box
- New /settings/account page
- /credits grabs contributors list for this repo from GitHub's API
- Resolve #634
- New welcome page header with scrolling platform icons
2023-01-03 12:41:05 +00:00
ConorB 44c0ecd6cc Move logic of useCompareExtension to a Web Worker (#605)
Closes #545.
2022-12-17 17:08:56 +00:00
Alex Bates 290c3217f7 disable next-pwa in .env (#604) 2022-12-14 23:04:23 +09:00
Alex Bates 2e96373ac7 Projects list, creation, settings pages (#542)
* add projects list

* new project page

* mypy

* allow '.' in github identifiers

* implement project create

* project settings

* disallow anons from being project members

* uploadable project icon

* docker attempt

* fix tests

* add tests

* add description form

* refactor to add useEntity and FieldSet

* move FieldSet out of subdirectory

* use same page for project tabs

* scroll up to UnderlineNav when tab changes

* stylelint

* configure vscode mypy extension

* mypy

* fix mypy and dmypy

dmypy does not support follow_imports=silent. Instead we explicitly
disable most checks for asm_differ and m2c, which
has the same effect

* remove redundant mypy flags

* FieldSet style tweaks

* give UnderlineNav horiz padding

* fix swr mutate of project header

* few tweaks to help docker (#550)

* eth changes

* use POST/DELETE rather than PUT for project members

* add migration

* fix pr creation

* simplify project platform derivation

Co-authored-by: Mark Street <22226349+mkst@users.noreply.github.com>
Co-authored-by: Ethan Roseman <ethteck@gmail.com>
2022-10-07 20:12:18 +09:00
Alex Bates b17d647999 update next-pwa and next-translate (#549) 2022-09-21 16:10:15 +09:00
Alex Bates b46b318d38 #539 again (#541)
* Revert "Revert "Frontend performance/accessiblity tweaks (#539)" (#540)"

This reverts commit 01a6ad58d5.

* don't use swc
* make useCompilation error detecting more resilient
* add browserslist
* supply sizes prop to UserAvatar Image
* be less specific about error type
2022-09-19 14:42:59 +01:00
Ethan Roseman 01a6ad58d5 Revert "Frontend performance/accessiblity tweaks (#539)" (#540)
This reverts commit be2bb90c01.
2022-09-17 16:13:43 -04:00
Alex Bates be2bb90c01 Frontend performance/accessiblity tweaks (#539)
* update eslint for next.config.js

* add webpack-bundle-analyzer

* use next/future/image

* improve text contrast in various places

* render scratch page on server

* fix username color on user page

* add title to commit hash

* fix apple-touch-icon

* remove user-scalable=no

* oops
2022-09-17 15:15:03 -04:00
Alex Bates 935828bf35 Add appearance options (#523)
* add auto light theme

* increase editor contrast

* improve settings page, add theme picker

* don't rehydrate when clicking settings tab

* add code font family setting

* add code line height setting

* add code color scheme editor

* base selection/highlight colors on background not site theme

* add footer to settings page

* fix /settings links

* add color scheme presets

* fix lil bugs

* update diff colors

* darken light colorscheme bg

* 'Preferences' -> 'Settings'

* bump stylelint

* fix stylelint issues

* combine diff/code font size settings

* fix diff column distribution bug

Introduced in #520

* remove save/fork duplicate button from scratch toolbar right

* move compile button

* move settings button to nav

* allow styling cm gutter color

* fix editor height on settings

* act as sidebar when nav is toggled on large widths

* improve breadcrumb styling

* improve search styling
2022-09-14 12:15:23 +01:00
Ethan Roseman 968978179b attempt to not use experimental minifier 2022-03-31 22:36:45 +09:00
Ethan Roseman 8ea10ca286 CodeMirror & PresetSelect fix (#413)
* yarn upgrade

* update eslint no-multiple-empty-lines rule

* update Next.js & React

Resolves #358.

* use CodeMirror in scratch editor

* use codemirror on new page

* move extensions out of CodeMirror component

* grow scratch codemirror

* fix state bug

* initial theming

* fix scratch page SSR

* fix credits page rendering

* max width for AsyncButton error popup

* word wrap

* bye monaco

* cleanup

* style scrollbars everywhere

* tab stuff

* updates

* more

* update codemirror theme

* new react, backend deps, preset on scratch, bugfixes

* improve monospace areas

* store preset name on scratch

* stylelint

* mypy

* mypy 2

* monospace

* fix monospace

* add padding to editor

* fix saving

* fix selection colours

* Highlight assembly line on source selected line change (#416)

Co-authored-by: Alex Bates <hi@imalex.xyz>

* mypy & black

* font stuff

* remove courier new

* make diff style consistent with editor

* fix codemirror exception when editing eof

* attempt to reduce layout thrashing

* /new: store presetName in localStorage

* use react-window for diff

* link diff column scroll position

* hide double scrollbar

* increase overscan

* pointer-events:none on diff header

* fix diff header thing

* make diff columns non-draggable

* dont shrink tabs

* add draggable bar between diff columns

* remove log

* fix 2-col mode

* fix diff align

* DiffCell support cell=undefined

* drag better

* style .cm-search

* eth style changes

* reduce rerenders when dragging diff bar

Co-authored-by: Alex Bates <hi@imalex.xyz>
Co-authored-by: hatal175 <hatal175@users.noreply.github.com>
Co-authored-by: Alex Bates <alex@nanaian.town>
2022-03-31 22:22:39 +09:00
Ethan Roseman 2bfbe4583d Revert "Upgrade dependencies - eth (#405)" (#407)
This reverts commit 15977c0b8a.
2022-03-18 03:36:28 +09:00
Ethan Roseman 15977c0b8a Upgrade dependencies - eth (#405)
* Upgrade dependencies - eth

* oopz

* do what alex did

* more - fixes #403

* revert stylelint update
2022-03-16 06:16:21 +09:00
Ethan Roseman 6b1ee90acd Compiler/platform refactor (#396)
* foyst

* clang & agbcc

* more

* wii/gc

* more

* fix

* more

* references

* fixes

* CI fix

* nabbed em

* gcc2.7.2kmc

* meowp

* Tweak Dockerfile + other bits (#398)

* Tweak Dockerfile + other bits

* Capitalise

* Enable/disable compiler downloads via Environment variables

* appease black

* migration

* flags / presets in Compiler

* fixed tests

* /compilers

* mypy cheese

* upd8s

* name

* frontend goodness

* i18n

* cleaners

Co-authored-by: Mark Street <22226349+mkst@users.noreply.github.com>
Co-authored-by: Mark Street <streetster@gmail.com>
2022-03-14 02:33:19 +09:00