Commit Graph

34 Commits

Author SHA1 Message Date
3edef0736c Destroy cards that are considered "learned"
The goal isn't to hoard unlimited storage space on the user's device,
just use the space for as long as necessary to learn a word
2022-08-10 19:08:17 +03:00
51122cceef Allow duplicate card creation
If you are trying to create the same card again it probably means
that you have forgotten what it means.
2022-08-10 18:53:16 +03:00
1ea6ff51a8 Add language selection on card creation, move wiktionary functionality to lib folder 2022-08-10 18:38:20 +03:00
1f5f87999b Small UX improvements for add expression view
* respond to ENTER with query action
* eliminate a case of failure in silence
2022-08-10 08:10:07 +03:00
7a2551f7f2 Use 'study card tool' as the name for the app 2022-08-10 07:27:25 +03:00
cde76e6205 Disable autocomplete and autocapitalize from add expression view 2022-08-10 02:09:49 +03:00
f54225698f Add home page content 2022-08-10 01:36:29 +03:00
ac56ce3f48 Small style improvement on promote and demote buttons 2022-08-10 01:36:29 +03:00
1dd29bd13d Customize app information, fix navigation accessibility bug and icon 2022-08-10 01:36:29 +03:00
532394f181 Switch to single-page vanilla React app, add PWA support
Story time

Too much time was spent trying to get Next.js to build the app
as a PWA. Maybe I've been trying to do this at an unlucky time
when something somewhere in the dependency stack leading up to
next-pwa is only temporarily broken.

At this point enough hours have been spent thorough the project
getting this or that and that to play nice with Next.js, and the
benefits to this project were at best questionable.

When next-pwa didn't deliver a PWA experience with the promised
"zero configuration" setup, and even failed to do so with a lot
of fiddling around and following several issue discussions in
its repo I thought back at all the other nuisances stemming from
trying to get Next.js to play nice in the app's context and
decided it was time for it to go.

Writing this frankenstein of a commit that forces the project
from its Next.js structure into more-or-less the structure of a
vanilla create-react-app project felt like a breeze compared to
any more time spent reading github issues lingering unanswered
or bumping into Stack Overflow threads from a time when none
of the answers are right any longer. Some top answers in Stack
Overflow don't even look like they were ever right.

I don't like the big component switch that I wrote to replace
the seemingly elegant app routing from Next.js. The new app
routing I wrote is a kludge designed to minimize the amount of
code fixes I'd need to do when it came to navigation, but I am
glad to no longer parse numbers out of URLs, put dynamic() calls
in nearly every page, use wrapper Link and Image components so
Next.js can do some magic and a few other problems that right
now I forget. I also appreciate the smaller bundle.

This isn't some content publishing app, full of meaningful URLs
to be shared over the net with other users. There's really only
the skeleton of the app with a few very simple views to navigate
to and then there's the local data generated by the user that the
app just hosts locally.
2022-08-10 01:36:26 +03:00
e88ebee7c8 Remove 'mock data' word entries, replace with smaller initial data 2022-08-10 00:20:31 +03:00
f19f2d5601 Draft functionality for fetching card data from Wiktionary 2022-08-10 00:20:31 +03:00
ec836a8465 Richer card rendering using data from Wiktionary
The choice for pulling HTML data instead of Wiki markup from
Wiktionary was made because the markup content would have
required a lot of code to expand the template data into user
readable content.
2022-08-10 00:20:31 +03:00
d4b838106a Refactor page components, reduce flicker, remove orphaned module
Move some business logic out of the page components. They are now
responsible for just filtering out the unsuccessful render paths
and selecting between an error view or a success view passing the
successfully fetched data.
2022-08-10 00:20:31 +03:00
b43abafa1c Fix top nagivation flickering, add 404 page 2022-08-10 00:20:31 +03:00
ae30e8d4a8 Switch data management to Dexie, add expression promotion/demotion 2022-08-10 00:20:31 +03:00
92f6efa772 Small stylesheet simplification 2022-08-10 00:20:31 +03:00
6f600cf411 Separate error views, minor refactors, stub interaction on practice page 2022-08-10 00:20:31 +03:00
72249d9105 Style fixes
* Fix missing navigation shadow
* Switch to grid organization at top level
* Force calc() sizes to guarantee elements occupy right size
2022-08-10 00:20:31 +03:00
c8ea641e0d Stub practice page 2022-08-10 00:20:31 +03:00
0d0b38391d Simplify CSS styles
A lingering problem exists where the content is allowed to expand
indefinitely vertically. This might be an issue with the stacks of
flex elements near the root of the DOM.

Since the value fixing this is still uncertain I'll leave as it is
for now.
2022-08-10 00:20:31 +03:00
1a4c2ce98f Add expression set details page 2022-08-10 00:20:31 +03:00
47ea97adaf Mock data and add expression set selection page 2022-08-10 00:20:31 +03:00
79ba58bb36 Add ExpressionSetCard component 2022-08-10 00:20:31 +03:00
4f63ec8ee9 Add Page component 2022-08-10 00:20:31 +03:00
b8d3b0578a Add auto-prettifying git hook 2022-08-10 00:20:31 +03:00
e8d99ccf6f Add Navigation, NavigationItem components, storybook router and icons 2022-08-10 00:20:31 +03:00
b3b20de516 Add prettier tool, prettify code 2022-08-10 00:20:31 +03:00
529ca8d270 Add ExpressionCard component 2022-08-10 00:20:31 +03:00
17b0ca596f Move code to src/ 2022-08-10 00:20:31 +03:00
63ca31f6ba Add a CSS reset 2022-08-10 00:20:31 +03:00
20b64fddec Add storybook 2022-08-10 00:20:31 +03:00
133fb62656 Initial commit from Create Next App 2022-08-10 00:20:31 +03:00
faa6cea7dd Initial commit 2022-08-10 00:20:21 +03:00