r/graphic_design - February 2021 Work Showcase

February 2021 Work Showcase : graphic_design

Welcome to r/graphic_design‘s monthly showcase! Each month, we highlight some of the best work submitted by our community. As an added bit of fun and competition, we’ve enabled voting on this post for you to choose your favourite piece of the month (the creator of the piece with the most votes will receive a custom, unique flair in recognition of their achievement). Hopefully you enjoy and please feel free to vote for your favourite 🙂

You can view last month’s showcase here.

Selfish, by u/lloydcordner

r/graphic_design - February 2021 Work Showcase

Credit to u/lloydcordner

Increasingly concerned and fed up with the selfishness of those around them, u/lloydcordner created this poster design this month. The message is design-led, reminding all of us that selfish acts damage the world around us – and that we simply can’t afford to. The attention to detail here is excellent: look at the slight yellowing of the grass near the flaming area, or the tree trunk that ties the dot of the ‘i’ to its stem, giving it an organic feel – as though the message comes from the planet itself. A remarkable piece of graphic design carrying an important message.

Pabst Blue Ribbon Can Design, by u/buster_friendly_

r/graphic_design - February 2021 Work Showcase

Credit to u/buster_friendly_

Designed for the annual can design contest run by Pabst Blue Ribbon beer, u/buster_friendly_ created this stunning illustration (and their girlfriend created the can renders! A nice team project!) The style is retro-futurist, tying the heritage of old-world Pabst beer to 2021, a year dominated by thoughts of the Perseverance Mars Rover, SpaceX, and space. Despite this, the can stays true to the brand, using a limited colour palette to excellent effect and ensuring that the product remains recognisable on supermarket shelves even with its limited edition design.

r/graphic_design - February 2021 Work Showcase

Vectornator Website Hero, by u/chacho1

r/graphic_design - February 2021 Work Showcase

Credit to u/chacho1

Created for popular design tool Vectornator, u/chacho1 designed this animated website hero (view the animation by clicking here). Implemented into browser using Lottie, the animation conveys the product’s key features: smoothing out a designer’s workflow by being a one-stop shop for all aspects of design. The range of differently-coloured bubbles entering the large central bubble (containing the Vectornator logo) indicates wordlessly the range of tools that Vectornator can replace in one place. The rest of the design is sleek, strong, and professsional and remains on-brand for the client.

Grinhaus Branding, by u/papa4ndre

r/graphic_design - February 2021 Work Showcase

Credit to u/papa4ndre

Created for an organic farm, u/papa4ndre shared this blocky logo this month. While perhaps a bit busy to scale effectively (removing the small leaves inside the greenhouse would be a good start), this is an excellent branding concept which I’m getting excited about seeing rolled out more widely across different surfaces: the potential for patterns and use of the various elements here is limitless and provides the foundation for a strong brand! The fruit and veg illustrations form the shape of a greenhouse (tying in the brand name), while their angular corners remind me of the distorting effect that steamed-up greenhouse glass can have if you’re peering in from outside. A very refreshing take on what could otherwise have been a bland piece of work!

Ox Red Envelopes, by u/atticusmass

r/graphic_design - February 2021 Work Showcase

Credit to u/atticusmass

This year is the Year of the Ox and following tradition, u/atticusmass designed these red envelopes for their Taiwanese company (whose logo is a bull). Each element in the design is carefully chosen to convey a message: the fireworks remind us of the celebrations at Lunar New Year, while the hatched lines are reminiscent of traditional Chinese woodcut art, tying this corporate design into its cultural context. There’s a strong visual balance here, with no one element dominating the others – it draws the eye in and I’m kept lingering by finding ever more details within the piece.

There was lots of other excellent work posted this month, and thanks must go to everyone who’s not afraid to share what they’ve been working on with Reddit! We’re looking forward to seeing what’s posted in March – please follow the rules when posting to ensure your work isn’t removed.

Go ahead and vote for your favourite piece above, if you’d like. Once the poll closes in seven days we’ll award a unique flair to the most-voted creator.

Source link

Achieving Micro-frontend Architecture Using Angular Elements

Achieving Micro-frontend Architecture Using Angular Elements

There are several open-source and third-party libraries that have become de-facto standards to reduce development effort and keep complexity out. But as applications tend to become complicated over time, demanding on-the-fly scalability and high responsiveness, a micro-frontend architecture using Angular elements serves as the need of the hour in fulfilling these criteria. In this blog post, we discuss the importance of building a micro frontend using Angular elements and hosting it on Microsoft Azure, along with a technical demonstration of how we can create a micro-frontend using Angular.

What Is Micro-frontend Architecture?

