meteor-app

byKaushik Gajera

A project management web app for a small B2B SaaS startup team to track tasks, assign owners, set deadlines, and view progress across projects

LandingMyTasksLoginTaskDetail
Landing

Comments (0)

No comments yet. Be the first!

System Requirements

System Requirement Document
Page 1 of 5

meteor-app

Introduction

The "meteor-app" is a project management web application designed specifically for a small B2B SaaS startup team. Its primary purpose is to facilitate efficient task tracking, assignment of task ownership, setting deadlines, and providing visibility into project progress. This document outlines the system requirements for the meteor-app, ensuring that it meets the needs of its users and supports the startup's operational goals.

System Overview

The meteor-app is intended to streamline project management processes for a B2B SaaS startup. By providing a centralized platform for task management, it aims to enhance team collaboration, improve accountability, and increase productivity. The system will support multiple user roles, including admin, project manager, and team member, each with distinct permissions and functionalities.

Page 2 of 5

Functional Requirements

  • As an Admin, I should be able to create and manage user accounts.
  • As an Admin, I should be able to assign roles to users.
  • As a Project Manager, I should be able to create, edit, and delete projects.
  • As a Project Manager, I should be able to assign tasks to team members.
  • As a Project Manager, I should be able to set deadlines for tasks.
  • As a Team Member, I should be able to view tasks assigned to me.
  • As a Team Member, I should be able to update the status of my tasks.
  • As a User, I should be able to view the progress of projects.

User Personas

  • Admin: Responsible for managing user accounts and roles within the app.
  • Project Manager: Oversees project creation, task assignment, and deadline setting.
  • Team Member: Executes tasks and updates their status, contributing to project progress.
Page 3 of 5

Visuals Colors and Theme

  • primary: #1A73E8 (a vibrant blue to represent trust and reliability)
  • primary_light: #E8F0FE (a light blue for hover states and secondary UI elements)
  • secondary: #FF6F61 (a coral hue for emphasis and links)
  • accent: #F4B400 (a bright yellow for call-to-action buttons and active states)
  • highlight: #FBBC05 (a warm gold for hover states and notifications)
  • bg: #FFFFFF (a clean white background for clarity)
  • surface: rgba(240, 240, 240, 0.8) (a light grey for card and panel backgrounds)
  • text: #202124 (a dark grey for primary text and headings)
  • text_muted: #5F6368 (a softer grey for secondary text and labels)
  • border: rgba(218, 220, 224, 0.2) (a subtle grey for borders)

Signature Design Concept

The meteor-app will feature an interactive galaxy map as its homepage. Each star in the galaxy represents a project, and users can click on a star to open a project overview card. Dragging the galaxy will rotate the cluster, allowing users to explore different projects visually. Hovering over a star will highlight its connections to related tasks and team members. This concept will be implemented using @react-three/fiber for 3D rendering and gsap for smooth animations and transitions. The galaxy map will provide an engaging and intuitive way for users to navigate their projects, making the first impression both memorable and functional.

Page 4 of 5

Interaction Model & Motion Direction

The landing page will employ a "parallax" interaction model, creating a sense of depth and immersion as users scroll through the page. Decorative layers, such as atmospheric blobs and distant shapes, will move at different speeds, while the main content will scroll naturally. This approach is ideal for creating a visually rich first impression that captures the essence of the meteor-app's innovative project management capabilities.

Non-Functional Requirements

  • The system should support concurrent users without performance degradation.
  • The application must be responsive and accessible on various devices and screen sizes.
  • Data security and privacy must be ensured, complying with relevant regulations.
  • The system should provide high availability and reliability.

Tech Stack

  • Frontend: React for Web
  • Backend: Python with FastAPI
  • Database: MySQL or MariaDB, using Alembic for migrations
  • Local Orchestration: Docker and docker-compose
  • Server-side Orchestration: Kubernetes
Page 5 of 5

Assumptions and Constraints

  • The application will be primarily used by a small team, so scalability is focused on moderate growth.
  • Internet connectivity is assumed for all users.
  • The system will be deployed in a cloud environment to ensure availability and scalability.

Glossary

  • B2B SaaS: Business-to-Business Software as a Service
  • Admin: A user role with permissions to manage users and roles.
  • Project Manager: A user role responsible for managing projects and tasks.
  • Team Member: A user role focused on task execution and status updates.
  • Parallax: A design technique that creates an illusion of depth by moving background and foreground elements at different speeds.
Landing design preview
Landing: View App
Login: Sign In
Dashboard: View Overview
UserManagement: View Users
UserManagement: Create User
UserManagement: Edit User
UserManagement: Assign Role
Projects: View All Projects
ProjectDetail: View Progress