Comments (6)
@saarmstrong created https://github.com/ongoworks/reaction-hero for this package.
from reaction.
I've been thinking that this should really be more than a "hero" manager. What if we allow admin to use this to add any content, on any page using this basic package. So it's a CMS, embed widgets, html,etc..
Also design wise, I keep thinking of something along the lines of Medium. A floating + sign that you click, choose content type and go. Just brainstorming a rough vision here...
from reaction.
Perhaps expanding the scope of this egregiously, here's some thoughts I have extracted from dev chat:
Hero manager, as a content manager:
Where you can add
- pure image / promo banners,etc
- text / html - add a pure html blob
- product - maybe if this weren't a product grid, but some CMS page you could link a product in
- social block - insert some different kinds of social elements, like a twitter feed monitoring a hashtag
flexible positioning
- drag anywhere on a screen, save the dom elements into collection, and re-render with UI.insert/Ui.render in place using those stored elements for positioning anywhere on a page.
- drag sizing of elements.
display logic
- per tag
- per product
- valid date range
- some other logic rules (is logged in, is returning user, geolocation)
from reaction.
You're getting at what I was saying about needing a generic API for adding content to different zones on the page. I would suggest a reaction-layout
pkg, perhaps, which can expose a generic API that lets packages provide additional DOM elements. I think it would be too difficult to allow pure DOM manipulation. It would be easier to define a few zones on each type of page where dynamic content can be added by packages or by the user.
Flow idea:
- Similar to "Add Hero" link that appears right now,
reaction-layout
could display an "Add Page Item" link in each "zone" on each page, when you're an admin. - When clicking "Add Page Item", you can choose which type of item. Simple options like
HTML snippet
orImage from Media library
can be built in toreaction-layout
. Packages can add their own options, too, soreaction-hero
would add a "Hero" type. - Once you choose a type of page item to add, it is displayed, and since you are an admin, you can edit it in place.
- Any items present on the page can be dragged to a different zone on that page, as @aaronjudd suggested.
- As admin, you also see a form for each item allowing you to set criteria for display (the "display logic" listed by @aaronjudd. Maybe in a popover.
from reaction.
Moving reaction-layout discussion to #148
from reaction.
Closing, new functionality that is not a hero manager but will fill this role is coming as part of v0.12
from reaction.
Related Issues (20)
- Make time between checking for active promotions an env var
- Location Inventory BE HOT 8
- Location Inventory BE
- Test upgrading existing 4.x db to Mongo 5
- Typo in promotion removal message HOT 1
- Fulfillment Strategies
- When promotions conflict due to stackability use the promotion that produces the largest discount amount
- Allow shops to issue and use API keys for endpoints
- Stackability Resolution Strategy
- Refactor functions that collect quotes from various fulfillment methods
- Move the Schema extension step from fulillment-type plugin to individual plugins
- Store Pickup BE
- Store Pickup BE
- Failed to initialize a MongoDB replica set. HOT 1
- Allow configurable password reset URL HOT 1
- The CLI does not work - dependencies are not published to npm HOT 6
- Sponsored issue: Shopping Cart Data Sync Issue Affecting Checkout Page HOT 3
- change "Twitter" to "𝕏 (Twitter)" in README.md HOT 4
- Node versioning issue HOT 5
- Keep Get 'It looks like you have not run `npm install` in this directory' Error Even If I Already Do the NPM Install
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from reaction.