Micro-frontend is a design approach in which app developers split the coding task into multiple frontend apps to ease the app development process. This helps many teams to work simultaneously on a large and complex app using a single frontend code. A micro-frontend architecture offers a more manageable, independent, and maintainable code. Using micro-frontend architecture, development teams can easily integrate, innovate, and iterate apps. Importantly, it encourages making changes to apps like write, rewrites, updates, and improvements in an incremental manner. In a nutshell, it allows enterprises to develop and deploy enterprise-level apps with greater accuracy.

If you’re still over the fence about the need to adopt the micro-frontend architecture, let’s take a closer look at what micro-frontend development can mean for your web apps: 

Smoother Transition CI/CD

Each app integrates and deploys separately, making the CI/CD process a lot easier. For instance, when you introduce a new feature, you do not have to worry about the entire application since all functionalities are independent. 

Stacks and Versions

You can choose to have your stack for each app and have different versions of the same stack. For example, your team can have the flexibility and time to test newer versions of the same stack. 

No Code Sharing

When building large apps, most enterprises tend to share code across features but may lead to scaling issues later when bugs and interdependency over the app grow bigger. The good thing is, this does not apply with the micro-frontends as code sharing is not required for every component.

Easily Change Architecture

Extending the old architecture becomes crucial at times, and you may not have the developer’s availability for better implementation. But with a micro-frontend application, you can develop new features with the latest stack and deploy them independently.

There are two sides to each coin; likewise, there are some constraints of micro front-end:

  • It is challenging to work with various versions at the same time.
  • Testing is difficult to compare due to different environments.
  • Embedding HTML (iFrames) can cause huge accessibility challenges.
  • Each team is autonomous with separate frameworks and codebases, which lead to ambiguous browsers.

It is advisable to thoroughly check all the pre-requisites and the maturity of your enterprise before jumping on to the micro-frontend trend.

Build Micro-frontends With Azure: A Cloud Platform 

Microsoft Azure is a popular service for cloud computing. There are over 600 services that come under the umbrella of Azure which enables creating, testing, management, and deployment of applications and services. A wide variety of platform services are hosted on Azure including Microsoft Software as a Service (SaaS), Platform as a Service (PaaS), and Infrastructure as a Service (IaaS).

Source: Mindtree, 2019

We have depicted a sample of Azure deployment architecture to build micro-frontends for better understanding. The core solutions components are as follows: 

Azure CDN

Azure CDN (Content Delivery Network) allows the effective delivery of content for consumers from different geographies. This helps the content reach faster and closer to consumer regions. 

Web-App Services

The angular frontend is deployed on Azure Web App services, front-ended by the application gateway with WAF security layer. 

API – App Services

Custom backend microservices are deployed on API app services. App Services are fully managed Azure-native PaaS offerings. 


Third-party services are integrated through the API Gateway. On-premises applications are integrated into the Azure cloud through the express route, while the communication goes through the API gateway. 

Here are the primary considerations before you opt for micro-frontend architecture:  

  • Infrastructure scaling – Being a solely PaaS offering from Azure, it can scale based on your business needs.
  • Reduced maintenance costs – Cloud-native solutions do not require any maintenance, i.e. App Services, API Gateway, etc.
  • IaaC – The ideal environment is regularly maintained by the Infrastructure-as-a-Code template.

Technical Demonstration of How We Can Create a Micro-frontend in Angular

In this section, we will show how you can create a micro-frontend using Angular. We will present a micro-frontend tutorial focusing on concrete implementation, highlighting the important steps you should consider building in micro-frontend architecture.

Step 1

Let’s assume that you have the main container and the index.html file that includes the app-root route. 

Step 2

In the second step, you need to go to the project and install the two packages using npm as shown below: 

  1. npm install @angular/element --save
  2. npm install ngx-build-plus --save

The Angular element will allow you to create a custom element and ngx-build-plus will allow you to create a single .js file.

Step 3

You need to presume that you are developing HomeComponent as a micro-app in the third stage of designing a micro web app for app.module.ts. You need to insert the component into the app.module.ts and adjust some code under the ngDoBootstrap function in the AppModule, where you need to create an element where we have built 'app-one' as myCustomElements for example. 

Step 4 

Then, in the fourth step, in your Angular.js file, you need to change some of the building structure into the architecture. Here we need to use the ngx-build-plus, instead of the Angular build default commands.

Step 5

In the fifth step, more parameters need to be applied to the standard commands. Run the following script to convert the project into a single .js file. Firstly, output-hashing=none would stop hashing the file names. And secondly, single-bundle true will bundle all the compiled files into a single .js file.

Step 6

In the last step, it is the same main container in .html which we saw in the first step. So here you need to modify a few of the lines and add the custom tag (App-one) that we already created. Now you need to add that JS file here when you create the build with this command:
(Step 5: ng build --prod--output-hashing none --single-bundle true).

