Trigger
Forward
This project began a fork of sui, an open source home page designed as a simple landing page with applications and bookmarks. As I started using it, it became clear that longer use would be made tedious by having to manually update JSON files every time I wanted to add something. An updated project, flame, exists; however, flame is intended to run on docker, which I am not a fan of in my environment. I also had a need to learn React, and so I started on my own version. I began then rewriting sui in React with TypeScript instead of it's native JavaScript, and added a MariaDB component for storage. The result was a highly customizable home page for any browser or device.
Technologies Used
-React/TS with various packages
-Vite
-Nodejs + NPM
-Mantine Component Library
-MariaDB server
-pm2
-VSCode
-NGINX
-Git/Gitea
Features
Search



Header


Applications



Bookmarks


Settings Button

Theming
One of the biggest challenges with sui and flame was customization and theming. I wanted to solve both of those issues going in, which resulted in a fully fledged theme builder and playlist management. While somewhat basic, it allows for fairly great expression of creativity.





Technical
The page is being served through an NGINX reverse proxy, and the back end API server has been separated into it's own package so that it can be located on a different server if necessary. Relevant connection details are in .env files for the user to configure.
The user has the option to change the base url of the server so that they may choose to either serve it at the root of the domain, a subdomain, or a URI slug.
The page does not handle authentication directly, and relies on NGINX to handle an auth-request to allow a user to reach the page. If they do not have authorization, they are redirected to a 401.
The back end Node.js server and front end Vite project have both been setup to run using pm2 as services.
When used together you can make a very useful and easy to change home page.
Screenshots


