Richard Pickman

year

2022 - 2023

client

Anton

project

Website

role

developer

image

Task

During the winter of 22-23, I received a message on Telegram from a client with a unique request. They were looking to create a website capable of hosting articles and featuring an integrated article-writing tool. The challenge lay in the fact that the client had no coding experience. My initial obstacle was to find a suitable article builder/editor, as Markdown was ruled out given the client's lack of technical knowledge. After an extensive search, I settled on Facebook's Lexical Editor for several reasons: it had solid backing from Facebook, ensuring stable funding and a skilled development team, and it proved to be a stable and bug-free solution. Moreover, its lightweight nature and customizable node-tree architecture made it a practical choice. With the editor selected, I kicked off the development phase.

Developing

The development phase began after a week of planning and designing the website. I used a tech stack that closely resembled the one from a previous project, utilizing NextJS and the AWS ecosystem. The website took the form of a multi-page article platform, including a main page, article listings, a 404 error page, an admin panel for article management, and, notably, the article editor. Building the editor was the most time-consuming task, owing to its extensive customization options but poor out of the box functionality. To ensure the editor's smooth operation, I started by creating a toolbar for text formatting. During beta testing, I achieved significant progress: I developed all pages from scratch, implemented a robust article search system, established administrative privileges for article editing, and modularized the editor for potential future use, primarily for internal purposes. This time, I opted for Tailwind for styling instead of plain CSS, mainly due to its smaller bundle size. Currently, the website is still in the beta phase, as the client hasn't had the opportunity to review it due to political constraints. To maintain code quality and consistency, we relied on trusted tools like Eslint and Prettier config.

NEXT JS

Dynamo DB

S3 Bucket

Cognito

Tailwind

AWS-CDK

Next-Auth

Lexical Editor

NEXT JS

Dynamo DB

S3 Bucket

Cognito

Tailwind

AWS-CDK

Next-Auth

Lexical Editor

Next project
mountains