Using this simple flow into the Angular micro-content, you can create a micro front-end in Angular easily. 

Wrapping Up

Through isolated code and supporting independent development, micro-frontends offer a lucrative solution to split the workload among different teams. This solution serves as the backbone of a revolutionary approach to front-end development. If you’re just starting off with web components, the micro-frontends architecture with Angular helps to examine your enterprise UI/UX needs on a large scale to deliver quality, consistency, and greater user experience. 

Source link


SKP’s Product Dev Master Class #01: Innovative Thinking

[Sumith Puri has 16y 04m of Experience and is at a Principal Software Level in the Software Industry. An Ex-Yahoo, Symantec, Huawei, Oracle*, OpenText*, Finastra* (*Original Product Firms Acquired by these Companies). His Deep Rooted Expertise in Product Development, Technology, Java/Java EE Architecture and Development, Programming, Software Engineering is Shared via this Series of Articles. Please Note that the Images, Videos, Artwork, and Quotes are the Sole Property  of the Copyright Owner and Used Here for Non-Commercial Demonstration Purposes]



Bloom’s Taxonomy

Bloom’s Taxonomy was proposed by Benjamin Bloom (Along-with Other Collaborators) to classify educational objectives based on levels of complexity and specificity. There are three main domains into which these objectives are classified:

  • Cognitive Domain (Knowledge Based)
  • Affective Domain (Emotive Based)
  • Psychomotor Domain (Action Based)

In 2001, Bloom’s Taxonomy was revised into the below form:



It is the lowest level in the hierarchy and emphasizes memorization without understanding. Learners will have to absorb, remember, recognize and recall information. However, it is a building block for other levels as Learners must be able to absorb and remember things before moving up the hierarchy.


Remember and Understand go Together, but Understand goes one step ahead. This emphasizes comprehending whatever is learnt. Learners should be able to describe the material presented and also be able to grasp and interpret prior learning.


The emphasis is on applying concepts, laws, methods, rules, theories, and any newly learned information to situations with minimal direction. Learning outcomes require a higher level of understanding than Understand.


This is a higher level than Apply because here the emphasis is on understanding the content and structure of the information. The learner will have to breakdown information into various components and understand the relationship between each part of the information. This may also involve understanding the abstractness or principles involved in each component of information.


The next higher level for a learner is Evaluate where the ability to judge the value of a material applicable to a current situation. The ability to justify a stand or decision through comparing, contrasting, summarizing, and criticizing are applicable here. The outcomes here are very high in the cognitive hierarchy, requiring all abilities below it in the learning hierarchy plus the judgment based on criteria


The highest cognitive abilities or outcomes are associated with Create. The ability of a learner to use all of the levels of the hierarchy to investigate, author, formulate, assemble and design absolutely new or original work.

Edgar Dale’s Cone of Experience (Cone of Learning)



Edgar Dale was an American Educationist who developed the Cone of Learning in 1946. It is an effort to estimate or deduce the (amount of) information one can remember based on how they encounter information. The actual numbers (percentages) mentioned originated in 1967, based on a published study/article. 

The above figure is self-explanatory. On the left-hand outer side of the cone,  details on what an individual or learner will be able to remember based on the actual activities carried out are provided. On the right-hand outer side of the cone,  the outcomes of the learners on what they learner will be equipped to do (or be able to do) as a result of these activities. The center of the cone (or the cone itself) provides examples of the ‘type of activities’. This includes examples of activities that are usually done by learners or advanced learners.

Make Meaning vs. Make Money


As per Guy Kawasaki, The essence of Entrepreneurship is to make meaning. The abstract or the important points in this regard:

  • Companies that have their fundamental mission to make the world a better place have a greater chance to make a difference and to succeed.

  • If you make meaning, there is a greater chance that you will make money. If you set out to make money, you may make neither money nor any difference to the world (meaning).

  • Three ways to make meaning: —Increase the Quality of Life, —Right a Wrong, —Prevent the end of Something Good 

  • If you are not doing any of the three above, then you may have to rethink your organization’s purpose to be.

Buyer’s Market vs. Seller’s Market

A Buyer’s Market is one in which the supply far exceeds the demand. In such a market, the chances of good lying on the shelf for a long time and the prices being lower than usual are the usual outcomes or characteristics.

A Seller’s Market is the exact reversal of the above conditions. This is the one in which the demand far exceeds supply. The sellers have an upper hand under such circumstances and the chances that there is a shortage of goods due to quick sales of available goods and that too at a higher price than usual.

Old Thinking vs. New Thinking



