GithubHelp home page GithubHelp logo

linkdotnet / linqmarbles Goto Github PK

View Code? Open in Web Editor NEW
25.0 25.0 3.0 606 KB

LINQ Marbles is a collection of interactive diagrams for learning and experimenting with LINQ.

Home Page: https://linqmarbles.info/

License: MIT License

HTML 86.04% C# 3.85% CSS 5.63% JavaScript 4.48%
csharp dotnet linq

linqmarbles's Introduction

Header

Welcome

Hey lot, my name is Steven and I am a .NET developer based in Zurich. Welcome to my public page. I am most likely interested in new technologies. If you want to know more just check out the links down below.

I also have a blog here and if you are interested in the source code of it, here you go.

Social

Linkedin Badge Stackoverflow Badge Github Bade Blog Blade

Github

Metrics

linqmarbles's People

Contributors

dependabot[bot] avatar diegodrf avatar linkdotnet avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

linqmarbles's Issues

Overflow when we add many elements

Consider a scroll or wrap when we add many elements into the collections. I tested it on my phone and because of the screen size, I reached fast to the borders of the screen. I could no longer see the entire collection

Use Blazor United

Use Blazor United to optimize SEO and reduce the initial loading time by quite a lot.

Add Explanation text for each operator

While the visuals might be nice, a small text explaining the situation might be even better.
Especially for things like Single that throws an exception if more than one element was found.

Ideally we would add links to the docs of Microsoft itself.

New home page

I would like to suggest creating a home page to list all groups.

Currently, we are showing the where operator when the pages open. My suggestion is to create a home page listing all groups using cards/buttons in a grid layout.

This approach is more mobile-friendly than a side list.

An example of the proposed layout can be seen in the Flutter widgets documentation. There is a title (in our case will be the operator group) and a short description.

.NET 8 GA / MudBlazor issues

Running the application locally after upgrading everything to .NET 8 GA leads to issues in combination with MudBlazor.

Here the console log, after an upgrade and running the application:

Error: One or more errors occurred. (The JSON value could not be converted to Microsoft.AspNetCore.Components.RootComponentOperation[]. Path: $ | LineNumber: 0 | BytePositionInLine: 1.)
    at Jn (marshal-to-js.ts:349:18)
    at Ul (marshal-to-js.ts:306:28)
    at 00b1e8b6:0x1faca
    at 00b1e8b6:0x1bf8b
    at 00b1e8b6:0xf172
    at 00b1e8b6:0x1e7e4
    at 00b1e8b6:0x1efda
    at 00b1e8b6:0xcfec
    at 00b1e8b6:0x440ad
    at e.<computed> (cwraps.ts:338:24)

Navigating to a new page:
image

Interactivity is completely broken - it seems I can't even click a button anymore. My best guess is to wait for MudBlazor v7.

Assumption: It is related to MudBlazor.

Add searchbar to filter operators

Currently, we are having >30 operators in various categories. This can make it tricky to look for a specific operator.
A search bar might help here a lot.

Open points:

  • How do we want to filter? string.Contains vs string.StartsWith
  • Shall we include categories as well? So a user could search for "Quantification" and sees all the sub-entries
  • Should empty categories be hidden (probably yes).

Error: Failed to start platform.

The application is not working well locally.

After the new architecture organization uses multiple projects, the application is not able to access some files.

At the browser console log the message is:

Uncaught (in promise) Error: Failed to start platform. Reason: TypeError: Failed to fetch dynamically imported module: http://localhost:5000/_framework/dotnet.js
at blazor.web.js:1:174308
at async Es.startWebAssemblyIfNotStarted (blazor.web.js:1:171701)

Some files are not loading properly.
image

Group Operators

Currently all operators are just in one list - it would be helpful to have them grouped by their logical operation.

For example: Select, SelectMany as "Aggregation". Where, Skip as Filtering.

Min(By)/Max(By) behaves incorrectly

Write now there is a NullReferenceException due to the using when an empty array is given as input.

It ideally should throw SequenceContainsNoElementsException or simliar.

Not able to recover from error-state

Repro

  1. Go to the "Single" page
  2. Remove the "4" --> leads to an exception (NoMatch)
  3. Add a marble that is >= 4

Currently this will still lead to an exception, but it shouldn't.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.