marinasundstrom / item-catalog Goto Github PK
View Code? Open in Web Editor NEWApp for cataloging items with pictures
App for cataloging items with pictures
This document outlines the ambitions for the Messenger/Chat feature.
Users are able to start start a conversation, in which the participants can:
A conversation can be public or private.
Public means that it is visible to all.
Private means that it is between two or more participants.
Attach an emoji to a message.
Reply to specific message.
A User can post, edit and delete their own conversations and messages.
Administrators are delete other Users' conversations and messages, but not edit them.
Make it possible to run this app in the browser.
Extract common Blazor components to separate Library project.
Create platform abstractions for services.
Changes from side-projects have been integrated.
I copied projects and adapted them for this solution. Changing namespaces and such. As a consequence, some files might have been replaced, and Git has not detected them as being renamed.
One notable update:
Improved User handling. Admins can create Users.
The apps now constructs URLs for the service clients from NavigationManager.BaseUrl
. This works fine when running in a browser, but not for other mobile apps.
When running in a mobile app the URLs have to be hard-coded to a specific endpoint.
I realize that the use of Api Keys is not ideal. But now there is an ApiKey service that lets you define and validate API Keys - instead of hardcoded ones.
ApiKeys are primarily used to allow for automation, when seeding users (Seeder project)
What is lacking is a proper way to handle Api Keys auth with User Auth. Right now, there is (still) an "Api" user in each service. It does not tell anyone what identity did something in the Api.
ApiKeys need to be tied to a "Project".
Perhaps API keys are not the right way to go.
Other stuff to consider is handling access to certain resources.
Create
Regenerate
Revoke
WebApi csproj
Program.cs
and
Use Identity Server.
AppService should communicate with Notifications using Async Messaging, not RPC.
I have created a project in which merge this project and the TimeReport project.
Relevant changes should be integrated here.
Improvements with IdentityService.
The functionality is broken.
These services shall be treated as third-party services. They are not to be called directly.
AppService should provide an interface for that.
In the AppService folder, remove the Catalog.* prefix from project folder and project file names.
In the WebAPI project, add Catalog.* to namespaces.
Restructure folder structure in each Server project to adhere to Clean Architecture and DDD, and move files to the correct folders to facilitate discoverability within the structure.
Add property:
Update CommentsCount
YARP?
Make a Domain Event trigger and Integration Event.
Add Notification Handler that handles Domain Event and publishes an Integration Event.
Let the Worker listen to that Integration Event and Do something - Send a Command that makes Application update something.
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.