Check your Innovation Quotient #01: Can you Identify 20 (at the least) Different Ways of Dividing a SQUARE into 4 Equal Parts (Equal Parts = Equal Area)?

Greatest Innovators #01: Albert Einstein : Einstein: The Story of a Genius — Documentary

Source link

The Five Stages of Creativity

SKP’s Product Dev Master Class #02: Creativity and Innovatio…

[Sumith Puri has 16y 04m of Experience and is at a Principal Software Level in the Software Industry. An Ex-Yahoo, Symantec, Huawei, Oracle*, OpenText*, Finastra* (*Original Product Firms Acquired by these Companies). His Deep Rooted Expertise in Product Development, Technology, Java/Java EE Architecture and Development, Programming, Software Engineering is Shared via this Series of Articles. Please Note that the Images, Videos, Artwork, and Quotes are the Sole Property  of the Copyright Owner and Used Here for Non-Commercial Demonstration Purposes]


There are various approaches to define Innovation. Innovation can have various or different meanings to various or different people. Since there are so many definitions for Innovation — As a student, I present the top 10 along with the sources or individuals who defined them. You may find individuals and sources from all walks of life providing their own perspective or a definition of Innovation itself. The remaining for you to find from the Internet as a TODO through your own efforts.

1. Innovation is “The creation of new products and/or services.” [Investor Words]

2. Innovation “Lowers the costs and/or increases the benefits of a task.” [Yost]

3. Innovation is “A patentable solution (external verified uniqueness) with a differentiated business model that changes the basis of business for that specific industry sector.” [Ray Meads]

4. Innovation is “To dare to challenge mainstream thinking and behavior pattern.” [Lars Christensen]

5. Innovation is “The practical translation of ideas into new or improved products, services, processes, systems or social interactions.” [The University of Melbourne]

6. Innovation Tournaments: “A new match between a need and a solution.” [Christian Terwiesch and Karl T. Ulrich]

7. Innovation is then “Simply new technology, i.e. the systematic application of (new) knowledge to (new) resources to produce (new) goods or (new) services.” [Maciej Soltynski]

8. Innovation is “The successful exploitation of new ideas.” [Ber]

9. Innovation is “The creation of something that improves the way we live our lives.” [Barack Obama]

That one definition that is accepted by most: Innovation is a) something fresh (new, original, or improved) b) that creates value

It is important we also quote from Wikipedia: 

Innovation is defined simply as a “new idea, device, or method.

However, innovation is often also viewed as the application of better solutions that meet new requirements, unarticulated needs, or existing market needs. This is accomplished through more-effective products, processes, services, technologies, or business models that are readily available to markets, governments, and society. The term “Innovation” can be defined as something original and more effective and, as a consequence, new, that “breaks into” the market or society. It is related to, but not the same as, invention.


Creativity is the process of having original ideas that have value, more often than not comes about through the interaction of different disciplinary ways of seeing things.” [Sir Ken Robinson]

Wikipedia provides the following definition:

Creativity is a Phenomenon whereby something new and somehow valuable is formed. The created item may be intangible (such as an idea, a scientific theory, a musical composition, or a joke) or a physical object (such as an invention, a literary work, or a painting).

Creativity and Innovation

It is very important that one is able to appreciate the difference between Creativity and Innovation before getting ahead with further topics. 

Value + Creativity + Execution = Innovation

Something new is not enough for the definition of innovation. There are plenty of cases where something new has no new value ( a new color of a product or a new chemical produced that does nothing). Sometimes, the value creation results because the item is simply useful to us. We can create a lot of fresh or new things that are of no use and no value. It must create value to be innovative. Also note that the “something” could be a process, product, or service and can start as small as your ideas and thoughts in your brain. In that case, it might just be innovative thinking.

This piece from Business Inside Australia is apt in putting the right thought process across in an Organizational or Corporate Context, including Software Product Companies.

[The main difference between creativity and innovation is the focus. Creativity is about unleashing the potential of the mind to conceive new ideas. Those concepts could manifest themselves in any number of ways, but most often, they become something we can see, hear, smell, touch, or taste. However, creative ideas can also be thought experiments within one person’s mind. Creativity is subjective, making it hard to measure, as our creative friends assert. Innovation, on the other hand, is completely measurable. Innovation is about introducing change into relatively stable systems. It’s also concerned with the work required to make an idea viable. By identifying an unrecognized and unmet need, an organisation can use innovation to apply its creative resources to design an appropriate solution and reap a return on its investment. Organisations often chase Creativity, but what they really need to pursue is Innovation. Theodore Levitt puts it best: “What is often lacking is not creativity in the idea-creating sense but innovation in the action-producing sense, i.e. putting ideas to work.”]

I will leave you with my personal favorite Quote:

