I am not a database expert, but it seems it will be very challenging to maintain a company database of this size, especially with so many duplicate tables and data from different applications…
feat: init client rewrite
frappe:client-rewrite
← ruchamahabal:client-rewrite
An attempt to rewrite framework's client-side using vue & frappe-ui Creating a …temporary branch `client-rewrite` until there is something complete to be merged to develop <details> <summary>Login & Reset Password</summary> <img width="350" alt="image" src="https://github.com/frappe/frappe/assets/24353136/c83d3279-f305-4c0e-b26b-0e4dcf212a3f"> <img width="350" alt="image" src="https://github.com/frappe/frappe/assets/24353136/c8dd5304-0424-450c-8ae9-36f22cf710ae"> </details> <details> <summary>Iconic Desktop</summary> <br> https://github.com/frappe/frappe/assets/24353136/a044a1f1-4916-4537-b891-e4f9a0db3e1f **Source: Desktop Item** <img width="1390" alt="image" src="https://github.com/frappe/frappe/assets/24353136/72c12188-ba8f-46c8-998a-a31108faa274"> <img width="1390" alt="image" src="https://github.com/frappe/frappe/assets/24353136/bbdaa80e-0dba-4bf4-ad7f-58002d01b169"> </details> <details> <summary>Routing</summary> <br> **Before**: All reports, doctypes, page routes had the same routing pattern /app/:item (item could be a doctype or workspace or page or a report, etc and what to render was decided on the fly) **After**: Now the base route has been changed from /app -> /desk Because there are multiple apps in the ecosystem and inside desk, /app seems invalid. DocTypes are the most visited links so the routing for them is straightforward. All the other types have a module slug and also explicitly specify the type of the link as part of the URL (page/workspace/report) **DocType**: /:doctype -> /item **DocType views:** /:doctype/view/list -> redirects to /:doctype /:doctype/view/report **Workspace (workspace need not be tied to a module so it doesn't have the module slug)**: /workspace/:workspace -> /workspace/recruitment **Page**: /:module/page/:id -> /hr/page/organizational-chart **Report**: /:module/report/:id -> /stock/report/stock-balance **Dashboard**: /:module/dashboard/:id -> /hr/dashboard/recruitment-analytics </details> <details> <summary>Breadcrumbs</summary> <br> <img width="814" alt="image" src="https://github.com/frappe/frappe/assets/24353136/dbb836b7-ec2b-475d-8bc7-c01f8aa5b72a"> </details> <details> <summary>Module Shell</summary> <br> Current problems with navigation: Workspace has all the links for navigation so once the user leaves the workspace, the only other way to quickly navigate is the awesomebar or going back to the workspace. Now all views will load in a module shell with a persistent sidebar so that you can always have the most used links handy on the sidebar. <img width="1490" alt="image" src="https://github.com/frappe/frappe/assets/24353136/05c6ae1d-f1cc-4fe5-b452-552a9d88909a"> </details> <details> <summary>Module Sidebar</summary> <br> Collapsible Sidebar with 3 types of items: Links, Spacers & Sections <img width="322" alt="image" src="https://github.com/frappe/frappe/assets/24353136/12b01e2d-9284-432e-a9d7-d00ca3cd99a1"> <img width="1262" alt="image" src="https://github.com/frappe/frappe/assets/24353136/09127aa0-50eb-4926-8e14-33a09b2356f6"> https://github.com/frappe/frappe/assets/24353136/8311a5dd-de09-4814-9f66-f3dbcc1f6e43 </details> <details> <summary>Editable Sidebar from the UI</summary> <br> If you are in dev mode, sidebar will get exported to JSON just like workspaces Otherwise, if a user customizes the sidebar on the production, a new copy will be created and saved for the user based on their configuration. This overridden sidebar will be loaded for the user for that particular module every time. <br> https://github.com/frappe/frappe/assets/24353136/c28234d8-3899-4532-9ca2-5762efa21a7e </details> `no-docs`