Skip to content

lucaspaiva-lp/trackory

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Trackory

Overview

Trackory exists to provide a simple, structured way to collect and organize music titles without the complexity of full media playback systems.

It offers a focused solution for managing music metadata with explicit boundaries, prioritizing clarity, control, and long-term maintainability over unnecessary features.


Problem Statement

Most music-related systems are designed around playback, streaming, or recommendation engines.

This introduces complexity that is unnecessary for users and systems whose primary need is to catalog and organize music titles .

Trackory was initiated to close this gap by offering a lightweight, intentional system dedicated to managing music collections and playlists, without media handling concerns.


Project Purpose

The purpose of Trackory is to deliver a system that reliably manages collections of music titles while maintaining clear boundaries and long-term evolvability.

The project prioritizes correctness, simplicity, and architectural integrity over feature breadth or multimedia functionality.

At its core, Trackory treats music as data , not as media.


Target Users / Systems

Trackory is intended for:

  • Backend services that require structured music metadata management
  • Internal tools used to organize and catalog music collections
  • Developers seeking a clean, extensible foundation for music-related data systems

High-Level Scope

At a high level, the system is responsible for:

  • Storing music titles as structured records
  • Organizing music titles into playlists or collections
  • Managing optional metadata such as artist, genre, and release year

The system is intentionally focused on collection and organization , not consumption.


Explicit Non-Goals

Trackory does not aim to:

  • Provide music playback or streaming functionality
  • Handle audio files or media encoding
  • Act as a recommendation or discovery engine
  • Serve as a full-featured music platform
  • Optimize prematurely for scale, performance, or distribution

High-Level Constraints

The project operates under the following high-level constraints:

  • Implemented in Python
  • Structured using the Model–View–Controller (MVC) pattern
  • No database or persistent storage in the initial phase

These constraints are intentional and may evolve over time.

Project Structure

The project is organized as follows:

music-controller/
├─ docs/
│  ├─ architecture.md
│  └─ scope.md
├─ src/
│  ├─ controllers/
│  │  ├─ __init__.py
│  │  ├─ playlist_creator_constructor.py
│  │  ├─ playlist_creator_controller.py
│  │  └─ song_register_controller.py
│  ├─ main/
│  │  ├─ __init__.py
│  │  └─ process_handler.py
│  ├─ constructor/
│  │  ├─ __init__.py
│  │  └─ song_register_constructor.py
│  ├─ models/
│  │  ├─ entities/
│  │  │  ├─ __init__.py
│  │  │  └─ music.py
│  │  └─ repositories/
│  │     ├─ __init__.py
│  │     └─ music_repository.py
│  └─ view/
│     ├─ __init__.py
│     ├─ first_view.py
│     ├─ playlist_creator_view.py
│     └─ song_register_view.py
├─ .gitignore
├─ LICENSE.md
├─ README.md
└─ run.py

About

Backend system focused on structured management of music titles and playlists, treating music strictly as data and emphasizing clear scope, simplicity, and maintainable architecture.

Topics

Resources

License

Security policy

Stars

Watchers

Forks

Contributors

Languages