Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
229643c
added __pycache__ to .gitignore
Iventyk Dec 18, 2025
dfcd71a
added new empty app albums
Iventyk Dec 18, 2025
2e6a045
added Album model to models
Iventyk Dec 18, 2025
3bec1c6
renamed directories frisson_music -> frisson_music_servise, albums ->…
Iventyk Dec 18, 2025
3d8cc2b
added base static/ & templates/
Iventyk Dec 19, 2025
fc56701
edited model Album: part_or_season now is Unknown by default
Iventyk Dec 19, 2025
f0228dd
edited model Album: release_date now is Unknown by default
Iventyk Dec 19, 2025
35dcc24
added populate_db.py with script to populate db by Spotify API
Iventyk Dec 19, 2025
a74afc4
added .cache & db.sqlite3 to .gitignore
Iventyk Dec 19, 2025
7139fcc
added Album List View Page
Iventyk Dec 19, 2025
eea4146
splitted series $ anime section in sidebar
Iventyk Dec 19, 2025
1399d9e
added pagination on Albums List Page
Iventyk Dec 19, 2025
86356bd
added Album Detail View Page
Iventyk Dec 19, 2025
6737bb3
added open Album Detail Page by pressing on Album card on List View P…
Iventyk Dec 19, 2025
a1629c9
added social-media icons & links on footer
Iventyk Dec 19, 2025
080d309
added Album Edit Page
Iventyk Dec 20, 2025
72397cb
added links & search by types on Sidebar
Iventyk Dec 20, 2025
7dd5e78
added Home Page
Iventyk Dec 20, 2025
e0ac2c5
deleted old migrations. added User, Rating, Comment models. added new…
Iventyk Dec 20, 2025
aa1a283
added base buttons on navbar
Iventyk Dec 20, 2025
5c88d24
added Registration Page
Iventyk Dec 20, 2025
0e7937b
added Login/ Logout
Iventyk Dec 20, 2025
0646b8e
added Profile Edit Page
Iventyk Dec 20, 2025
0a85c38
moved Register bttn on Login page & Logout bttn on User Edit page
Iventyk Dec 21, 2025
2647d1b
added Comments section to & improved Album Detail Page
Iventyk Dec 21, 2025
844827f
added Rating on Album Detail Page
Iventyk Dec 21, 2025
773f9ab
added Comment Delete bttn on Comments section
Iventyk Dec 21, 2025
4fa52ad
added Search by Album name
Iventyk Dec 21, 2025
98d1fbe
added Media List Page
Iventyk Dec 21, 2025
c45fe3e
added Media Detail Page
Iventyk Dec 21, 2025
78b692c
added About Us & Rules Pages
Iventyk Dec 21, 2025
d7db840
added Favicon
Iventyk Dec 21, 2025
2796c7b
added Tests for custom functions: models, views, comments, search
Iventyk Dec 21, 2025
be286fc
fixed Pagination to keep search queries active when changing pages
Iventyk Dec 21, 2025
f4088b5
fixed N+1 Problem on Album Detail Page
Iventyk Dec 21, 2025
b94d83d
style: fix Flake8 violations and apply PEP 8 formatting
Iventyk Dec 21, 2025
f947275
refactor: replaced static images with Cloudinary URLs
Iventyk Dec 22, 2025
c45999c
refactor: replace static image with Cloudinary URL on About Page
Iventyk Dec 22, 2025
a371b6d
added background image on head block on Home Page
Iventyk Dec 22, 2025
dccc125
fixed Sidebar Toggle on mobile portrait view
Iventyk Dec 22, 2025
03591df
added general info about project to README.md & DB_Diagram.drawio, DB…
Iventyk Dec 22, 2025
66f4ee8
added requirements.txt
Iventyk Dec 22, 2025
4b6c00c
added favicon
Iventyk Dec 22, 2025
7bd7451
updated script in populate_db.py
Iventyk Dec 23, 2025
604766e
added python, django, pycharm to .gitignore
Iventyk Dec 23, 2025
2b0e82b
added additional info about project to README.md
Iventyk Dec 23, 2025
9fd6a0e
changed User Registration success_url to Rules Page
Iventyk Dec 23, 2025
71fc5fc
updated settings.py
Iventyk Dec 23, 2025
1df2335
added settings directory
Iventyk Dec 23, 2025
3810191
added manage.py
Iventyk Dec 23, 2025
861cd57
implemented Connect to PostgreSQL Database
Iventyk Dec 23, 2025
0d03314
updated .env.sample
Iventyk Dec 23, 2025
31a7331
staticfiles managing
Iventyk Dec 23, 2025
17c5bbb
added build.sh and finalize prod.py for deploy
Iventyk Dec 23, 2025
ac00673
added production URL to README.md
Iventyk Dec 23, 2025
2991042
added WakaTime Badge to README.md
Iventyk Dec 23, 2025
4bea451
fixed all tests
Iventyk Dec 26, 2025
aa676d4
changed Album model release_date fild to DateField instead of CharField
Iventyk Dec 26, 2025
cc9a4c1
fixed N+1 problem when calculating avg_rating
Iventyk Dec 26, 2025
fe58c45
implemented django debug toolbar
Iventyk Dec 26, 2025
63e66aa
optimized queries in views.py
Iventyk Dec 27, 2025
373c3d3
removed duplicate redirect logic in the post method
Iventyk Dec 27, 2025
8950164
refactored views: reduced fat views and optimized queries
Iventyk Dec 27, 2025
fba541c
added atabase indices for Album model
Iventyk Dec 27, 2025
3aabdae
fixed a bug with Pagination on Search page: can't go to previous page
Iventyk Dec 27, 2025
607783f
style: applyed PEP8 formatting and code cleanup
Iventyk Dec 27, 2025
e7d4c85
Ðupdatedrequirements.txt
Iventyk Dec 27, 2025
9527fc6
style: apply formatting and code cleanup for Templates
Iventyk Dec 27, 2025
42123ef
changed settings to prod
Iventyk Dec 27, 2025
13662dc
changed settings to prod
Iventyk Dec 27, 2025
149537c
fixed a Bug with Sidebar: scrollbar isn't work on small landscape scr…
Iventyk Dec 30, 2025
a572149
changed sidebar width to thinner
Iventyk Dec 30, 2025
06a4476
changed HomePage latest albums to 6 in row instead of 5
Iventyk Dec 30, 2025
757f1c6
made Album List Page more compact
Iventyk Dec 30, 2025
532428e
made Media List Page more compact
Iventyk Dec 30, 2025
a863f5f
made Media Detail Page more compact
Iventyk Dec 30, 2025
95b1fa6
swapped tracklist & comments blocks on Album Detail Page
Iventyk Dec 30, 2025
5466aa7
made Album Detail Page more compact
Iventyk Dec 30, 2025
03d1f22
made About Us & Rules Pages more compact
Iventyk Dec 30, 2025
23fc206
Added badges for technologies and tools in README
Iventyk Feb 15, 2026
abffdc2
docs: enhanced README documentation
Iventyk Feb 20, 2026
80107aa
chore: configured linguist to exclude CSS from statistics
Iventyk Feb 20, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .env.sample
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# DB
POSTGRES_DB=<db_name>
POSTGRES_DB_PORT=<db_port>
POSTGRES_USER=<db_user>
POSTGRES_PASSWORD=<db_password>
POSTGRES_HOST=<db_host>