Creativity is the Seed, Innovation is the Fruit.

Barriers to Creativity

Functional Fixedness

The inability to use an object for something that it is actually meant for leads to Functional Fixedness. When one understands that a specific thing can be done only in a given way or that an object can only be used for what it was actually intended for, it leads to Functional Fixedness.

Practical Mindedness

Some individuals have the habit of wanting to execute the idea as quickly as it would have occurred to them. This would stifle creativity. It would be in our best interest, most times, that we let the idea mature by asking further and probing questions to ourselves. This may lead to a discovery that no one could ever achieve before.

Fear of Ridicule

This is true, especially for Organizations. If an Organization (or Individual) is not able to take risks then they will usually be working at their sub-optimal potential. It may happen that there is success sometimes and the other times, they may fail. Often, the learning potential from failure is far greater than from success.

Resource Myopia

Resource Myopia is usually a short-sightedness where the individual see things as they are, rather than how they may be. We are usually unaware of our own strengths or of close our eyes to the resources that are actually at our disposal.

Over Specialization

If an individual is over-specialized, he may be stuck with thoughts that are tried and tested. He may not be able to cross-pollinate or apply thoughts from across diverse fields or spectrums.

Vertical Thinking

Vertical Thinking requires one to solve problems through a sequential approach. Vertical Thinking is the opposite of Lateral Thinking. It requires one to solve problems where creative and multi-directional thought processes are considered insensible.

Habit Transfer

The transfer of habit from one activity to another allows for premature judgment of various attributes in a situation. The habit transfer may be both positive or negative transfer.

The above are different (though each of them will fit into one of the below) from the “Blocks to Creative Problem Solving or Block to Creativity” than can be classified as:

  • Habitual
  • Perceptual
  • Cultural
  • Emotional

Conducive to Creativity

Then there are factors that are conducive or ones that promote “Creativity” or “Creative Problem Solving”. These are self-explanatory with a focus on People, Processes, and Product:

01. Self Motivation: Individuals that are Self Motivated will promote Creativity.

02. Committed: Individuals Committed to finding the most Creative Solution.

03. Willingness: Willingness of the Individual to go the extra mile supports Creativity.

04. Quest for Success: Quest for Success allows Creativity to thrive.

05. Dissatisfaction: Dissatisfaction until the Most Creative Solution is Achieved.

06. Understand: Understanding and Being Open encourages Creativity.

07. Ego Blocks: Accept Reality, Adaptability, Sense of Adequacy.

08. Fluency: Produce a large number of Similar Ideas.

09. Flexibility: Open-Minded and Adaptive Problem Solving Approach.

10. Problem Sensitivity: Being Aware that a Problem Exists.

11. Constructive Discontent: Agreeing that Current Solutions are not most Optimal.

12. Permissive Atmosphere: Processes should allow Creative Thinking.

13. Originality: Aware of Value or Creativeness of an Idea.

Stairway to Creativity [5 Stage Process]

The Five Stages of Creativity


Inception: The hardest task in the creative process is not to come out with solutions, but to understand the problem completely, that is at hand. This will allow us to break down the problem into components and also question conventional approaches to solving the same or same class or problems. This also involves creating the Brief or the Scope of the Task. [Understand the Task at Hand]
Incubation: Conscious Thought Process and the Unconscious Modes of Thinking both play a vital role in achieving the most Creative solution. The unconscious mode of thinking (Intuition) allows the cognitive machinery to use knowledge, past experiences, and emotions to formulate and refine ideas. [Put the Task out of Your Immediate Attention]

Illumination: There is no single way to approach Creativity, but most creative people agree that there is an urge to change their mental state at such a point. There is a push to change some surrounding states, fundamentally to find focus and enhance the brain’s cognitive reception of intuited notions. Most experienced creatives will become aware that a new idea is arrived at or is about to be arrived out. This may also be through emotional triggers or feelings that allow them to recognize the potential of the current direction. [Inspiration is Revealed in the Form of Intuited Notion]

Realization: The thoughts that emerged during Illumination are mostly raw in that they are fleeting thoughts and mostly have no structure or context to them. Transforming Imagination into Tangible Form and leaving what is Pertinent to create Finite Form that can be put into Action or bought to Life. [Give Your Idea Context and Structure]

Verification: Testing Ideas against the Actual Outcomes. By Exposing the Idea to further Analysis and Synthesis, we are able to judge its validity and judge the result. Ideas must agree to the original reasons of their origin and motivations behind their creation. If the idea does not sufficiently answer the Brief, take what is appropriate — discard the obscure and go to stage one (Inception) and begin again.

Check your Innovation Quotient #02: Can you make 4 Equilateral Triangles with 6 Matchsticks? In how many Different Ways can you Achieve This?

