← Back to Projects

experimental

Simple Pages

A full-stack publishing prototype built with React, Express and PostgreSQL, exploring user-created pages and low-friction content sharing.

Simple Pages was an early full-stack prototype exploring the idea of creating and sharing simple web pages with minimal friction.

The frontend was built in React, providing a basic interface for interacting with the system, while the backend was developed using Node.js and Express, with PostgreSQL handling persistent data storage.

The application included a full user system with registration, login, password hashing and JWT-based authentication, allowing users to create and manage their own pages.

Core functionality included creating, viewing and deleting pages, as well as retrieving user-specific content, forming the foundation of a lightweight publishing platform.

Although the project remained a prototype, many of the concepts explored here — particularly around user-owned content and simple publishing workflows — were later developed further in JotSpot.

Key Features

  • React-based frontend interface
  • Express backend with PostgreSQL database
  • User registration and login system
  • JWT-based authentication
  • Page creation, retrieval and deletion
  • User-specific content management

Lessons Learned

  • Frontend framework choice should align with the complexity of the product
  • Not all applications benefit from heavy client-side architecture
  • Simplicity and user experience can be more important than technical stack choice
  • Recognising friction early can lead to better long-term design decisions

Reflection

Post-Mortem

Simple Pages began as an exploration into building a lightweight, multi-user publishing platform, with a React frontend and an Express/PostgreSQL backend.

The core functionality was in place early on, including authentication, user-owned content and page creation, forming the foundation of a functional system.

However, as development progressed, the choice of React for the frontend began to introduce friction for this particular type of application. The additional complexity and overhead did not align well with the goal of creating a fast, simple and low-friction writing experience.

This led to a shift in thinking around how the interface should behave. Rather than building a more complex client-side application, a server-driven approach with simpler frontend logic became a more suitable direction.

At this point, development of Simple Pages was intentionally paused, with the focus moving toward rethinking the architecture and user experience.

These ideas were later developed further in JotSpot, where a different approach to rendering and interaction was used to better match the original goal of simplicity and speed.