← Recent work

Brand website / Catalogue / Integrations

INIKA Organic.

From discovering the brand to choosing a product.

Website inikaorganic.pl
inikaorganic.plRead the story ↓

Presentation of the actual website.

Project story

A brand website. A complete system behind it.

For INIKA, the visual website is only part of the work. Behind the brand presentation are a catalogue fed by store data, editing tools, guides and product-selection features. I took the project from a Replit application through Firebase to a custom WordPress implementation. Purchases take place at e-fontanna; the INIKA website helps visitors understand the range and choose beforehand.

The starting point

Introduce the brand and make choosing cosmetics easier. Connect an up-to-date catalogue and guides with purchases at e-fontanna, while giving the team practical editing tools.

My role

I handle application development, the backend and Shoper integration, the WordPress migration, a custom theme and plugins, editing tools, SEO, analytics, and desktop and mobile views.

An API-fed catalogue

Store data, with synchronisation kept separate from editorial content.

6 clear editing tiles

Short forms, a media picker and product search instead of a long settings list.

Choose → purchase

Guides and tools help visitors choose a cosmetic, then link to its product page at e-fontanna.

What I did

My work on the project

March: from Replit to a working application

On 10 March, I took over a complete Replit project: React, TypeScript, an Express backend and PostgreSQL on Neon. I adapted builds, routing, sessions, image uploads and configuration to Firebase Hosting and Functions. I launched the public website and administration panel. Initially, I retained the existing database; moving data to Firestore came later.

April: catalogue resilience and a new database

After Neon availability problems, I improved fallback catalogue reads, timeouts and the website’s response to API errors. On 8 April, I migrated active data and sessions to Firestore, removing the running application’s dependency on Neon. I also fixed category assignments, availability filters and product links so the views presented a consistent range.

The catalogue, promotional prices and availability

In the application, I connected the catalogue to the Shoper API and automated updates. I handled current, regular and promotional prices, plus the lowest price in the 30 days before a reduction. I refined availability, categories, images and the synchronisation schedule. Commercial data remained separate from editorial content. Purchases stayed at e-fontanna, on the corresponding product page rather than in a second cart.

Website speed and backend costs

I removed heavy base64 images from catalogue responses, introduced lighter image URLs and caching, and split application code into smaller parts. I improved the opening screen and product loading. In June, I reduced continuous cloud-function operation through scaling to zero and an instance limit. I returned to performance measurements after migration: the 20 October homepage PageSpeed test scored 97/100 on mobile and 100/100 on desktop. These are results from one laboratory test, not a permanent guarantee.

More than a list of cosmetics

I expanded products, categories, bestsellers, promotions, guides and collections. The work covered galleries, ingredients, certifications and links between content and products. The July application stage included 82 active products and 18 guides and collections. These figures describe that release; the catalogue continued to evolve afterwards.

The custom CMS before WordPress

I expanded the original dashboard so real website content could be edited: banners, navigation, brand sections, products, categories, FAQs, newsletter, contact details and social links. I aligned editing fields with the public views, removed empty values and demo copy, and tested saving and reloading. This was the editing system I developed before the later decision to move to WordPress.

WordPress with the same website character

I built a custom theme and plugins to bring the application’s appearance, catalogue and functionality into WordPress. Content, images, ingredients, certifications and the quiz became editable in the dashboard. The catalogue gained a custom plugin supporting Shoper integration. I preserved search, whole-catalogue sorting, pagination and manual product hiding. Newsletter signup was connected to the e-fontanna list. I also checked that the new installation was independent of the old Firebase backend. Visitors still choose on the brand website and buy at e-fontanna.

Galleries, ingredients and information sources

During the October stage, I expanded galleries for 64 products to 2–6 images, with thumbnails and zoom. For 45 products, I prepared plain-language ingredient explanations based on verified INCI lists and the brand’s glossary. I added nine certification explanations with official sources. The photographs and source information belong to the brand; my work covers presentation, relationships and dashboard editing of these sections.

Editing simplified into six tiles

After migration, making content editable was not enough: a long settings list was still awkward. I replaced it with six clear tiles, short forms and one save button. I added a media picker, product search and collapsible advanced settings. I tested banner, product and quiz saves in narrow views too, restoring the data after the checks.

Switching the domain and preserving URLs

I first deployed a separate copy and checked its views. On 19 October, I published WordPress at inikaorganic.pl. The work covered HTTPS, the www variant, redirects, product and guide URLs, and the sitemap. I checked public responses and canonical URLs while preserving email configuration.

Helping visitors decide

I added and refined a skincare quiz, product comparison and shade-selection tools. They use the real catalogue. The comparison tool presents selected cosmetics side by side; the quiz ends with a recommendation and relevant links. I also aligned navigation, the footer and the appearance of these pages.

Analytics with visitor choice

After the migration, I connected the website to GA4 and preserved its Search Console property. Measurement starts after consent, which visitors can withdraw through footer settings. I tagged outbound links to e-fontanna to distinguish where visitors enter the store. I connected measurement across the two domains and tested the sequence from an INIKA visit through the store, a product, the cart and checkout initiation. A completed purchase still needs separate verification; clicks are not treated as sales.

An analytics dashboard and practical reports

I built a WordPress dashboard combining GA4 and Search Console: current activity, traffic sources, viewed pages, store referrals and successive journey stages. I added period selection, Google queries and CSV export. Realtime information, delayed reports and test visits are distinguished, so missing data is not presented as a confirmed result.

SEO and content available in the initial HTML

I organised metadata, canonical URLs, internal links, the sitemap and structured data for products and articles. Essential content is present in server-delivered HTML. The 21 October check covered 116 sitemap URLs: 200 responses, one H1 and self-referencing canonicals. That is a technical check, not a promise of search rankings.

Refining desktop and mobile views

I checked the new pages on wide and narrow screens: navigation, galleries, the quiz, comparison and shade selection. I refined header proportions, the mobile menu, button feedback, the footer and the brand icon. I tested actual navigation and tool results. A purchase test in the store remains a separate stage.

Project timeline
  1. First Firebase launch

    The frontend, Express, existing Neon database, images, sessions and administration panel.

  2. From Neon to Firestore

    Data and session migration, plus catalogue-resilience improvements.

  3. Expanding the custom CMS

    Website sections, field mapping, content cleanup and dashboard testing.

  4. Controlling cloud costs

    Scaling functions to zero and limiting instance counts.

  5. Application and catalogue development

    Synchronisation, products, guides, collections and CMS tests.

  6. Building the WordPress version

    A custom theme and plugins, editing tools and a test copy.

  7. Launching on the main domain

    WordPress, HTTPS, redirects and GA4 with consent controls.

  8. Simpler editing and measurements

    Six editing tiles and a PageSpeed test: 97 mobile, 100 desktop.

  9. Tools and analytics

    Comparison, shade selection, visual consistency and a GA4/Search Console dashboard with CSV.

  10. SEO and brand-icon checks

    Reviewing 116 sitemap URLs and refining the favicon.

What comes next

I continue to develop the brand website and its connection to e-fontanna. Further decisions are informed by visitor behaviour and the team’s needs. The INIKA brand, products and materials belong to their respective owners; my contribution is the website, integrations, tools and their development.

Next project

Artur Zawadzki