velociraptor45 / xipona Goto Github PK
View Code? Open in Web Editor NEWA Blazor WASM shopping list & recipe web app with a .net backend
License: MIT License
A Blazor WASM shopping list & recipe web app with a .net backend
License: MIT License
With the current circular reference between store and sections, it is impossible for EF Core to insert a new store and new sections.
Change the DB design as following:
Some (actually a lot) of the command handlers, query handlers, services, etc. don't have unit tests. Write them.
Due to the AntDesign update to 0.7.2, the way of disabling already selected stores in StoreEditor changed and must be reimplemented.
A page where item categories can be:
Implement an endpoint for deleting a manufacturer.
This should delete all items with this manufacturer.
The raspberry pi doesn't have a static IP address. If this IP address changes, the pi is not accessible from outside anymore.
If you add multiple new sections to a store (no matter if you create a new or edit an existing one), the dropdown for the default section and the backend can't distinguish between them because they all have the same ID '0'.
You should be able to connect to the internal network from outside of it.
An aggregate root shouldn't contain entities that don't belong to it but only their IDs as reference. Thus, all domain models must be adapted to this constraint
Also:
To explain the project's folder structure better, every important (sub) folder should have its own README explaining what's going on in there.
Upgrade AntDesign to the current version
Display something to indicate that there's an ongoing retry in the background and not all changes are saved.
When clicking on the "Finish list" button, a summary should show up that shows:
It should then have a "Cancel" and "Finish" button to cancel or confirm the action.
Replace extension methods that convert domain objects, entities, read models, contracts into each other with dedicated converter classes. This'll also enable a global usage of factories for creating domain models.
Split the current razor pages into clearer sub-parts to enhance readability of the code
To find ItemCategories & Manufacturers more quickly, sort their lists.
The Dispatchers don't belong to the Domain. Move them to the ApplicationService layer and refactor any parts where they were used in Domain.
The plan is to be able to connect to the docker container that runs ProtonVPN, so that all devices (inside the network [+ from outside(?) ]) can connect to the container and have its traffic channeled through the VPN to ensure privacy.
Update docker-compose files regarding:
Item sections allow users to group items into logical parts (e.g. like sections of the supermarket) to easily access items that are next to each other.
Add Dockerfiles for building backend and frontend images.
Research on programmable LEDs
The requirement is to rout the traffic from the receiving VPN container (see #8) to another one that channels all requests through a third party VPN.
Some repositories don't check if any entity was found before passing it on to the converter, resulting in a NPE.
Research on programmable power switches
To reduce the configuration effort, research the possibilities to outsource some docker-compose configuration into Docker secrets.
Currently, in some repositories a DomainException is thrown. This shouldn't be there but instead in e.g. the CommandHandler.
Research on Speech Recognition
Currently, all connection strings to DBs are hard coded in every ContextFactory. This should just be done in the AppSettings and depending on a system variable, the corresponding DB should be updated.
There is also an update script in Api/Scripts that should be split in two scripts: update-dev and update-prd system
When creating a new store via the frontend, an exception occurs while accessing the store's sections (for displaying the default section) because there are no sections yet.
To easily access the api's client & contracts, a nuget feed has to be set up for them.
Implement an endpoint for marking an item category as deleted.
This should mark all items with this category as deleted and remove them from all active shopping lists.
Different ItemTypes should represent the same kind of product from the same manufacturer but with difference in e.g. flavor or size.
A page where manufacturers can be
After loading all stores, the application should load the shopping list of the first of the stores automatically without the user having to select it.
Add the existing ef migrations to the repository.
The ShoppingListConverter expects that every section contains at least one item when it tries to do
var items = itemMapsPerSection[section.Id].Select(map => CreateItem(map, source));
This must be changed to be also able to convert sections that contain no items.
Update readme for 0.4.0 release
Implement an endpoint for deleting a store.
This should delete the store, all its lists, and item availabilities
Implement the ability to search for an item on the items page by name instead of just filtering for it by store, manufacturer and item category.
Replace mocks like Mock<IShoppingListRepository>
with mock wrappers to make unit tests more readable.
Currently, all frontend pages use the same models. This should be split up into separate models for every page.
When the api requests throws an exception, distinguish between connection errors and 400, 500, etc.
If it's no connection error, don't retry to execute the request.
Reorganize solution by
When creating an item via the ItemEditor and no manufacturer is specified, the application nonetheless stores the manufacturer that was initially selected in the dropdown.
Research on Speaker Recognition
Implement displaying the total price of all items on the list, as well as the price of all items in basket.
Implement validation of request values (e.g. with FluentValidations).
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.