Skip to content
Snippets Groups Projects
  1. Dec 29, 2021
  2. Sep 17, 2021
  3. Jul 12, 2021
    • Yassine Doghri's avatar
      feat: build hashed static files to renew browser cache · 37c54d24
      Yassine Doghri authored
      - replace rollup config with vitejs
      - use vite dev server during development to take advantage of
      hot module replacement (HMR)
      - add vite service using Vite library to load css and js assets
      - update package.json scripts and remove unnecessary
      dependencies
      - update scripts/bundle-prepare.sh
      
      closes #107
      37c54d24
  4. Feb 10, 2021
  5. Oct 26, 2020
    • Benjamin Bellamy's avatar
      feat: add CDN url · 972bcbf6
      Benjamin Bellamy authored
      feat: rename ?s to ?_from to match podcastindex recommendation
      feat: adust map height
      feat: display pie chart on 1 column for small and medium screens
      feat: handle empty rss user agent
      fix: correct bug when importing episode with empty image
      fix: add service to FakePodcastsAnalyticsSeeder, resize pie charts so that all lines fit
      fix: set page title to ->title when it exists
      fix: replace %20 with +
      
      closes #37
      972bcbf6
  6. Oct 15, 2020
    • Benjamin Bellamy's avatar
      feat: update analytics so to meet IABv2 requirements · 03e23a28
      Benjamin Bellamy authored and Yassine Doghri's avatar Yassine Doghri committed
      - https://iabtechlab.com/wp-content/uploads/2017/12/Podcast_Measurement_v2-Dec-20-2017.pdf
        - no IP address is ever stored on the server. Only aggregate data is stored in the dababase.
        - rolling 24-hour window
        - castopod does not do pre-load
        - IP Blacklisting https://github.com/client9/ipcat
        - user-agent Filtering https://github.com/opawg/user-agents
        - ignores 2 bytes range "Range: 0-1" (performed by official Apple iOS Podcast app)
        - in case of partial content, adds up all requests to check >1mn was downloaded
        - identifying Uniques is done with a combination of IP Address and User Agent
      - add AMcharts
      - add some graphs
      - add regions to analytics
      - add ipcat blacklist
      - enhance useragents performances
      - add filesize and header size in order to calculate 1mn downloads
      - update publisher ID3 field
      - update castopod icon
      - add disclaimer and warning import form translation
      - update docs/setup-development.md
      
      closes #10
      03e23a28
    • Yassine Doghri's avatar
      feat: enhance admin ui with responsive design and ux improvements · 2d44b457
      Yassine Doghri authored
      - add podcast sidebar navigation
      - add podcast dashboard with latest episodes
      - add pagination to podcast episodes
      - add components helper to reuse ui components (button, data_table, etc.)
      - enhance podcast and episode forms by splitting them into form sections
      - add hint tooltips to podcast and episode forms
      - transform radio inputs as buttons for better ux
      - replace explicit field by parental_advisory
      - replace author field by publisher
      - add podcasts_categories table to set multiple categories
      - use choices.js to enhance multiselect fields
      - update Language files
      - update js dependencies to latest versions
      
      closes #31, #9
      2d44b457
    • Yassine Doghri's avatar
      feat: add pages table to store custom instance pages (eg. legal-notice, cookie policy, etc.) · 9c224a8a
      Yassine Doghri authored
      - add pages  migration, model and entity
      - add page controllers
      - update routes config to input page forms and page view in public
      - fix markdow editor focus area
      - show pages links in public side footer
      
      closes #24
      9c224a8a
    • Yassine Doghri's avatar
      refactor: add php_codesniffer to define castopod's coding style based on psr-1 · ed6e9530
      Yassine Doghri authored
      - add .editorconfig file
      - format all files to comply with castopod's coding style
      - switch parsedown dependency with commonmark library to better follow commonmark spec for markdown
      - add prettier command to format all project files at once
      
      closes #16
      ed6e9530
    • Yassine Doghri's avatar
      refactor: update js files to typescript and replace parcel with rollup · e0da1151
      Yassine Doghri authored
      - add basic rollup config to bundle minified and browser compatible js
      - use babel to transpile
      typescript files to js
      - add static code checkers: eslint and stylelint
      - update package.json
      scripts
      - update DEPENDENCIES.md file to include rollup and popper
      - set html in rss feed
      description fields
      - update Podcast and Episode entities to add description_html attribute
      generated by parsing markdown to html using parsedown
      
      #9
      e0da1151
    • Yassine Doghri's avatar
      feat: enhance ui using javascript in admin area · c0e66d5f
      Yassine Doghri authored
      - bundle js using parcel
      - add markdown editor, html editor, dropdown and tooltip features using third-party packages
      - integrate optimized inline svg icons from RemixIcon using svgo and a php helper
      - add scripts in package.json to bundle icons, images, css and js
      - update tailwind config to add purgecss lookups and typography plugin
      - refactor views to add missing pages in user journey
      - update admin's holy grail layout using css grid
      c0e66d5f
    • Yassine Doghri's avatar
      feat(users): add myth-auth to handle users crud + add admin gateway only accessible by login · c63a0776
      Yassine Doghri authored
      - overwrite myth/auth config with castopod app needs
      - create custom views for users authentication
      - add admin area bootstrapped by admin controller
      - shift podcast and episodes crud to admin area
      - reorganize view layouts
      - update docs for database migration
      - add myth-auth to DEPENDENCIES.md
      
      closes #11
      c63a0776
    • Yassine Doghri's avatar
      feat(rss): generate rss feed from podcast entity · c815ecd6
      Yassine Doghri authored
      - refactor episode, podcast and category entities to add dynamic properties
      - refactor Routes when adding feed route
      - update migration files to better fit itunes' and rss' specs
      - update podcast and episode forms
      - add SimpleRSSElement class to Libraries
      - add rss_helper
      - update home controller to redirect if system has only one podcast
      c815ecd6
    • Yassine Doghri's avatar
      feat(episodes): add create form and view pages for episode · f3b2c8b8
      Yassine Doghri authored
      - add james-heinrich/getid3 library as a dependency to composer.json
      - update DEPENDENCIES.md file
      - fix episodes table migration script
      - add js devDependencies: prettier, @prettier/plugin-php and lint-staged to automatically format staged files before commit
      - reformat all files to the prettier format
      - refactor code by separating some logic as helper functions
      - overwrite existing files when uploading new files with the same name
      
      fixes #1
      f3b2c8b8
    • Yassine Doghri's avatar
      feat: add npm for js dependencies + move src/ files to root folder · cbb83a6f
      Yassine Doghri authored
      - add node service in docker-compose.yml
      - update .devcontainer Dockerfile by adding node, npm and vim
      - init package.json for npm with tailwindcss, postcss, commitlint and commitizen as dev dependencies
      - update default layout main header and footer
      - replace CI's welcome_message.php with home.php listing all podcasts
      - add AUTHORS.md file
      - add docs folder in which to place castopod's technical documentation
      cbb83a6f
Loading