Greatest Innovators #02: Michael Faraday: Michael Faraday — From Electricity to Power Generation

Best Quotes on Innovation, Education, and Creativity

Quote from Thomas Edison

Source link

r/webdev - [Showoff Saturday] Cyberpunk2077 Shards Database

[Showoff Saturday] Cyberpunk2077 Shards Database : webdev


I’ve been working on a small project related to the game Cyberpunk 2077. In-game, you can collect things known as shards, which are random pieces of lore for you to read. So, I thought it would be useful to create a website version of the shards list so people can freely browse the shards outside of the game.

I’ve tried to replicate the in-game visuals as much as possible, and I’m still working on adding a few more features, mainly full voice acting for all shards.

Unlike the game, I also rearranged the UI to work on mobiles as well!

There’s also a search feature not available in-game. If you use “#AUDIO” in the search box. It will only display shards that already have a voice recording available to listen to.

Let me know what you think! This was coded completely in vanilla HTML, CSS and JS.

visit NightCityShards.net

r/webdev - [Showoff Saturday] Cyberpunk2077 Shards Database

Source link

r/graphic_design - Please help me by filling in this survey on brand experience! (All efforts are appreciate a lot!)

Please help me by filling in this survey on brand experience…

Hi guys, I need your help please! I’m a design student (F) from Amsterdam, The Netherlands focusing on branding and strategy. For my graduation project I’m looking specifically for people aged 16-30 that can fill out a survey for Negative Feed, an art project, turned brand, using cyanotype printing process. My goal is to find out what you value most in a brand experience (especially now with the limited physical activities) so we’re able to enhance our own.

If you have any comments or tips overall, don’t hesitate to contact me! I would appreciate your help, thank youuu!

Click here for the survey link

r/graphic_design - Please help me by filling in this survey on brand experience! (All efforts are appreciate a lot!)

Source link


[Showoff Saturday] TastyIgniter — Powerful, yet easy to use …

Hello everyone! I’m relatively new here :).

TastyIgniter is an open-source, self-hosted restaurant online ordering platform built with Laravel.

It was developed as part of my B.Sc. final year project and already has a growing community of enthusiastic developers and restauranteurs.

Github: https://github.com/tastyigniter/TastyIgniter

Demo: https://tastyigniter.com/demo (login details available on the login page)

r/webdev - [Showoff Saturday] TastyIgniter — Powerful, yet easy to use open source restaurant online ordering system

Storefront demo


  • Manage restaurant chains

  • Easy online ordering

  • Fast online booking

  • Multiple payment options

  • Table management

  • Food review system

  • Coupons and Discounts

  • Multilingual

  • Customizable Delivery zones

  • Customers can choose between delivery and pickup

  • Option to select faster pickup times

  • Custom extensions to add even more features, such as Automatic order printing and Loyalty Points

Source link

[Question] settings item with quantity

[Question] settings item with quantity

[Question] settings item with quantity

Does anyone know how you would call a settings item with quantity, when i google i only find shopify things. I want to make something like that in html/css for a project.

edit: i added a screenshot from obs as example


submitted by /u/DaanDevelopment

Source link

Google search results

An Overview: How-to Implement Google’s Structured Data

As a result of working in web products (both personal and professional), I have become quite au fait with SEO from a technical point of view, and the purely technical things you can do to put you in good standing – all of which really, are just web best practices to be a good web citizen – things that we should be doing to make the web better (proper use of HTTP headers, mobile friendly designs, good performance for people on slower connections, etc.). 

One thing that is a bit above and beyond that is the use of Google’s Structured Data. I will talk about what it is and what it does below, but if you are dynamically loading webpages (e.g. your website isn’t just HTML on a web server, but either served from a server-side application, or is an API driven JS application), then you are most likely well placed to easily and immediately start implementing it.

1. What Is Structured Data?

Google has defined a set of schemas regarding Structured Data on websites. This is a schema that allows better definition of key data points from a given website. It’s a sensible move by Google and is a natural progression for their search engine.

Think about it, there are millions of websites out there made up with sprawling HTML code and content – whilst HTML is a standard (more or less!) across the web, there are probably millions of different ways people use it. It would be nice if everyone used the H1 etc heading tags consistently, or if everyone used the <em> tag the same way (emphasis vs italics), but the reality is they don’t – some sites will be using HTML as intended but many many more undoubtedly just rely on <span> or <div> tags combined with CSS classes to re-define every element they might need. 