#Django
SECRET_KEY=WhupPaAmD6v2XVrV585NWEZxXrL6lgbA
DJANGO_SETTINGS_MODULE=frisson_music_service.settings
5 changes: 5 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
# Ignore everything inside static
static/** linguist-vendored

# Re-include my JavaScript file
static/assets/js/rating.js linguist-vendored=false
354 changes: 353 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,354 @@
.idea
# Created by https://www.toptal.com/developers/gitignore/api/python,django,pycharm+all
# Edit at https://www.toptal.com/developers/gitignore?templates=python,django,pycharm+all

### Django ###
*.log
*.pot
*.pyc
__pycache__/
local_settings.py
db.sqlite3
db.sqlite3-journal
media

# If your build process includes running collectstatic, then you probably don't need or want to include staticfiles/
# in your Git repository. Update and uncomment the following line accordingly.
# <django-project-name>/staticfiles/

### Django.Python Stack ###
# Byte-compiled / optimized / DLL files
*.py[cod]
*$py.class

# C extensions
*.so

# Distribution / packaging
.Python
build/
develop-eggs/
dist/
downloads/
eggs/
.eggs/
lib/
lib64/
parts/
sdist/
var/
wheels/
share/python-wheels/
*.egg-info/
.installed.cfg
*.egg
MANIFEST

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.
*.manifest
*.spec

# Installer logs
pip-log.txt
pip-delete-this-directory.txt

# Unit test / coverage reports
htmlcov/
.tox/
.nox/
.coverage
.coverage.*
.cache
nosetests.xml
coverage.xml
*.cover
*.py,cover
.hypothesis/
.pytest_cache/
cover/

# Translations
*.mo

# Django stuff:

# Flask stuff:
instance/
.webassets-cache

# Scrapy stuff:
.scrapy

# Sphinx documentation
docs/_build/

# PyBuilder
.pybuilder/
target/

# Jupyter Notebook
.ipynb_checkpoints

# IPython
profile_default/
ipython_config.py

# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.
#Pipfile.lock

# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
#poetry.lock

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
#pdm.lock
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/#use-with-ide
.pdm.toml

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
__pypackages__/

# Celery stuff
celerybeat-schedule
celerybeat.pid

# SageMath parsed files
*.sage.py

# Environments
.env
.venv
env/
venv/
ENV/
env.bak/
venv.bak/

# Spyder project settings
.spyderproject
.spyproject

# Rope project settings
.ropeproject

# mkdocs documentation
/site

# mypy
.mypy_cache/
.dmypy.json
dmypy.json

# Pyre type checker
.pyre/

# pytype static type analyzer
.pytype/

# Cython debug symbols
cython_debug/

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/

### PyCharm+all ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839

# User-specific stuff
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/**/usage.statistics.xml
.idea/**/dictionaries
.idea/**/shelf

