DidactMacros
White-label Best Practices and Handling Contexts in White-label (Multi-tenanted) Application
I’m in the process of implementing a white-label application with the help of this guide (I’ve diverge somewhat with respect to handling of subdomain routing).
I want to implement some sort of nesting for contexts to separate the business logic in the same way that multi-tenancy isolates the data.
I’d appreciate some tips here. I plant to implement the business logic isolation after the multi-tenancy is implemented.
I have already implemented a router per-subdomain approach for routing, so each subdomain is going to have custom layouts, core-components, controllers, views, and components.
What rules am I breaking so far (with respect to best practices)?
How important are those rules for security, performance and extensibility?
How can I address potential security concerns?
What surprises may I encounter when nesting the contexts so as to organise and isolate distinguish business logic?
I’ve seen the mix phx.new apps/<app_name> approach here.
Does the approach I’m using offer limitations and obstacles overcome by the above approach? (btw I’m not requesting that one read the entire guide linked above, however, I would appreciate perusal of the section that shows use of mix phx.new within an existing project)
Please let me know if clarity is required.
First Post!
garrison
If you are implementing all of these things (and contexts) separately for each domain, can you explain which things are shared? My impression of “white-labeling” was that everything would be about the same, save for some (relatively) trivial branding changes.
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #advent-of-code
- #elixirconf-us
- #distillery
- #processes
- #forms
- #api
- #metaprogramming
- #security
- #performance