This is all fine, Google is smart enough to pull out the content for indexing – yes, if you use span elements with custom styling for headings on your website rather than the H1+ tags then Google will penalise you, but it won’t stop Google reading and indexing the site. What’s more, its getting smarter all the time –  I’d probably back Google to be able to pull out relevant clips or question/answers directly in a fairly reliable way. However, they are Google and much like the Microsoft/IE of the 90s, they have the dominant market share so they can define their own standards for the web if they want to. That’s exactly what Structured Data is. 

It’s Google saying:

Hey, if you provide some data in your code that looks like this and is cool with our schema, then we will read that, so we don’t have to guess or work out stuff. Or we can just keep trying to work it out from your HTML content.. it’s your call

As mentioned earlier, if you have control over the source code and the data on your website, then this is really powerful. You can define specific (keyword heavy) snippets of content and explicitly tell Google about them – what’s more the Schema for Structured Data lets you define content such as FAQ or how-to directions – so you can go beyond keyword heavy snippets and actually create FAQ for questions that you have identified from Google search trends (or whatever SEO tools you might use).  

Hopefully you get the picture by now – this is a pretty powerful tool.

2. Schema Tags: FAQ and HowTo

Two specific parts of the Structured Data Schema stood out to me as quite universally useful for websites, and also produce decent tangible results: FAQ schema and HowTo schema.

  • FAQ schema allows high level Q&A points to be provided in the metadata for Google – generally useful as most sites will have some element of their pages that could be presented as FAQ
  • HowTo schema allows step-by-step how to guides – less widely applicable, but if you have any website that provides how-to guides or anything with instructions this is applicable.

What exactly to these tags do and why do we care? Well, as well as trying to win favour with the all-seeing google search bot, if it gets picked up it also means we get more search real estate and increased accessibility to our content which should also increase the chance of click through conversion.

If you have ever seen search results like this:

Google search results

These points are being scraped from the site by Google from their schema tags – if you can automate the creation and inclusion of these for your site then you can be in a pretty good position to improve your SEO (still relatively low number of sites implementing these schemas).

3. Automating Your Schema Tags

As I have mentioned a couple of times, and as you have hopefully realised – if you have a dynamic website, you are likely already taking structured data (from your database for example, so reliably structured!) and building HTML pages (either server-side, or data as JSON to a JavaScript app for page creation client side) – but either way, we are starting off with structured data, and the Google Structured Data wants.. you got it, Structured Data! So if you have the content, it really is a generic, simple transform between structured data formats.

Below is some example code – It is based on Jekyll, as that’s what my most recent personal project has been, but it’s also pretty close to pseudocode, so hopefully you can easily translate it to whatever tech you use:

As you can see, its a simple JSON based data structure and you just fill in the relevant parts of the object with your data. 

You can see the full code in my Jekyll food website over on GitHub here – likewise, you can see the end result in action on the website (hosted by GitHub pages, of course) too – the project was a food-science site – covering science and recipes, so a perfect match for FAQ (science pages) and HowTo (recipe pages). For example if you go to a recipe page view the page source, you will see the JSON schema at the top of the page, using the HowTo schema elements laying out resources required and then the steps required, if you compare that data with the actual page you will see the data mirrors each other (this is an important part, Google doesn’t like what it thinks looks like “tricks”). Likewise on the Science of humidity in cooking in the page source you will see the JSON schema with FAQ:

JSON schema

4. Conclusion

If you have control of the data being loaded on to the page (a custom site – something like WordPress or another off the shelf platform might make this harder, but at the same time there are undoubtedly lots of plugins that already handle this for you on your given platform which make it even easier!), and are even vaguely interested in increasing organic traffic and search ranking, then I’d recommend implementing this. It’s very easy to add (it’s also primarily behind the scenes tech – it doesn’t impact the visuals or design of the pages its added to) and can only be beneficial.

As with anything trying to improve SEO, its always hard to measure and get concrete details on, but its relatively low cost to add, minimal ongoing maintenance so I think its worth a shot.

If you have had experiences with Google’s Structured data, good or bad, then I’d love to hear about it!

Source link

Two use cases showing a white action menu with four gray menu links below a blue menu button, and another example of a blog button with a large dark blue tooltip beneath it with two paragraphs of text in white.

Weekly Platform News: Reduced Motion, CORS, WhiteHouse.gov, …

In this week’s roundup, we highlight a proposal for a new <popup> element, check the use of prefers-reduced-motion on award-winning sites, learn how to opt into cross-origin isolation, see how WhiteHouse.gov approaches accessibility, and warn the dangers of 100vh.

Let’s get into the news!

On January 21, Melanie Richards from the Microsoft Edge web platform team posted an explainer for a proposed HTML <popup> element (the name is not final). A few hours later, Mason Freed from Google announced an intent to prototype this element in the Blink browser engine. Work on the implementation is taking place in Chromium issue #1168738.

