-
Couldn't load subscription status.
- Fork 9
Description
Describe my work briefly
- Adding tags and search box feature to existing UI v3 code
- Remove the use of
dynfunction for routing case - Add dropdown and address bar routing
- Expanding Type API and removing MonadWidget constraint
- Adding content in home page
- Adding Luite's diff link to matrix table
What is done
Adding tags feature to UI v3
Link: https://github.com/haskell-CI/hackage-matrix-builder/blob/master/src-ui.v3/src/Main.hs#L389-L411
File changed: https://github.com/haskell-CI/hackage-matrix-builder/pull/58/files?utf8=%E2%9C%93&diff=unified&w=1
- Package list will be sorted based on tag selection
- Tag can be selected more than one
Adding search box to UI v3
Link: https://github.com/haskell-CI/hackage-matrix-builder/blob/master/src-ui.v3/src/Main.hs#L783-L797
File changed: https://github.com/haskell-CI/hackage-matrix-builder/pull/64/files?utf8=%E2%9C%93&diff=unified&w=1
- Package will appear as the user typing in the search box
- Packages are sorted based on the word appear in the search box
- User can go to the package's page by clicking the search result
Removing the use of dyn function
Link: https://github.com/haskell-CI/hackage-matrix-builder/blob/master/src-ui.v3/src/Main.hs#L160
File changed: https://github.com/haskell-CI/hackage-matrix-builder/pull/66/files?utf8=%E2%9C%93&diff=unified&w=1
- Change the
Dynamic t FragRouteintoFragRoutefor routing case - Remove the need of
purefunction in the beginning of every route case
Add dropdown and address bar routing
Link: https://github.com/haskell-CI/hackage-matrix-builder/blob/master/src-ui.v3/src/Router.hs
File changed:
- Dropdown routing: https://github.com/haskell-CI/hackage-matrix-builder/pull/66/files?utf8=%E2%9C%93&diff=unified&w=1
- Address bar routing: https://github.com/haskell-CI/hackage-matrix-builder/pull/65/files?utf8=%E2%9C%93&diff=unified&w=1
- Change the url address bar based on selected index state in the dropdown menu
- Change the package's page based on the url
Expanding type API and remove MonadWidget constraint
Link: https://github.com/haskell-CI/hackage-matrix-builder/blob/master/src-ui.v3/src/API.hs#L285-L415
File changed: https://github.com/haskell-CI/hackage-matrix-builder/pull/63/files?utf8=%E2%9C%93&diff=unified&w=1
- Making the type API into one file API.hs for simplicity
- Remove MonadWidget constraint which is no longer supported in Reflex-Dom
- Adding api functions for conciseness
- Remove v2 api style
Adding content in home page
Link: https://github.com/haskell-CI/hackage-matrix-builder/blob/master/src-ui.v3/src/Main.hs#L161-L207
File changed: https://github.com/haskell-CI/hackage-matrix-builder/pull/59/files?utf8=%E2%9C%93&diff=unified&w=1
- Adding details in home page similar to UI v2
Adding Luite's diff link to matrix table
Link: https://github.com/Rizary/hackage-matrix-builder/blob/v3-matrixtable/src-ui.v3/src/Main.hs#L539-L644
File changed: https://github.com/haskell-CI/hackage-matrix-builder/pull/67/files?utf8=%E2%9C%93&diff=unified&w=1
- Remove the
dynfunction insidereportTableWidgetfunction. - Adding luite's diff link in the row header
- remove
joinEfunction and use the existingswitchHoldfunction
TODO
- Adding stylesheet for UI v3
- Fixing bug on cell selection in matrix table
Commit Description
7c29915 is the latest GSoC 2019 commit
Writings
Part one: Haskell-y Ever After: Summer Tales for Every Full-stack Developer
Part two: Haskell-y Ever After: Summer Tales for Every Full-stack Developer