Marcus.art

byMarcus Thobela

Break down this website

LandingGallerySignupLogin
Landing

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 4

Marcus.art System Requirements Document

Introduction

Marcus.art is a personal art website designed to showcase Marcus Thobela's art portfolio and engage with his audience. This document outlines the system requirements for the development and enhancement of the Marcus.art platform, focusing on user interaction, design elements, and feature integration.

System Overview

Marcus.art aims to provide an immersive and interactive experience for users to explore Marcus Thobela's art. The platform will feature a dynamic gallery display, social media integration, and personalized user profiles. The system will be designed to accommodate both desktop and mobile users, ensuring accessibility and responsiveness across devices.

Functional Requirements

  • As a User, I should be able to view a dynamic gallery of art pieces.
  • As a User, I should be able to share art pieces on social media platforms.
  • As a User, I should be able to create and customize my user profile.
  • As an Admin, I should be able to upload and manage art pieces.
  • As an Admin, I should be able to view user interactions and analytics.
  • As a Guest, I should be able to browse the art gallery without creating an account.
  • As a User, I should be able to click on contact information to easily reach out.
Page 2 of 4

User Personas

  • Admin: Responsible for managing content, uploading new art pieces, and monitoring user interactions.
  • Registered User: Can create a profile, interact with art pieces, and share content on social media.
  • Guest: Can browse the gallery and view art pieces without registration.

Visuals, Colors, and Theme

  • primary: #1A237E (Deep Indigo)
  • primary_light: #534BAE (Light Indigo)
  • secondary: #FF6F61 (Coral)
  • accent: #FFD700 (Gold)
  • highlight: #FFB300 (Amber)
  • bg: #F5F5F5 (Light Gray)
  • surface: #9DBDB8
  • text: #111808
  • text_muted: #F0E7D6
  • border: #111808

Signature Design Concept

The Marcus.art homepage will feature an interactive "Art Gallery Walkthrough" experience. Using @react-three/fiber and @react-three/drei, the homepage will simulate a virtual art gallery where users can navigate through different rooms. Each room will represent a collection of art pieces, and users can click on artworks to view details, animations, and artist commentary. The gallery will have ambient sound effects and subtle lighting changes to enhance the immersive experience. Users can interact with the environment by dragging to look around and clicking to move between rooms.

Page 3 of 4

Interaction Model & Motion Direction

The landing page will utilize a "parallax" interaction model, providing a layered depth experience as users scroll through the site. Decorative elements such as floating art frames and ambient lighting will move at different speeds to create a sense of depth. Internal pages, such as the user profile and admin dashboard, will adopt a "static" model to prioritize content clarity and ease of navigation.

Non-Functional Requirements

  • The website must load within 3 seconds on a standard broadband connection.
  • The platform should support the latest versions of major browsers (Chrome, Firefox, Safari, Edge).
  • The system must ensure data privacy and comply with local regulations.

Technology Stack

  • Frontend: React for Web
  • Backend: Python, FastAPI
  • Database: MySQL or MariaDB, using Alembic for migrations
  • AI Models: Claude 4.6 Opas for academic or coding work
  • Local Orchestration: Docker, docker-compose
  • Server-side Orchestration: Kubernetes
Page 4 of 4

Assumptions and Constraints

  • The platform will primarily target users in South Africa, considering local cultural and artistic preferences.
  • The system will assume a stable internet connection for optimal performance.
  • Budget constraints may limit the use of advanced AI models beyond current specifications.

Glossary

  • Admin: A user with privileges to manage content and user interactions.
  • User Profile: A customizable page for registered users to display their preferences and interactions.
  • Parallax: A design technique where background images move slower than foreground images, creating a 3D effect.
  • Static: A design approach focusing on minimal motion and clear layout for content-heavy pages.
Landing design preview
Landing: View Portfolio
Login: Sign In
Dashboard: View Analytics
Dashboard: Upload Artwork
Gallery: Manage Pieces
Gallery: Edit Artwork
Dashboard: View Interactions
Dashboard: Generate Reports
Profile: Manage Settings