A popup is a temporary (transient) and “light-dismissable” UI element that is displayed on the the “top layer” of all other elements. The goal for the <popup> element is to be fully stylable and accessible by default. A <popup> can be anchored to an activating element, such as a button, but it can also be a standalone element that is displayed on page load (e.g., a teaching UI).

Two use cases showing a white action menu with four gray menu links below a blue menu button, and another example of a blog button with a large dark blue tooltip beneath it with two paragraphs of text in white.

A <popup> is automatically hidden when the user presses the Esc key or moves focus to a different element (this is called a light dismissal). Unlike the <dialog> element, only one <popup> can be shown at a time, and unlike the deprecated <menu> element, a <popup> can contain arbitrary content, including interactive elements:

We imagine <popup> as being useful for various different types of popover UI. We’ve chosen to use an action menu as a primary example, but folks use popup-esque patterns for many different types of content.

Award-winning websites should honor the “reduce motion” preference

Earlier this week, AWWWARDS announced the winners of their annual awards for the best websites of 2020. The following websites were awarded:

All these websites are highly dynamic and show full-screen motion on load and during scroll. Unfortunately, such animations can cause dizziness and nausea in people with vestibular disorders. Websites are therefore advised to reduce or turn off non-essential animations via the prefers-reduced-motion media query, which evaluates to true for people who have expressed their preference for reduced motion (e.g., the “Reduce motion” option on Apple’s platforms). None of the winning websites do this.

/* (code from animal-crossing.com) */
@media (prefers-reduced-motion: reduce) {
  .main-header__scene {
    animation: none;

An example of a website that does this correctly is the official site of last year’s Animal Crossing game. Not only does the website honor the user’s preference via prefers-reduced-motion, but it also provides its own “Reduce motion” toggle button at the very top of the page.

Screenshot of the animal crossing game website that is bright with a solid green header above a gold ribbon that displays menu items. Below is the main banner showing a still of the animated game with a wooden welcome to Animal Crossing sign in the foreground.

(via Eric Bailey)

Websites can now opt into cross-origin isolation

Cross-origin isolation is part of a “long-term security improvement.” Websites can opt into cross-origin isolation by adding the following two HTTP response headers, which are already supported in Chrome and Firefox:

Cross-Origin-Embedder-Policy: require-corp
Cross-Origin-Opener-Policy: same-origin

A cross-origin-isolated page relinquishes its ability to load content from other origins without their explicit opt-in (via CORS headers), and in return, the page gains access to some powerful APIs, such as SharedArrayBuffer.

if (crossOriginIsolated) {
  // post SharedArrayBuffer
} else {
  // do something else

The White House recommits to accessibility

The new WhiteHouse.gov website of the Biden administration was built from scratch in just six weeks with accessibility as a top priority (“accessibility was top of mind”). Microsoft’s chief accessibility officer reviewed the site and gave it the thumbs up.

The website’s accessibility statement (linked from the site’s footer) declares a “commitment to accessibility” and directly references the latest version of the Web Content Accessibility Guidelines, WCAG 2.1 (2018). This is notable because federal agencies in the USA are only required to comply with WCAG 2.0 (2008).

The Web Content Accessibility Guidelines are the most widely accepted standards for internet accessibility. … By referencing WCAG 2.1 (the latest version of the guidelines), the Biden administration may be indicating a broader acceptance of the WCAG model.

The CSS 100vw value can cause a useless horizontal scrollbar

On Windows, when a web page has a vertical scrollbar, that scrollbar consumes space and reduces the width of the page’s <html> element; this is called a classic scrollbar. The same is not the case on macOS, which uses overlay scrollbars instead of classic scrollbars; a vertical overlay scrollbar does not affect the width of the <html> element.

macOS users can switch from overlay scrollbars to classic scrollbars by setting “Show scroll bars” to ”Always” in System preferences > General.

The CSS length value 100vw is equal to the width of the <html> element. However, if a classic vertical scrollbar is added to the page, the <html> element becomes narrower (as explained above), but 100vw stays the same. In other words, 100vw is wider than the page when a classic vertical scrollbar is present.

This can be a problem for web developers on macOS who use 100vw but are unaware of its peculiarity. For example, a website might set width: 100vw on its article header to make it full-width, but this will cause a useless horizontal scrollbar on Windows that some of the site’s visitors may find annoying.

Screenshot of an article on a white background with a large black post title, post date and red tag links above a paragraph of black text. A scrollbar is displayed on the right with two large red arrows illustrating the page width, which is larger than the 100 viewport width unit.

Web developers on macOS can switch to classic scrollbars to make sure that overflow bugs caused by 100vw don’t slip under their radar. In the meantime, I have asked the CSS Working Group for comment.

Source link