<- BACK TO PORTFOLIO

Universe&You - Popular Science Blog and CMS

Main page

The goal of the project was to create a lightweight and efficient blog with a custom, streamlined CMS panel. I designed a simple, clean, and fully responsive layout from scratch. The heart of the application is a self-built block editor, providing a seamless and intuitive way to create content.

View source

The Idea

The project stems from a long-standing desire to create a dedicated space for curiosity. I envisioned a platform focused on popular science and literature summaries, where the reading experience is paramount. To achieve a truly clean aesthetic, I decided to bypass pre-built solutions that often impose rigid layouts and technical bloat. Instead, I built a custom environment to ensure complete control over the design - creating a minimalist setting where discovering the mysteries of the universe takes center stage.

The Execution

Architecture & Performance

I approached this project as a full-stack challenge, leveraging SvelteKit and Tailwind CSS to build a high-performance interface without heavy frameworks. The goal was to achieve a perfect lighthouse score and instant page loads. On the backend, I architected a flexible schema using Neon Postgres and Drizzle ORM. This setup powers the custom editor and ensures the CMS remains lightweight, type-safe, and scalable compared to traditional WordPress-like architectures.

The Core Challenge

The heart of the application is a self-built block editor. Instead of relying on a generic WYSIWYG library, I implemented a block-based system where each paragraph, image etc. is a separate data object.

  1. State Management -> Utilized Svelte 5 Runes ($state) to handle complex reactivity and deep object mutations efficiently.
  2. Dispatcher Pattern -> Created a dynamic rendering engine that iterates over the block list and renders the correct component (<ParagraphBlock>, <ListBlock>, etc.) based on the data type.
  3. Performance -> Implemented optimized array operations (using splice instead of filter) to maintain object references and ensure smooth UI updates during editing.
portfolio
portfolio
portfolio
portfolio
portfolio

What's the future

I will continue refining the core feature - the custom block editor - by adding support for richer media and interactive elements. Additionally, leveraging the existing decoupled API, I plan to explore native mobile development (iOS) to extend the platform's reach beyond the web.