Open comments for this post
This update focused on the project detail flow. I created a dedicated page for each project, updated the routes so users can open a project directly from the dashboard, and added an “Open project” action to the project cards. I also polished the styling of the project page to keep the new flow consistent with the rest of the app.
I made a few small improvements to the generators utility too, so it can handle project data more reliably when building formatted files like README, DevLog, checklist, and submission text.
Open comments for this post
Since the last devlog, I focused on the generators layer of the project. I created a utility that turns a project’s data into formatted output files, including README, GitHub description, DevLog, checklist, AI usage statement, and submission text.
I also added filename generation for each resource so the exported content is organized and easy to reuse. This gave the app its first real content-generation workflow instead of just storing project information.
Open comments for this post
Since the last devlog, I moved the project from a basic routed app into a more complete project-management flow. I set up a lightweight MVC structure for projects, added localStorage-backed project persistence, and refactored shared UI into reusable components like Button and InputField. I also started importing a custom font to make the interface feel less generic.
On the product side, I built the create-project screen with fields for project metadata, links, technologies, challenges, learnings, and generator selection, plus validation and save/cancel actions. I then expanded the dashboard into a real project overview that reads saved projects, handles the empty state, greets the logged-in user, and links into the new project flow. After that, I polished the styling of both the dashboard and the new project page so the app feels more consistent and usable
Open comments for this post
Since the last update, I moved the project from a simple login prototype into a small routed app with actual navigation flow. I installed React Router, created public and protected routes, and wired the login so it now sends the user to the dashboard after saving their data locally.
I also built a first provisional dashboard with a greeting, logout action, and a placeholder projects section. After that, I refined the dashboard styling and started polishing the overall presentation by importing a font and improving the visual structure.
Open comments for this post
I started the project with Vite and React and installed Tailwind CSS to speed up the interface. I structured the application to display a login screen as the app’s entry point. I created the basis of the authentication flow with simple name and email validation. I added local persistence with localStorage to save user data in this prototype. I adjusted the form fields and then refined the page’s appearance with a more polished and responsive layout.
Open comments for this post
Since the last dev log, I improved the first screen of ManentiOS by turning it into a login-style onboarding page inspired by Windows, but with the winter-tech visual identity of the project.
I also made the buttons functional, allowing users to enter the OS normally or open specific apps directly, like the Projects app and FrostLog.
After that, I worked on the portfolio experience by improving the Projects app and filling it with my best GitHub projects, including ManentiOS, PoupApp, Manenti Slack Bot, Custom Macropad, and other web/full-stack projects.
Now ManentiOS has a stronger first impression, a more useful portfolio section, and feels much more like a complete personal WebOS.
Open comments for this post
Since the last dev log, I completed the final WebOS tutorial step by building more advanced apps for ManentiOS. This stage was more open-ended, so I decided to create two useful apps: a Calculator and a Projects portfolio app.
I added new desktop icons, connected them to draggable app windows, and improved the window system to support multiple apps more easily. The Calculator now performs basic operations, while the Projects app showcases my work inside the OS.
Open comments for this post
Since the last dev log, I created the first real app for ManentiOS: FrostLog, a winter-tech journal app with selectable entries, a desktop icon, and its own draggable window. This followed the tutorial step focused on adding the first app to the WebOS.
I also improved the desktop behavior by fixing the z-index system, so app windows now appear in front of desktop icons while the top bar stays above everything.
ManentiOS now feels more like a real WebOS, with icons, apps, draggable windows, and better window layering.
Open comments for this post
Since the last dev log, I continued developing ManentiOS by following the next WebOS tutorial step and adapting it to my React + TailwindCSS structure. The goal was to make the desktop window feel more like a real operating system window.
I created a reusable OSWindow component with support for dragging, closing, and reopening windows. I also updated the desktop so the welcome window can be opened again from the top bar by clicking on ManentiOS.
Instead of using plain JavaScript with querySelector, I used React state, props, refs, and pointer events to keep the logic more organized and component-based.
Open comments for this post
Since the last dev log, I continued working on ManentiOS by defining a stronger visual direction for the project: a winter-inspired interface with forests, rain, landscapes, and a subtle technological touch.
I also moved on to the second part of the WebOS tutorial and adapted the concepts from HTML, CSS, and JavaScript into my current React + JSX + TailwindCSS structure. Instead of using plain HTML and inline styles, I planned the desktop as reusable components.
I created the idea for the main desktop screen, including a background wallpaper, a glass-style welcome window, a top bar, and a live clock using React state and effects. This keeps the project aligned with the tutorial while making the code cleaner and more scalable.
Open comments for this post
Today I started working on ManentiOS, my personal web operating system. I chose the main theme, created a futuristic project banner, and wrote a short description for the project.
I also built the first onboarding screen using React, JSX, and TailwindCSS. Then, I organized the code into reusable components like FeatureCard, ActionButton, and Onboarding.
So far, the project has a clear identity, a visual style, and the beginning of a clean, componentized interface. My next step is to build the main desktop screen and add interactive apps.
Open comments for this post
I created the commands “/manenti-quote” and “/manenti-joke”, they serve to launch stoic phrases and tell all sorts of jokes.
Open comments for this post
I added two commands to search for Pokémon and anime using APIs.
Open comments for this post
Creating the Project. I configured the settings on the Slack API website, then started coding the project, installing dependencies and creating the first three commands: “/manenti-hw”, “/manenti-help”, and “/manenti-cat”.
Open comments for this post
Creating a grid structure for the Cards and creating, componentizing, and styling the third and fourth Cards.
Open comments for this post
Creating and styling Typography and Card components
Open comments for this post
Importing icons, creating and styling the Main and SearchInput components
Open comments for this post
Creating de sidebar and importing the global font family Work Sans