# AWS User-specific
.idea/**/aws.xml

# Generated files
.idea/**/contentModel.xml

# Sensitive or high-churn files
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
.idea/**/dbnavigator.xml

# Gradle
.idea/**/gradle.xml
.idea/**/libraries

# Gradle and Maven with auto-import
# When using Gradle or Maven with auto-import, you should exclude module files,
# since they will be recreated, and may cause churn. Uncomment if using
# auto-import.
# .idea/artifacts
# .idea/compiler.xml
# .idea/jarRepositories.xml
# .idea/modules.xml
# .idea/*.iml
# .idea/modules
# *.iml
# *.ipr

# CMake
cmake-build-*/

# Mongo Explorer plugin
.idea/**/mongoSettings.xml

# File-based project format
*.iws

# IntelliJ
out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Cursive Clojure plugin
.idea/replstate.xml

# SonarLint plugin
.idea/sonarlint/

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties

# Editor-based Rest Client
.idea/httpRequests

# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser

### PyCharm+all Patch ###
# Ignore everything but code style settings and run configurations
# that are supposed to be shared within teams.

.idea/*

!.idea/codeStyles
!.idea/runConfigurations

### Python ###
# Byte-compiled / optimized / DLL files

# C extensions

# Distribution / packaging

# PyInstaller
# Usually these files are written by a python script from a template
# before PyInstaller builds the exe, so as to inject date/other infos into it.

# Installer logs

# Unit test / coverage reports

# Translations

# Django stuff:

# Flask stuff:

# Scrapy stuff:

# Sphinx documentation

# PyBuilder

# Jupyter Notebook

# IPython

# pyenv
# For a library or package, you might want to ignore these files since the code is
# intended to run in multiple environments; otherwise, check them in:
# .python-version

# pipenv
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
# However, in case of collaboration, if having platform-specific dependencies or dependencies
# having no cross-platform support, pipenv may install dependencies that don't work, or not
# install all needed dependencies.

# poetry
# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
# This is especially recommended for binary packages to ensure reproducibility, and is more
# commonly ignored for libraries.
# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control

# pdm
# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
# in version control.
# https://pdm.fming.dev/#use-with-ide

# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm

# Celery stuff

# SageMath parsed files

# Environments

# Spyder project settings

# Rope project settings

# mkdocs documentation

# mypy

# Pyre type checker

# pytype static type analyzer

# Cython debug symbols

# PyCharm
# JetBrains specific template is maintained in a separate JetBrains.gitignore that can
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.

### Python Patch ###
# Poetry local configuration file - https://python-poetry.org/docs/configuration/#local-configuration
poetry.toml

# ruff
.ruff_cache/

# LSP config files
pyrightconfig.json

# End of https://www.toptal.com/developers/gitignore/api/python,django,pycharm+all
Loading